1exim_selinux(8) SELinux Policy exim exim_selinux(8)
2
3
4
6 exim_selinux - Security Enhanced Linux Policy for the exim processes
7
9 Security-Enhanced Linux secures the exim processes via flexible manda‐
10 tory access control.
11
12 The exim processes execute with the exim_t SELinux type. You can check
13 if you have these processes running by executing the ps command with
14 the -Z qualifier.
15
16 For example:
17
18 ps -eZ | grep exim_t
19
20
21
23 The exim_t SELinux type can be entered via the exim_exec_t file type.
24
25 The default entrypoint paths for the exim_t domain are the following:
26
27 /usr/sbin/exim[0-9]?, /usr/sbin/exim_tidydb
28
30 SELinux defines process types (domains) for each process running on the
31 system
32
33 You can see the context of a process using the -Z option to ps
34
35 Policy governs the access confined processes have to files. SELinux
36 exim policy is very flexible allowing users to setup their exim pro‐
37 cesses in as secure a method as possible.
38
39 The following process types are defined for exim:
40
41 exim_t
42
43 Note: semanage permissive -a exim_t can be used to make the process
44 type exim_t permissive. SELinux does not deny access to permissive
45 process types, but the AVC (SELinux denials) messages are still gener‐
46 ated.
47
48
50 SELinux policy is customizable based on least access required. exim
51 policy is extremely flexible and has several booleans that allow you to
52 manipulate the policy and run exim with the tightest access possible.
53
54
55
56 If you want to determine whether exim can connect to databases, you
57 must turn on the exim_can_connect_db boolean. Disabled by default.
58
59 setsebool -P exim_can_connect_db 1
60
61
62
63 If you want to determine whether exim can create, read, write, and
64 delete generic user content files, you must turn on the exim_man‐
65 age_user_files boolean. Disabled by default.
66
67 setsebool -P exim_manage_user_files 1
68
69
70
71 If you want to determine whether exim can read generic user content
72 files, you must turn on the exim_read_user_files boolean. Disabled by
73 default.
74
75 setsebool -P exim_read_user_files 1
76
77
78
79 If you want to dontaudit all daemons scheduling requests (setsched,
80 sys_nice), you must turn on the daemons_dontaudit_scheduling boolean.
81 Enabled by default.
82
83 setsebool -P daemons_dontaudit_scheduling 1
84
85
86
87 If you want to allow all domains to execute in fips_mode, you must turn
88 on the fips_mode boolean. Enabled by default.
89
90 setsebool -P fips_mode 1
91
92
93
94 If you want to allow system to run with NIS, you must turn on the
95 nis_enabled boolean. Disabled by default.
96
97 setsebool -P nis_enabled 1
98
99
100
102 The SELinux process type exim_t can manage files labeled with the fol‐
103 lowing file types. The paths listed are the default paths for these
104 file types. Note the processes UID still need to have DAC permissions.
105
106 arpwatch_tmp_t
107
108
109 cifs_t
110
111
112 cluster_conf_t
113
114 /etc/cluster(/.*)?
115
116 cluster_var_lib_t
117
118 /var/lib/pcsd(/.*)?
119 /var/lib/cluster(/.*)?
120 /var/lib/openais(/.*)?
121 /var/lib/pengine(/.*)?
122 /var/lib/corosync(/.*)?
123 /usr/lib/heartbeat(/.*)?
124 /var/lib/heartbeat(/.*)?
125 /var/lib/pacemaker(/.*)?
126
127 cluster_var_run_t
128
129 /var/run/crm(/.*)?
130 /var/run/cman_.*
131 /var/run/rsctmp(/.*)?
132 /var/run/aisexec.*
133 /var/run/heartbeat(/.*)?
134 /var/run/pcsd-ruby.socket
135 /var/run/corosync-qnetd(/.*)?
136 /var/run/corosync-qdevice(/.*)?
137 /var/run/corosync.pid
138 /var/run/cpglockd.pid
139 /var/run/rgmanager.pid
140 /var/run/cluster/rgmanager.sk
141
142 dovecot_spool_t
143
144 /var/spool/dovecot(/.*)?
145
146 ecryptfs_t
147
148 /home/[^/]+/.Private(/.*)?
149 /home/[^/]+/.ecryptfs(/.*)?
150
151 exim_spool_t
152
153 /var/spool/exim[0-9]?(/.*)?
154
155 exim_tmp_t
156
157
158 exim_var_lib_t
159
160 /var/lib/exim[0-9]?(/.*)?
161
162 exim_var_run_t
163
164 /var/run/exim[0-9]?.pid
165 /var/run/exim[0-9]?(/.*)?
166
167 faillog_t
168
169 /var/log/btmp.*
170 /var/log/faillog.*
171 /var/log/tallylog.*
172 /var/run/faillock(/.*)?
173
174 fusefs_t
175
176 /var/run/user/[0-9]+/gvfs
177
178 krb5_host_rcache_t
179
180 /var/tmp/krb5_0.rcache2
181 /var/cache/krb5rcache(/.*)?
182 /var/tmp/nfs_0
183 /var/tmp/DNS_25
184 /var/tmp/host_0
185 /var/tmp/imap_0
186 /var/tmp/HTTP_23
187 /var/tmp/HTTP_48
188 /var/tmp/ldap_55
189 /var/tmp/ldap_487
190 /var/tmp/ldapmap1_0
191
192 mail_home_rw_t
193
194 /root/Maildir(/.*)?
195 /root/.esmtp_queue(/.*)?
196 /var/lib/arpwatch/.esmtp_queue(/.*)?
197 /var/cache/ddclient/.esmtp_queue(/.*)?
198 /home/[^/]+/.maildir(/.*)?
199 /home/[^/]+/Maildir(/.*)?
200 /home/[^/]+/.esmtp_queue(/.*)?
201
202 mailman_data_t
203
204 /etc/mailman.*
205 /var/lib/mailman(/.*)?
206 /var/spool/mailman.*
207
208 nfs_t
209
210
211 root_t
212
213 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
214 /
215 /initrd
216
217 sendmail_tmp_t
218
219
220 user_home_t
221
222 /home/[^/]+/.+
223
224
226 SELinux requires files to have an extended attribute to define the file
227 type.
228
229 You can see the context of a file using the -Z option to ls
230
231 Policy governs the access confined processes have to these files.
232 SELinux exim policy is very flexible allowing users to setup their exim
233 processes in as secure a method as possible.
234
235 EQUIVALENCE DIRECTORIES
236
237
238 exim policy stores data with multiple different file context types un‐
239 der the /var/run/exim[0-9]? directory. If you would like to store the
240 data in a different directory you can use the semanage command to cre‐
241 ate an equivalence mapping. If you wanted to store this data under the
242 /srv directory you would execute the following command:
243
244 semanage fcontext -a -e /var/run/exim[0-9]? /srv/exim[0-9]?
245 restorecon -R -v /srv/exim[0-9]?
246
247 STANDARD FILE CONTEXT
248
249 SELinux defines the file context types for the exim, if you wanted to
250 store files with these types in a different paths, you need to execute
251 the semanage command to specify alternate labeling and then use re‐
252 storecon to put the labels on disk.
253
254 semanage fcontext -a -t exim_exec_t '/srv/exim/content(/.*)?'
255 restorecon -R -v /srv/myexim_content
256
257 Note: SELinux often uses regular expressions to specify labels that
258 match multiple files.
259
260 The following file types are defined for exim:
261
262
263
264 exim_exec_t
265
266 - Set files with the exim_exec_t type, if you want to transition an ex‐
267 ecutable to the exim_t domain.
268
269
270 Paths:
271 /usr/sbin/exim[0-9]?, /usr/sbin/exim_tidydb
272
273
274 exim_initrc_exec_t
275
276 - Set files with the exim_initrc_exec_t type, if you want to transition
277 an executable to the exim_initrc_t domain.
278
279
280
281 exim_keytab_t
282
283 - Set files with the exim_keytab_t type, if you want to treat the files
284 as kerberos keytab files.
285
286
287
288 exim_log_t
289
290 - Set files with the exim_log_t type, if you want to treat the data as
291 exim log data, usually stored under the /var/log directory.
292
293
294
295 exim_spool_t
296
297 - Set files with the exim_spool_t type, if you want to store the exim
298 files under the /var/spool directory.
299
300
301
302 exim_tmp_t
303
304 - Set files with the exim_tmp_t type, if you want to store exim tempo‐
305 rary files in the /tmp directories.
306
307
308
309 exim_var_lib_t
310
311 - Set files with the exim_var_lib_t type, if you want to store the exim
312 files under the /var/lib directory.
313
314
315
316 exim_var_run_t
317
318 - Set files with the exim_var_run_t type, if you want to store the exim
319 files under the /run or /var/run directory.
320
321
322 Paths:
323 /var/run/exim[0-9]?.pid, /var/run/exim[0-9]?(/.*)?
324
325
326 Note: File context can be temporarily modified with the chcon command.
327 If you want to permanently change the file context you need to use the
328 semanage fcontext command. This will modify the SELinux labeling data‐
329 base. You will need to use restorecon to apply the labels.
330
331
333 semanage fcontext can also be used to manipulate default file context
334 mappings.
335
336 semanage permissive can also be used to manipulate whether or not a
337 process type is permissive.
338
339 semanage module can also be used to enable/disable/install/remove pol‐
340 icy modules.
341
342 semanage boolean can also be used to manipulate the booleans
343
344
345 system-config-selinux is a GUI tool available to customize SELinux pol‐
346 icy settings.
347
348
350 This manual page was auto-generated using sepolicy manpage .
351
352
354 selinux(8), exim(8), semanage(8), restorecon(8), chcon(1), sepolicy(8),
355 setsebool(8)
356
357
358
359exim 23-12-15 exim_selinux(8)