1udev_selinux(8) SELinux Policy udev udev_selinux(8)
2
3
4
6 udev_selinux - Security Enhanced Linux Policy for the udev processes
7
9 Security-Enhanced Linux secures the udev processes via flexible manda‐
10 tory access control.
11
12 The udev processes execute with the udev_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 udev_t
19
20
21
23 The udev_t SELinux type can be entered via the udev_exec_t,
24 udev_helper_exec_t file types.
25
26 The default entrypoint paths for the udev_t domain are the following:
27
28 /sbin/udev, /sbin/udevd, /bin/udevadm, /sbin/udevadm, /sbin/udevsend,
29 /usr/sbin/udev, /lib/udev/udevd, /sbin/udevstart, /usr/sbin/udevd,
30 /sbin/start_udev, /usr/bin/udevadm, /usr/bin/udevinfo, /usr/sbin/ude‐
31 vadm, /lib/udev/udev-acl, /usr/sbin/udevsend, /usr/lib/udev/udevd,
32 /usr/sbin/udevstart, /sbin/wait_for_sysfs, /usr/sbin/start_udev,
33 /usr/lib/udev/udev-acl, /usr/sbin/wait_for_sysfs, /usr/lib/systemd/sys‐
34 temd-udevd, /etc/dev.d/.+, /etc/udev/scripts/.+, /etc/hotplug.d/de‐
35 fault/udev.*
36
38 SELinux defines process types (domains) for each process running on the
39 system
40
41 You can see the context of a process using the -Z option to ps
42
43 Policy governs the access confined processes have to files. SELinux
44 udev policy is very flexible allowing users to setup their udev pro‐
45 cesses in as secure a method as possible.
46
47 The following process types are defined for udev:
48
49 udev_t
50
51 Note: semanage permissive -a udev_t can be used to make the process
52 type udev_t permissive. SELinux does not deny access to permissive
53 process types, but the AVC (SELinux denials) messages are still gener‐
54 ated.
55
56
58 SELinux policy is customizable based on least access required. udev
59 policy is extremely flexible and has several booleans that allow you to
60 manipulate the policy and run udev with the tightest access possible.
61
62
63
64 If you want to dontaudit all daemons scheduling requests (setsched,
65 sys_nice), you must turn on the daemons_dontaudit_scheduling boolean.
66 Enabled by default.
67
68 setsebool -P daemons_dontaudit_scheduling 1
69
70
71
72 If you want to control the ability to mmap a low area of the address
73 space, as configured by /proc/sys/vm/mmap_min_addr, you must turn on
74 the mmap_low_allowed boolean. Disabled by default.
75
76 setsebool -P mmap_low_allowed 1
77
78
79
80 If you want to allow system to run with NIS, you must turn on the
81 nis_enabled boolean. Disabled by default.
82
83 setsebool -P nis_enabled 1
84
85
86
87 If you want to disable kernel module loading, you must turn on the se‐
88 cure_mode_insmod boolean. Disabled by default.
89
90 setsebool -P secure_mode_insmod 1
91
92
93
94 If you want to allow unconfined executables to make their heap memory
95 executable. Doing this is a really bad idea. Probably indicates a
96 badly coded executable, but could indicate an attack. This executable
97 should be reported in bugzilla, you must turn on the selinuxuser_ex‐
98 echeap boolean. Disabled by default.
99
100 setsebool -P selinuxuser_execheap 1
101
102
103
104 If you want to allow unconfined executables to make their stack exe‐
105 cutable. This should never, ever be necessary. Probably indicates a
106 badly coded executable, but could indicate an attack. This executable
107 should be reported in bugzilla, you must turn on the selinuxuser_exec‐
108 stack boolean. Enabled by default.
109
110 setsebool -P selinuxuser_execstack 1
111
112
113
115 The SELinux process type udev_t can manage files labeled with the fol‐
116 lowing file types. The paths listed are the default paths for these
117 file types. Note the processes UID still need to have DAC permissions.
118
119 file_type
120
121 all files on the system
122
123
125 SELinux requires files to have an extended attribute to define the file
126 type.
127
128 You can see the context of a file using the -Z option to ls
129
130 Policy governs the access confined processes have to these files.
131 SELinux udev policy is very flexible allowing users to setup their udev
132 processes in as secure a method as possible.
133
134 STANDARD FILE CONTEXT
135
136 SELinux defines the file context types for the udev, if you wanted to
137 store files with these types in a different paths, you need to execute
138 the semanage command to specify alternate labeling and then use re‐
139 storecon to put the labels on disk.
140
141 semanage fcontext -a -t udev_exec_t '/srv/udev/content(/.*)?'
142 restorecon -R -v /srv/myudev_content
143
144 Note: SELinux often uses regular expressions to specify labels that
145 match multiple files.
146
147 The following file types are defined for udev:
148
149
150
151 udev_etc_t
152
153 - Set files with the udev_etc_t type, if you want to store udev files
154 in the /etc directories.
155
156
157
158 udev_exec_t
159
160 - Set files with the udev_exec_t type, if you want to transition an ex‐
161 ecutable to the udev_t domain.
162
163
164 Paths:
165 /sbin/udev, /sbin/udevd, /bin/udevadm, /sbin/udevadm, /sbin/ude‐
166 vsend, /usr/sbin/udev, /lib/udev/udevd, /sbin/udevstart,
167 /usr/sbin/udevd, /sbin/start_udev, /usr/bin/udevadm,
168 /usr/bin/udevinfo, /usr/sbin/udevadm, /lib/udev/udev-acl,
169 /usr/sbin/udevsend, /usr/lib/udev/udevd, /usr/sbin/udevstart,
170 /sbin/wait_for_sysfs, /usr/sbin/start_udev, /usr/lib/udev/udev-
171 acl, /usr/sbin/wait_for_sysfs, /usr/lib/systemd/systemd-udevd
172
173
174 udev_helper_exec_t
175
176 - Set files with the udev_helper_exec_t type, if you want to transition
177 an executable to the udev_helper_t domain.
178
179
180 Paths:
181 /etc/dev.d/.+, /etc/udev/scripts/.+, /etc/hotplug.d/default/udev.*
182
183
184 udev_rules_t
185
186 - Set files with the udev_rules_t type, if you want to treat the files
187 as udev rules data.
188
189
190
191 udev_tmp_t
192
193 - Set files with the udev_tmp_t type, if you want to store udev tempo‐
194 rary files in the /tmp directories.
195
196
197
198 udev_var_run_t
199
200 - Set files with the udev_var_run_t type, if you want to store the udev
201 files under the /run or /var/run directory.
202
203
204 Paths:
205 /dev/.udev(/.*)?, /var/run/udev(/.*)?, /var/run/libgpod(/.*)?,
206 /var/run/PackageKit/udev(/.*)?, /dev/.udevdb, /dev/udev.tbl
207
208
209 Note: File context can be temporarily modified with the chcon command.
210 If you want to permanently change the file context you need to use the
211 semanage fcontext command. This will modify the SELinux labeling data‐
212 base. You will need to use restorecon to apply the labels.
213
214
216 semanage fcontext can also be used to manipulate default file context
217 mappings.
218
219 semanage permissive can also be used to manipulate whether or not a
220 process type is permissive.
221
222 semanage module can also be used to enable/disable/install/remove pol‐
223 icy modules.
224
225 semanage boolean can also be used to manipulate the booleans
226
227
228 system-config-selinux is a GUI tool available to customize SELinux pol‐
229 icy settings.
230
231
233 This manual page was auto-generated using sepolicy manpage .
234
235
237 selinux(8), udev(8), semanage(8), restorecon(8), chcon(1), sepolicy(8),
238 setsebool(8)
239
240
241
242udev 23-10-20 udev_selinux(8)