1dhcpd_selinux(8) SELinux Policy dhcpd dhcpd_selinux(8)
2
3
4
6 dhcpd_selinux - Security Enhanced Linux Policy for the dhcpd processes
7
9 Security-Enhanced Linux secures the dhcpd processes via flexible manda‐
10 tory access control.
11
12 The dhcpd processes execute with the dhcpd_t SELinux type. You can
13 check if you have these processes running by executing the ps command
14 with the -Z qualifier.
15
16 For example:
17
18 ps -eZ | grep dhcpd_t
19
20
21
23 The dhcpd_t SELinux type can be entered via the dhcpd_exec_t file type.
24
25 The default entrypoint paths for the dhcpd_t domain are the following:
26
27 /usr/sbin/dhcpd(6)?, /usr/sbin/dhcrelay(6)?
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 dhcpd policy is very flexible allowing users to setup their dhcpd pro‐
37 cesses in as secure a method as possible.
38
39 The following process types are defined for dhcpd:
40
41 dhcpd_t
42
43 Note: semanage permissive -a dhcpd_t can be used to make the process
44 type dhcpd_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. dhcpd
51 policy is extremely flexible and has several booleans that allow you to
52 manipulate the policy and run dhcpd with the tightest access possible.
53
54
55
56 If you want to determine whether DHCP daemon can use LDAP backends, you
57 must turn on the dhcpd_use_ldap boolean. Disabled by default.
58
59 setsebool -P dhcpd_use_ldap 1
60
61
62
63 If you want to allow users to resolve user passwd entries directly from
64 ldap rather then using a sssd server, you must turn on the authlo‐
65 gin_nsswitch_use_ldap boolean. Disabled by default.
66
67 setsebool -P authlogin_nsswitch_use_ldap 1
68
69
70
71 If you want to allow all daemons to write corefiles to /, you must turn
72 on the daemons_dump_core boolean. Disabled by default.
73
74 setsebool -P daemons_dump_core 1
75
76
77
78 If you want to enable cluster mode for daemons, you must turn on the
79 daemons_enable_cluster_mode boolean. Enabled by default.
80
81 setsebool -P daemons_enable_cluster_mode 1
82
83
84
85 If you want to allow all daemons to use tcp wrappers, you must turn on
86 the daemons_use_tcp_wrapper boolean. Disabled by default.
87
88 setsebool -P 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 daemons_use_tty boolean. Disabled by default.
94
95 setsebool -P daemons_use_tty 1
96
97
98
99 If you want to deny any process from ptracing or debugging any other
100 processes, you must turn on the deny_ptrace boolean. Enabled by
101 default.
102
103 setsebool -P deny_ptrace 1
104
105
106
107 If you want to allow any process to mmap any file on system with
108 attribute file_type, you must turn on the domain_can_mmap_files bool‐
109 ean. Enabled by default.
110
111 setsebool -P domain_can_mmap_files 1
112
113
114
115 If you want to allow all domains write to kmsg_device, while kernel is
116 executed with systemd.log_target=kmsg parameter, you must turn on the
117 domain_can_write_kmsg boolean. Disabled by default.
118
119 setsebool -P domain_can_write_kmsg 1
120
121
122
123 If you want to allow all domains to use other domains file descriptors,
124 you must turn on the domain_fd_use boolean. Enabled by default.
125
126 setsebool -P domain_fd_use 1
127
128
129
130 If you want to allow all domains to have the kernel load modules, you
131 must turn on the domain_kernel_load_modules boolean. Disabled by
132 default.
133
134 setsebool -P domain_kernel_load_modules 1
135
136
137
138 If you want to allow all domains to execute in fips_mode, you must turn
139 on the fips_mode boolean. Enabled by default.
140
141 setsebool -P fips_mode 1
142
143
144
145 If you want to enable reading of urandom for all domains, you must turn
146 on the global_ssp boolean. Disabled by default.
147
148 setsebool -P global_ssp 1
149
150
151
152 If you want to allow confined applications to run with kerberos, you
153 must turn on the kerberos_enabled boolean. Enabled by default.
154
155 setsebool -P kerberos_enabled 1
156
157
158
159 If you want to allow system to run with NIS, you must turn on the
160 nis_enabled boolean. Disabled by default.
161
162 setsebool -P nis_enabled 1
163
164
165
166 If you want to allow confined applications to use nscd shared memory,
167 you must turn on the nscd_use_shm boolean. Disabled by default.
168
169 setsebool -P nscd_use_shm 1
170
171
172
174 SELinux defines port types to represent TCP and UDP ports.
175
176 You can see the types associated with a port by using the following
177 command:
178
179 semanage port -l
180
181
182 Policy governs the access confined processes have to these ports.
183 SELinux dhcpd policy is very flexible allowing users to setup their
184 dhcpd processes in as secure a method as possible.
185
186 The following port types are defined for dhcpd:
187
188
189 dhcpd_port_t
190
191
192
193 Default Defined Ports:
194 tcp 547,548,647,847,7911
195 udp 67,547,548,647,847
196
198 The SELinux process type dhcpd_t can manage files labeled with the fol‐
199 lowing file types. The paths listed are the default paths for these
200 file types. Note the processes UID still need to have DAC permissions.
201
202 cluster_conf_t
203
204 /etc/cluster(/.*)?
205
206 cluster_var_lib_t
207
208 /var/lib/pcsd(/.*)?
209 /var/lib/cluster(/.*)?
210 /var/lib/openais(/.*)?
211 /var/lib/pengine(/.*)?
212 /var/lib/corosync(/.*)?
213 /usr/lib/heartbeat(/.*)?
214 /var/lib/heartbeat(/.*)?
215 /var/lib/pacemaker(/.*)?
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/corosync-qnetd(/.*)?
225 /var/run/corosync-qdevice(/.*)?
226 /var/run/cpglockd.pid
227 /var/run/corosync.pid
228 /var/run/rgmanager.pid
229 /var/run/cluster/rgmanager.sk
230
231 dhcpd_state_t
232
233 /var/lib/dhcp(3)?/dhcpd.leases.*
234 /var/lib/dhcpd(/.*)?
235
236 dhcpd_tmp_t
237
238
239 dhcpd_var_run_t
240
241 /var/run/dhcpd(6)?.pid
242
243 root_t
244
245 /sysroot/ostree/deploy/.*-atomic.*/deploy(/.*)?
246 /
247 /initrd
248
249
251 SELinux requires files to have an extended attribute to define the file
252 type.
253
254 You can see the context of a file using the -Z option to ls
255
256 Policy governs the access confined processes have to these files.
257 SELinux dhcpd policy is very flexible allowing users to setup their
258 dhcpd processes in as secure a method as possible.
259
260 STANDARD FILE CONTEXT
261
262 SELinux defines the file context types for the dhcpd, if you wanted to
263 store files with these types in a diffent paths, you need to execute
264 the semanage command to sepecify alternate labeling and then use
265 restorecon to put the labels on disk.
266
267 semanage fcontext -a -t dhcpd_var_run_t '/srv/mydhcpd_content(/.*)?'
268 restorecon -R -v /srv/mydhcpd_content
269
270 Note: SELinux often uses regular expressions to specify labels that
271 match multiple files.
272
273 The following file types are defined for dhcpd:
274
275
276
277 dhcpd_exec_t
278
279 - Set files with the dhcpd_exec_t type, if you want to transition an
280 executable to the dhcpd_t domain.
281
282
283 Paths:
284 /usr/sbin/dhcpd(6)?, /usr/sbin/dhcrelay(6)?
285
286
287 dhcpd_initrc_exec_t
288
289 - Set files with the dhcpd_initrc_exec_t type, if you want to transi‐
290 tion an executable to the dhcpd_initrc_t domain.
291
292
293 Paths:
294 /etc/rc.d/init.d/dhcpd(6)?, /etc/rc.d/init.d/dhcrelay(6)?
295
296
297 dhcpd_state_t
298
299 - Set files with the dhcpd_state_t type, if you want to treat the files
300 as dhcpd state data.
301
302
303 Paths:
304 /var/lib/dhcp(3)?/dhcpd.leases.*, /var/lib/dhcpd(/.*)?
305
306
307 dhcpd_tmp_t
308
309 - Set files with the dhcpd_tmp_t type, if you want to store dhcpd tem‐
310 porary files in the /tmp directories.
311
312
313
314 dhcpd_unit_file_t
315
316 - Set files with the dhcpd_unit_file_t type, if you want to treat the
317 files as dhcpd unit content.
318
319
320 Paths:
321 /usr/lib/systemd/system/dhcpd.*, /usr/lib/systemd/system/dhcpcd.*,
322 /usr/lib/systemd/system/dhcpd6.*, /usr/lib/systemd/system/dhcre‐
323 lay.*
324
325
326 dhcpd_var_run_t
327
328 - Set files with the dhcpd_var_run_t type, if you want to store the
329 dhcpd files under the /run or /var/run directory.
330
331
332
333 Note: File context can be temporarily modified with the chcon command.
334 If you want to permanently change the file context you need to use the
335 semanage fcontext command. This will modify the SELinux labeling data‐
336 base. You will need to use restorecon to apply the labels.
337
338
340 semanage fcontext can also be used to manipulate default file context
341 mappings.
342
343 semanage permissive can also be used to manipulate whether or not a
344 process type is permissive.
345
346 semanage module can also be used to enable/disable/install/remove pol‐
347 icy modules.
348
349 semanage port can also be used to manipulate the port definitions
350
351 semanage boolean can also be used to manipulate the booleans
352
353
354 system-config-selinux is a GUI tool available to customize SELinux pol‐
355 icy settings.
356
357
359 This manual page was auto-generated using sepolicy manpage .
360
361
363 selinux(8), dhcpd(8), semanage(8), restorecon(8), chcon(1), sepolicy(8)
364 , setsebool(8)
365
366
367
368dhcpd 19-04-25 dhcpd_selinux(8)