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]?
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 allow exim to connect to databases (postgres, mysql),
57 you 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 allow exim to create, read, write, and delete unprivi‐
64 leged user files, you must turn on the exim_manage_user_files boolean.
65 Disabled by default.
66
67 setsebool -P exim_manage_user_files 1
68
69
70
71 If you want to allow exim to read unprivileged user files, you must
72 turn on the exim_read_user_files boolean. Disabled by default.
73
74 setsebool -P exim_read_user_files 1
75
76
77
78 If you want to allow all daemons to write corefiles to /, you must turn
79 on the allow_daemons_dump_core boolean. Disabled by default.
80
81 setsebool -P allow_daemons_dump_core 1
82
83
84
85 If you want to allow all daemons to use tcp wrappers, you must turn on
86 the allow_daemons_use_tcp_wrapper boolean. Disabled by default.
87
88 setsebool -P allow_daemons_use_tcp_wrapper 1
89
90
91
92 If you want to allow all daemons the ability to read/write terminals,
93 you must turn on the allow_daemons_use_tty boolean. Disabled by
94 default.
95
96 setsebool -P allow_daemons_use_tty 1
97
98
99
100 If you want to allow all domains to use other domains file descriptors,
101 you must turn on the allow_domain_fd_use boolean. Enabled by default.
102
103 setsebool -P allow_domain_fd_use 1
104
105
106
107 If you want to allow confined applications to run with kerberos, you
108 must turn on the allow_kerberos boolean. Enabled by default.
109
110 setsebool -P allow_kerberos 1
111
112
113
114 If you want to allow sysadm to debug or ptrace all processes, you must
115 turn on the allow_ptrace boolean. Disabled by default.
116
117 setsebool -P allow_ptrace 1
118
119
120
121 If you want to allow system to run with NIS, you must turn on the
122 allow_ypbind boolean. Disabled by default.
123
124 setsebool -P allow_ypbind 1
125
126
127
128 If you want to enable cluster mode for daemons, you must turn on the
129 daemons_enable_cluster_mode boolean. Disabled by default.
130
131 setsebool -P daemons_enable_cluster_mode 1
132
133
134
135 If you want to allow all domains to have the kernel load modules, you
136 must turn on the domain_kernel_load_modules boolean. Disabled by
137 default.
138
139 setsebool -P domain_kernel_load_modules 1
140
141
142
143 If you want to allow all domains to execute in fips_mode, you must turn
144 on the fips_mode boolean. Enabled by default.
145
146 setsebool -P fips_mode 1
147
148
149
150 If you want to enable reading of urandom for all domains, you must turn
151 on the global_ssp boolean. Disabled by default.
152
153 setsebool -P global_ssp 1
154
155
156
157 If you want to allow http daemon to send mail, you must turn on the
158 httpd_can_sendmail boolean. Disabled by default.
159
160 setsebool -P httpd_can_sendmail 1
161
162
163
164 If you want to enable support for upstart as the init program, you must
165 turn on the init_upstart boolean. Enabled by default.
166
167 setsebool -P init_upstart 1
168
169
170
171 If you want to allow confined applications to use nscd shared memory,
172 you must turn on the nscd_use_shm boolean. Enabled by default.
173
174 setsebool -P nscd_use_shm 1
175
176
177
178 If you want to support NFS home directories, you must turn on the
179 use_nfs_home_dirs boolean. Disabled by default.
180
181 setsebool -P use_nfs_home_dirs 1
182
183
184
185 If you want to support SAMBA home directories, you must turn on the
186 use_samba_home_dirs boolean. Disabled by default.
187
188 setsebool -P use_samba_home_dirs 1
189
190
191
193 The SELinux process type exim_t can manage files labeled with the fol‐
194 lowing file types. The paths listed are the default paths for these
195 file types. Note the processes UID still need to have DAC permissions.
196
197 arpwatch_tmp_t
198
199
200 cifs_t
201
202
203 cluster_conf_t
204
205 /etc/cluster(/.*)?
206
207 cluster_var_lib_t
208
209 /var/lib(64)?/openais(/.*)?
210 /var/lib(64)?/pengine(/.*)?
211 /var/lib(64)?/corosync(/.*)?
212 /usr/lib(64)?/heartbeat(/.*)?
213 /var/lib(64)?/heartbeat(/.*)?
214 /var/lib(64)?/pacemaker(/.*)?
215 /var/lib/cluster(/.*)?
216
217 cluster_var_run_t
218
219 /var/run/crm(/.*)?
220 /var/run/cman_.*
221 /var/run/rsctmp(/.*)?
222 /var/run/aisexec.*
223 /var/run/heartbeat(/.*)?
224 /var/run/cpglockd.pid
225 /var/run/corosync.pid
226 /var/run/rgmanager.pid
227 /var/run/cluster/rgmanager.sk
228
229 dovecot_spool_t
230
231 /var/spool/dovecot(/.*)?
232
233 exim_log_t
234
235 /var/log/exim[0-9]?(/.*)?
236
237 exim_spool_t
238
239 /var/spool/exim[0-9]?(/.*)?
240
241 exim_tmp_t
242
243
244 exim_var_run_t
245
246 /var/run/exim[0-9]?.pid
247
248 initrc_tmp_t
249
250
251 mail_home_rw_t
252
253 /root/Maildir(/.*)?
254 /home/[^/]*/Maildir(/.*)?
255 /home/staff/Maildir(/.*)?
256
257 mail_spool_t
258
259 /var/mail(/.*)?
260 /var/spool/mail(/.*)?
261 /var/spool/imap(/.*)?
262
263 mnt_t
264
265 /mnt(/[^/]*)
266 /mnt(/[^/]*)?
267 /rhev(/[^/]*)?
268 /media(/[^/]*)
269 /media(/[^/]*)?
270 /etc/rhgb(/.*)?
271 /media/.hal-.*
272 /net
273 /afs
274 /rhev
275 /misc
276
277 nfs_t
278
279
280 root_t
281
282 /
283 /initrd
284
285 sendmail_tmp_t
286
287
288 tmp_t
289
290 /tmp
291 /usr/tmp
292 /var/tmp
293 /tmp-inst
294 /var/tmp-inst
295 /var/tmp/vi.recover
296
297 user_home_t
298
299 /home/[^/]*/.+
300 /home/staff/.+
301
302 user_tmp_t
303
304 /tmp/gconfd-.*
305 /tmp/gconfd-staff
306
307
309 SELinux requires files to have an extended attribute to define the file
310 type.
311
312 You can see the context of a file using the -Z option to ls
313
314 Policy governs the access confined processes have to these files.
315 SELinux exim policy is very flexible allowing users to setup their exim
316 processes in as secure a method as possible.
317
318 STANDARD FILE CONTEXT
319
320 SELinux defines the file context types for the exim, if you wanted to
321 store files with these types in a diffent paths, you need to execute
322 the semanage command to sepecify alternate labeling and then use
323 restorecon to put the labels on disk.
324
325 semanage fcontext -a -t exim_var_run_t '/srv/myexim_content(/.*)?'
326 restorecon -R -v /srv/myexim_content
327
328 Note: SELinux often uses regular expressions to specify labels that
329 match multiple files.
330
331 The following file types are defined for exim:
332
333
334
335 exim_exec_t
336
337 - Set files with the exim_exec_t type, if you want to transition an
338 executable to the exim_t domain.
339
340
341
342 exim_initrc_exec_t
343
344 - Set files with the exim_initrc_exec_t type, if you want to transition
345 an executable to the exim_initrc_t domain.
346
347
348
349 exim_keytab_t
350
351 - Set files with the exim_keytab_t type, if you want to treat the files
352 as kerberos keytab files.
353
354
355
356 exim_log_t
357
358 - Set files with the exim_log_t type, if you want to treat the data as
359 exim log data, usually stored under the /var/log directory.
360
361
362
363 exim_spool_t
364
365 - Set files with the exim_spool_t type, if you want to store the exim
366 files under the /var/spool directory.
367
368
369
370 exim_tmp_t
371
372 - Set files with the exim_tmp_t type, if you want to store exim tempo‐
373 rary files in the /tmp directories.
374
375
376
377 exim_var_run_t
378
379 - Set files with the exim_var_run_t type, if you want to store the exim
380 files under the /run or /var/run directory.
381
382
383
384 Note: File context can be temporarily modified with the chcon command.
385 If you want to permanently change the file context you need to use the
386 semanage fcontext command. This will modify the SELinux labeling data‐
387 base. You will need to use restorecon to apply the labels.
388
389
391 semanage fcontext can also be used to manipulate default file context
392 mappings.
393
394 semanage permissive can also be used to manipulate whether or not a
395 process type is permissive.
396
397 semanage module can also be used to enable/disable/install/remove pol‐
398 icy modules.
399
400 semanage boolean can also be used to manipulate the booleans
401
402
403 system-config-selinux is a GUI tool available to customize SELinux pol‐
404 icy settings.
405
406
408 This manual page was auto-generated using sepolicy manpage .
409
410
412 selinux(8), exim(8), semanage(8), restorecon(8), chcon(1) , setse‐
413 bool(8)
414
415
416
417exim 15-06-03 exim_selinux(8)