1cupsd_config_selinux(8) SELinux Policy cupsd_config cupsd_config_selinux(8)
2
3
4
6 cupsd_config_selinux - Security Enhanced Linux Policy for the
7 cupsd_config processes
8
10 Security-Enhanced Linux secures the cupsd_config processes via flexible
11 mandatory access control.
12
13 The cupsd_config processes execute with the cupsd_config_t SELinux
14 type. You can check if you have these processes running by executing
15 the ps command with the -Z qualifier.
16
17 For example:
18
19 ps -eZ | grep cupsd_config_t
20
21
22
24 The cupsd_config_t SELinux type can be entered via the cupsd_con‐
25 fig_exec_t file type.
26
27 The default entrypoint paths for the cupsd_config_t domain are the fol‐
28 lowing:
29
30 /usr/sbin/hal_lpadmin, /usr/libexec/hal_lpadmin, /usr/bin/cups-config-
31 daemon, /usr/sbin/printconf-backend, /usr/lib/udev/udev-configure-
32 printer, /usr/libexec/cups-pk-helper-mechanism
33
35 SELinux defines process types (domains) for each process running on the
36 system
37
38 You can see the context of a process using the -Z option to ps
39
40 Policy governs the access confined processes have to files. SELinux
41 cupsd_config policy is very flexible allowing users to setup their
42 cupsd_config processes in as secure a method as possible.
43
44 The following process types are defined for cupsd_config:
45
46 cupsd_config_t
47
48 Note: semanage permissive -a cupsd_config_t can be used to make the
49 process type cupsd_config_t permissive. SELinux does not deny access to
50 permissive process types, but the AVC (SELinux denials) messages are
51 still generated.
52
53
55 SELinux policy is customizable based on least access required.
56 cupsd_config policy is extremely flexible and has several booleans that
57 allow you to manipulate the policy and run cupsd_config with the tight‐
58 est access possible.
59
60
61
62 If you want to allow users to resolve user passwd entries directly from
63 ldap rather then using a sssd server, you must turn on the authlo‐
64 gin_nsswitch_use_ldap boolean. Disabled by default.
65
66 setsebool -P authlogin_nsswitch_use_ldap 1
67
68
69
70 If you want to allow all daemons to write corefiles to /, you must turn
71 on the daemons_dump_core boolean. Disabled by default.
72
73 setsebool -P daemons_dump_core 1
74
75
76
77 If you want to enable cluster mode for daemons, you must turn on the
78 daemons_enable_cluster_mode boolean. Enabled by default.
79
80 setsebool -P daemons_enable_cluster_mode 1
81
82
83
84 If you want to allow all daemons to use tcp wrappers, you must turn on
85 the daemons_use_tcp_wrapper boolean. Disabled by default.
86
87 setsebool -P daemons_use_tcp_wrapper 1
88
89
90
91 If you want to allow all daemons the ability to read/write terminals,
92 you must turn on the daemons_use_tty boolean. Disabled by default.
93
94 setsebool -P daemons_use_tty 1
95
96
97
98 If you want to deny any process from ptracing or debugging any other
99 processes, you must turn on the deny_ptrace boolean. Enabled by
100 default.
101
102 setsebool -P deny_ptrace 1
103
104
105
106 If you want to allow any process to mmap any file on system with
107 attribute file_type, you must turn on the domain_can_mmap_files bool‐
108 ean. Enabled by default.
109
110 setsebool -P domain_can_mmap_files 1
111
112
113
114 If you want to allow all domains write to kmsg_device, while kernel is
115 executed with systemd.log_target=kmsg parameter, you must turn on the
116 domain_can_write_kmsg boolean. Disabled by default.
117
118 setsebool -P domain_can_write_kmsg 1
119
120
121
122 If you want to allow all domains to use other domains file descriptors,
123 you must turn on the domain_fd_use boolean. Enabled by default.
124
125 setsebool -P domain_fd_use 1
126
127
128
129 If you want to allow all domains to have the kernel load modules, you
130 must turn on the domain_kernel_load_modules boolean. Disabled by
131 default.
132
133 setsebool -P domain_kernel_load_modules 1
134
135
136
137 If you want to allow all domains to execute in fips_mode, you must turn
138 on the fips_mode boolean. Enabled by default.
139
140 setsebool -P fips_mode 1
141
142
143
144 If you want to enable reading of urandom for all domains, you must turn
145 on the global_ssp boolean. Disabled by default.
146
147 setsebool -P global_ssp 1
148
149
150
151 If you want to allow confined applications to run with kerberos, you
152 must turn on the kerberos_enabled boolean. Enabled by default.
153
154 setsebool -P kerberos_enabled 1
155
156
157
158 If you want to allow system to run with NIS, you must turn on the
159 nis_enabled boolean. Disabled by default.
160
161 setsebool -P nis_enabled 1
162
163
164
165 If you want to allow confined applications to use nscd shared memory,
166 you must turn on the nscd_use_shm boolean. Disabled by default.
167
168 setsebool -P nscd_use_shm 1
169
170
171
173 The SELinux process type cupsd_config_t can manage files labeled with
174 the following file types. The paths listed are the default paths for
175 these file types. Note the processes UID still need to have DAC per‐
176 missions.
177
178 cluster_conf_t
179
180 /etc/cluster(/.*)?
181
182 cluster_var_lib_t
183
184 /var/lib/pcsd(/.*)?
185 /var/lib/cluster(/.*)?
186 /var/lib/openais(/.*)?
187 /var/lib/pengine(/.*)?
188 /var/lib/corosync(/.*)?
189 /usr/lib/heartbeat(/.*)?
190 /var/lib/heartbeat(/.*)?
191 /var/lib/pacemaker(/.*)?
192
193 cluster_var_run_t
194
195 /var/run/crm(/.*)?
196 /var/run/cman_.*
197 /var/run/rsctmp(/.*)?
198 /var/run/aisexec.*
199 /var/run/heartbeat(/.*)?
200 /var/run/corosync-qnetd(/.*)?
201 /var/run/corosync-qdevice(/.*)?
202 /var/run/cpglockd.pid
203 /var/run/corosync.pid
204 /var/run/rgmanager.pid
205 /var/run/cluster/rgmanager.sk
206
207 cupsd_config_var_run_t
208
209 /var/run/udev-configure-printer(/.*)?
210
211 cupsd_etc_t
212
213 /etc/hp(/.*)?
214 /etc/cups(/.*)?
215 /usr/share/cups(/.*)?
216
217 cupsd_rw_etc_t
218
219 /etc/printcap.*
220 /etc/cups/ppd(/.*)?
221 /usr/Brother/(.*/)?inf(/.*)?
222 /usr/Printer/(.*/)?inf(/.*)?
223 /usr/lib/bjlib(/.*)?
224 /var/lib/iscan(/.*)?
225 /var/cache/cups(/.*)?
226 /etc/cups/certs/.*
227 /etc/opt/Brother/(.*/)?inf(/.*)?
228 /etc/cups/lpoptions.*
229 /var/cache/foomatic(/.*)?
230 /usr/local/Brother/(.*/)?inf(/.*)?
231 /usr/local/Printer/(.*/)?inf(/.*)?
232 /etc/cups/cupsd.conf.*
233 /var/lib/cups/certs/.*
234 /opt/gutenprint/ppds(/.*)?
235 /opt/brother/Printers(.*/)?inf(/.*)?
236 /etc/cups/classes.conf.*
237 /etc/cups/printers.conf.*
238 /etc/cups/subscriptions.*
239 /etc/opt/brother/Printers/(.*/)?inf(/.*)?
240 /usr/local/linuxprinter/ppd(/.*)?
241 /var/cache/alchemist/printconf.*
242 /etc/alchemist/namespace/printconf(/.*)?
243 /etc/cups/certs
244 /etc/cups/ppds.dat
245 /var/lib/cups/certs
246 /usr/share/foomatic/db/oldprinterids
247
248 cupsd_tmp_t
249
250
251 print_spool_t
252
253 /var/spool/lpd(/.*)?
254 /var/spool/cups(/.*)?
255 /var/spool/cups-pdf(/.*)?
256
257 root_t
258
259 /sysroot/ostree/deploy/.*-atomic.*/deploy(/.*)?
260 /
261 /initrd
262
263 user_tmp_t
264
265 /dev/shm/mono.*
266 /var/run/user(/.*)?
267 /tmp/.X11-unix(/.*)?
268 /tmp/.ICE-unix(/.*)?
269 /dev/shm/pulse-shm.*
270 /tmp/.X0-lock
271 /tmp/hsperfdata_root
272 /var/tmp/hsperfdata_root
273 /home/[^/]+/tmp
274 /home/[^/]+/.tmp
275 /tmp/gconfd-[^/]+
276
277
279 SELinux requires files to have an extended attribute to define the file
280 type.
281
282 You can see the context of a file using the -Z option to ls
283
284 Policy governs the access confined processes have to these files.
285 SELinux cupsd_config policy is very flexible allowing users to setup
286 their cupsd_config processes in as secure a method as possible.
287
288 STANDARD FILE CONTEXT
289
290 SELinux defines the file context types for the cupsd_config, if you
291 wanted to store files with these types in a diffent paths, you need to
292 execute the semanage command to sepecify alternate labeling and then
293 use restorecon to put the labels on disk.
294
295 semanage fcontext -a -t cupsd_config_var_run_t '/srv/mycupsd_con‐
296 fig_content(/.*)?'
297 restorecon -R -v /srv/mycupsd_config_content
298
299 Note: SELinux often uses regular expressions to specify labels that
300 match multiple files.
301
302 The following file types are defined for cupsd_config:
303
304
305
306 cupsd_config_exec_t
307
308 - Set files with the cupsd_config_exec_t type, if you want to transi‐
309 tion an executable to the cupsd_config_t domain.
310
311
312 Paths:
313 /usr/sbin/hal_lpadmin, /usr/libexec/hal_lpadmin, /usr/bin/cups-
314 config-daemon, /usr/sbin/printconf-backend, /usr/lib/udev/udev-
315 configure-printer, /usr/libexec/cups-pk-helper-mechanism
316
317
318 cupsd_config_var_run_t
319
320 - Set files with the cupsd_config_var_run_t type, if you want to store
321 the cupsd config files under the /run or /var/run directory.
322
323
324
325 Note: File context can be temporarily modified with the chcon command.
326 If you want to permanently change the file context you need to use the
327 semanage fcontext command. This will modify the SELinux labeling data‐
328 base. You will need to use restorecon to apply the labels.
329
330
332 semanage fcontext can also be used to manipulate default file context
333 mappings.
334
335 semanage permissive can also be used to manipulate whether or not a
336 process type is permissive.
337
338 semanage module can also be used to enable/disable/install/remove pol‐
339 icy modules.
340
341 semanage boolean can also be used to manipulate the booleans
342
343
344 system-config-selinux is a GUI tool available to customize SELinux pol‐
345 icy settings.
346
347
349 This manual page was auto-generated using sepolicy manpage .
350
351
353 selinux(8), cupsd_config(8), semanage(8), restorecon(8), chcon(1),
354 sepolicy(8) , setsebool(8)
355
356
357
358cupsd_config 19-04-25 cupsd_config_selinux(8)