1dhcpc_selinux(8) SELinux Policy dhcpc dhcpc_selinux(8)
2
3
4
6 dhcpc_selinux - Security Enhanced Linux Policy for the dhcpc processes
7
9 Security-Enhanced Linux secures the dhcpc processes via flexible manda‐
10 tory access control.
11
12 The dhcpc processes execute with the dhcpc_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 dhcpc_t
19
20
21
23 The dhcpc_t SELinux type can be entered via the dhcpc_exec_t file type.
24
25 The default entrypoint paths for the dhcpc_t domain are the following:
26
27 /sbin/dhclient.*, /usr/sbin/dhclient.*, /sbin/pump, /sbin/dhcdbd,
28 /sbin/dhcpcd, /usr/sbin/pump, /usr/sbin/dhcdbd, /usr/sbin/dhcpcd
29
31 SELinux defines process types (domains) for each process running on the
32 system
33
34 You can see the context of a process using the -Z option to ps
35
36 Policy governs the access confined processes have to files. SELinux
37 dhcpc policy is very flexible allowing users to setup their dhcpc pro‐
38 cesses in as secure a method as possible.
39
40 The following process types are defined for dhcpc:
41
42 dhcpc_t
43
44 Note: semanage permissive -a dhcpc_t can be used to make the process
45 type dhcpc_t permissive. SELinux does not deny access to permissive
46 process types, but the AVC (SELinux denials) messages are still gener‐
47 ated.
48
49
51 SELinux policy is customizable based on least access required. dhcpc
52 policy is extremely flexible and has several booleans that allow you to
53 manipulate the policy and run dhcpc with the tightest access possible.
54
55
56
57 If you want to allow dhcpc client applications to execute iptables com‐
58 mands, you must turn on the dhcpc_exec_iptables boolean. Disabled by
59 default.
60
61 setsebool -P dhcpc_exec_iptables 1
62
63
64
65 If you want to allow users to resolve user passwd entries directly from
66 ldap rather then using a sssd server, you must turn on the authlo‐
67 gin_nsswitch_use_ldap boolean. Disabled by default.
68
69 setsebool -P authlogin_nsswitch_use_ldap 1
70
71
72
73 If you want to allow all daemons to write corefiles to /, you must turn
74 on the daemons_dump_core boolean. Disabled by default.
75
76 setsebool -P daemons_dump_core 1
77
78
79
80 If you want to enable cluster mode for daemons, you must turn on the
81 daemons_enable_cluster_mode boolean. Enabled by default.
82
83 setsebool -P daemons_enable_cluster_mode 1
84
85
86
87 If you want to allow all daemons to use tcp wrappers, you must turn on
88 the daemons_use_tcp_wrapper boolean. Disabled by default.
89
90 setsebool -P daemons_use_tcp_wrapper 1
91
92
93
94 If you want to allow all daemons the ability to read/write terminals,
95 you must turn on the daemons_use_tty boolean. Disabled by default.
96
97 setsebool -P daemons_use_tty 1
98
99
100
101 If you want to deny any process from ptracing or debugging any other
102 processes, you must turn on the deny_ptrace boolean. Enabled by
103 default.
104
105 setsebool -P deny_ptrace 1
106
107
108
109 If you want to allow any process to mmap any file on system with
110 attribute file_type, you must turn on the domain_can_mmap_files bool‐
111 ean. Enabled by default.
112
113 setsebool -P domain_can_mmap_files 1
114
115
116
117 If you want to allow all domains write to kmsg_device, while kernel is
118 executed with systemd.log_target=kmsg parameter, you must turn on the
119 domain_can_write_kmsg boolean. Disabled by default.
120
121 setsebool -P domain_can_write_kmsg 1
122
123
124
125 If you want to allow all domains to use other domains file descriptors,
126 you must turn on the domain_fd_use boolean. Enabled by default.
127
128 setsebool -P domain_fd_use 1
129
130
131
132 If you want to allow all domains to have the kernel load modules, you
133 must turn on the domain_kernel_load_modules boolean. Disabled by
134 default.
135
136 setsebool -P domain_kernel_load_modules 1
137
138
139
140 If you want to allow all domains to execute in fips_mode, you must turn
141 on the fips_mode boolean. Enabled by default.
142
143 setsebool -P fips_mode 1
144
145
146
147 If you want to enable reading of urandom for all domains, you must turn
148 on the global_ssp boolean. Disabled by default.
149
150 setsebool -P global_ssp 1
151
152
153
154 If you want to allow confined applications to run with kerberos, you
155 must turn on the kerberos_enabled boolean. Enabled by default.
156
157 setsebool -P kerberos_enabled 1
158
159
160
161 If you want to allow system to run with NIS, you must turn on the
162 nis_enabled boolean. Disabled by default.
163
164 setsebool -P nis_enabled 1
165
166
167
168 If you want to allow confined applications to use nscd shared memory,
169 you must turn on the nscd_use_shm boolean. Disabled by default.
170
171 setsebool -P nscd_use_shm 1
172
173
174
176 SELinux defines port types to represent TCP and UDP ports.
177
178 You can see the types associated with a port by using the following
179 command:
180
181 semanage port -l
182
183
184 Policy governs the access confined processes have to these ports.
185 SELinux dhcpc policy is very flexible allowing users to setup their
186 dhcpc processes in as secure a method as possible.
187
188 The following port types are defined for dhcpc:
189
190
191 dhcpc_port_t
192
193
194
195 Default Defined Ports:
196 tcp 68,546,5546
197 udp 68,546,5546
198
200 The SELinux process type dhcpc_t can manage files labeled with the fol‐
201 lowing file types. The paths listed are the default paths for these
202 file types. Note the processes UID still need to have DAC permissions.
203
204 NetworkManager_var_lib_t
205
206 /var/lib/wicd(/.*)?
207 /var/lib/NetworkManager(/.*)?
208 /etc/dhcp/wired-settings.conf
209 /etc/wicd/wired-settings.conf
210 /etc/dhcp/manager-settings.conf
211 /etc/wicd/manager-settings.conf
212 /etc/dhcp/wireless-settings.conf
213 /etc/wicd/wireless-settings.conf
214
215 cluster_conf_t
216
217 /etc/cluster(/.*)?
218
219 cluster_var_lib_t
220
221 /var/lib/pcsd(/.*)?
222 /var/lib/cluster(/.*)?
223 /var/lib/openais(/.*)?
224 /var/lib/pengine(/.*)?
225 /var/lib/corosync(/.*)?
226 /usr/lib/heartbeat(/.*)?
227 /var/lib/heartbeat(/.*)?
228 /var/lib/pacemaker(/.*)?
229
230 cluster_var_run_t
231
232 /var/run/crm(/.*)?
233 /var/run/cman_.*
234 /var/run/rsctmp(/.*)?
235 /var/run/aisexec.*
236 /var/run/heartbeat(/.*)?
237 /var/run/corosync-qnetd(/.*)?
238 /var/run/corosync-qdevice(/.*)?
239 /var/run/cpglockd.pid
240 /var/run/corosync.pid
241 /var/run/rgmanager.pid
242 /var/run/cluster/rgmanager.sk
243
244 dhcpc_state_t
245
246 /var/lib/dhcp3?/dhclient.*
247 /var/lib/dhcpcd(/.*)?
248 /var/lib/dhclient(/.*)?
249 /var/lib/wifiroamd(/.*)?
250
251 dhcpc_tmp_t
252
253
254 dhcpc_var_run_t
255
256 /var/run/dhcpcd(/.*)?
257 /var/run/dhclient.*
258
259 initrc_var_run_t
260
261 /var/run/utmp
262 /var/run/random-seed
263 /var/run/runlevel.dir
264 /var/run/setmixer_flag
265
266 net_conf_t
267
268 /etc/hosts[^/]*
269 /etc/yp.conf.*
270 /etc/denyhosts.*
271 /etc/hosts.deny.*
272 /etc/resolv.conf.*
273 /etc/.resolv.conf.*
274 /etc/resolv-secure.conf.*
275 /var/run/systemd/network(/.*)?
276 /etc/sysconfig/networking(/.*)?
277 /etc/sysconfig/network-scripts(/.*)?
278 /etc/sysconfig/network-scripts/.*resolv.conf
279 /var/run/NetworkManager/resolv.conf.*
280 /etc/ethers
281 /etc/ntp.conf
282 /var/run/systemd/resolve/resolv.conf
283
284 root_t
285
286 /sysroot/ostree/deploy/.*-atomic.*/deploy(/.*)?
287 /
288 /initrd
289
290 systemd_passwd_var_run_t
291
292 /var/run/systemd/ask-password(/.*)?
293 /var/run/systemd/ask-password-block(/.*)?
294
295 virt_lxc_var_run_t
296
297 /var/run/libvirt/lxc(/.*)?
298 /var/run/libvirt-sandbox(/.*)?
299
300 virt_var_run_t
301
302 /var/vdsm(/.*)?
303 /var/run/vdsm(/.*)?
304 /var/run/libvirt(/.*)?
305 /var/run/libvirtd.pid
306 /var/run/qemu-pr-helper.sock
307
308
310 SELinux requires files to have an extended attribute to define the file
311 type.
312
313 You can see the context of a file using the -Z option to ls
314
315 Policy governs the access confined processes have to these files.
316 SELinux dhcpc policy is very flexible allowing users to setup their
317 dhcpc processes in as secure a method as possible.
318
319 STANDARD FILE CONTEXT
320
321 SELinux defines the file context types for the dhcpc, if you wanted to
322 store files with these types in a diffent paths, you need to execute
323 the semanage command to sepecify alternate labeling and then use
324 restorecon to put the labels on disk.
325
326 semanage fcontext -a -t dhcpc_var_run_t '/srv/mydhcpc_content(/.*)?'
327 restorecon -R -v /srv/mydhcpc_content
328
329 Note: SELinux often uses regular expressions to specify labels that
330 match multiple files.
331
332 The following file types are defined for dhcpc:
333
334
335
336 dhcpc_exec_t
337
338 - Set files with the dhcpc_exec_t type, if you want to transition an
339 executable to the dhcpc_t domain.
340
341
342 Paths:
343 /sbin/dhclient.*, /usr/sbin/dhclient.*, /sbin/pump, /sbin/dhcdbd,
344 /sbin/dhcpcd, /usr/sbin/pump, /usr/sbin/dhcdbd, /usr/sbin/dhcpcd
345
346
347 dhcpc_helper_exec_t
348
349 - Set files with the dhcpc_helper_exec_t type, if you want to transi‐
350 tion an executable to the dhcpc_helper_t domain.
351
352
353
354 dhcpc_state_t
355
356 - Set files with the dhcpc_state_t type, if you want to treat the files
357 as dhcpc state data.
358
359
360 Paths:
361 /var/lib/dhcp3?/dhclient.*, /var/lib/dhcpcd(/.*)?,
362 /var/lib/dhclient(/.*)?, /var/lib/wifiroamd(/.*)?
363
364
365 dhcpc_tmp_t
366
367 - Set files with the dhcpc_tmp_t type, if you want to store dhcpc tem‐
368 porary files in the /tmp directories.
369
370
371
372 dhcpc_var_run_t
373
374 - Set files with the dhcpc_var_run_t type, if you want to store the
375 dhcpc files under the /run or /var/run directory.
376
377
378 Paths:
379 /var/run/dhcpcd(/.*)?, /var/run/dhclient.*
380
381
382 Note: File context can be temporarily modified with the chcon command.
383 If you want to permanently change the file context you need to use the
384 semanage fcontext command. This will modify the SELinux labeling data‐
385 base. You will need to use restorecon to apply the labels.
386
387
389 semanage fcontext can also be used to manipulate default file context
390 mappings.
391
392 semanage permissive can also be used to manipulate whether or not a
393 process type is permissive.
394
395 semanage module can also be used to enable/disable/install/remove pol‐
396 icy modules.
397
398 semanage port can also be used to manipulate the port definitions
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), dhcpc(8), semanage(8), restorecon(8), chcon(1), sepolicy(8)
413 , setsebool(8)
414
415
416
417dhcpc 19-04-25 dhcpc_selinux(8)