1webadm_selinux(8) webadm SELinux Policy documentation webadm_selinux(8)
2
3
4
6 webadm_r - Web administrator role. - Security Enhanced Linux Policy
7
8
10 SELinux supports Roles Based Access Control (RBAC), some Linux roles
11 are login roles, while other roles need to be transition into.
12
13 Note: Examples in this man page will use the staff_u SELinux user.
14
15 Non login roles are usually used for administrative tasks. For example,
16 tasks that require root privileges. Roles control which types a user
17 can run processes with. Roles often have default types assigned to
18 them.
19
20 The default type for the webadm_r role is webadm_t.
21
22 The newrole program to transition directly to this role.
23
24 newrole -r webadm_r -t webadm_t
25
26 sudo is the preferred method to do transition from one role to another.
27 You setup sudo to transition to webadm_r by adding a similar line to
28 the /etc/sudoers file.
29
30 USERNAME ALL=(ALL) ROLE=webadm_r TYPE=webadm_t COMMAND
31
32 sudo will run COMMAND as staff_u:webadm_r:webadm_t:LEVEL
33
34 When using a a non login role, you need to setup SELinux so that your
35 SELinux user can reach webadm_r role.
36
37 Execute the following to see all of the assigned SELinux roles:
38
39 semanage user -l
40
41 You need to add webadm_r to the staff_u user. You could setup the
42 staff_u user to be able to use the webadm_r role with a command like:
43
44 $ semanage user -m -R 'staff_r system_r webadm_r' staff_u
45
46
47
49 SELinux policy is customizable based on least access required. webadm
50 policy is extremely flexible and has several booleans that allow you to
51 manipulate the policy and run webadm with the tightest access possible.
52
53
54
55 If you want to determine whether webadm can manage generic user files,
56 you must turn on the webadm_manage_user_files boolean. Disabled by
57 default.
58
59 setsebool -P webadm_manage_user_files 1
60
61
62
63 If you want to determine whether webadm can read generic user files,
64 you must turn on the webadm_read_user_files boolean. Disabled by
65 default.
66
67 setsebool -P webadm_read_user_files 1
68
69
70
71 If you want to allow users to resolve user passwd entries directly from
72 ldap rather then using a sssd server, you must turn on the authlo‐
73 gin_nsswitch_use_ldap boolean. Disabled by default.
74
75 setsebool -P authlogin_nsswitch_use_ldap 1
76
77
78
79 If you want to deny user domains applications to map a memory region as
80 both executable and writable, this is dangerous and the executable
81 should be reported in bugzilla, you must turn on the deny_execmem bool‐
82 ean. Enabled by default.
83
84 setsebool -P deny_execmem 1
85
86
87
88 If you want to deny any process from ptracing or debugging any other
89 processes, you must turn on the deny_ptrace boolean. Enabled by
90 default.
91
92 setsebool -P deny_ptrace 1
93
94
95
96 If you want to allow all domains to execute in fips_mode, you must turn
97 on the fips_mode boolean. Enabled by default.
98
99 setsebool -P fips_mode 1
100
101
102
103 If you want to allow confined applications to run with kerberos, you
104 must turn on the kerberos_enabled boolean. Enabled by default.
105
106 setsebool -P kerberos_enabled 1
107
108
109
110 If you want to allow system to run with NIS, you must turn on the
111 nis_enabled boolean. Disabled by default.
112
113 setsebool -P nis_enabled 1
114
115
116
117 If you want to allow confined applications to use nscd shared memory,
118 you must turn on the nscd_use_shm boolean. Disabled by default.
119
120 setsebool -P nscd_use_shm 1
121
122
123
124 If you want to allow unconfined executables to make their stack exe‐
125 cutable. This should never, ever be necessary. Probably indicates a
126 badly coded executable, but could indicate an attack. This executable
127 should be reported in bugzilla, you must turn on the selinuxuser_exec‐
128 stack boolean. Enabled by default.
129
130 setsebool -P selinuxuser_execstack 1
131
132
133
135 The SELinux process type webadm_t can manage files labeled with the
136 following file types. The paths listed are the default paths for these
137 file types. Note the processes UID still need to have DAC permissions.
138
139 httpd_config_t
140
141 /etc/httpd(/.*)?
142 /etc/nginx(/.*)?
143 /etc/apache(2)?(/.*)?
144 /etc/cherokee(/.*)?
145 /etc/lighttpd(/.*)?
146 /etc/apache-ssl(2)?(/.*)?
147 /var/lib/openshift/.httpd.d(/.*)?
148 /etc/opt/rh/rh-nginx18/nginx(/.*)?
149 /var/lib/stickshift/.httpd.d(/.*)?
150 /etc/vhosts
151 /etc/thttpd.conf
152
153 httpd_lock_t
154
155
156 httpd_log_t
157
158 /srv/([^/]*/)?www/logs(/.*)?
159 /var/www(/.*)?/logs(/.*)?
160 /var/log/glpi(/.*)?
161 /var/log/cacti(/.*)?
162 /var/log/httpd(/.*)?
163 /var/log/nginx(/.*)?
164 /var/log/apache(2)?(/.*)?
165 /var/log/horizon(/.*)?
166 /var/log/php-fpm(/.*)?
167 /var/log/cherokee(/.*)?
168 /var/log/lighttpd(/.*)?
169 /var/log/suphp.log.*
170 /var/log/thttpd.log.*
171 /var/log/apache-ssl(2)?(/.*)?
172 /var/log/cgiwrap.log.*
173 /var/www/stickshift/[^/]*/log(/.*)?
174 /var/log/graphite-web(/.*)?
175 /var/www/miq/vmdb/log(/.*)?
176 /var/log/roundcubemail(/.*)?
177 /var/log/php_errors.log.*
178 /var/log/dirsrv/admin-serv(/.*)?
179 /var/opt/rh/rh-nginx18/log(/.*)?
180 /var/lib/openshift/.log/httpd(/.*)?
181 /var/www/openshift/console/log(/.*)?
182 /var/www/openshift/broker/httpd/logs(/.*)?
183 /var/www/openshift/console/httpd/logs(/.*)?
184 /etc/httpd/logs
185
186 httpd_modules_t
187
188 /usr/lib/httpd(/.*)?
189 /usr/lib/apache(/.*)?
190 /usr/lib/cherokee(/.*)?
191 /usr/lib/lighttpd(/.*)?
192 /usr/lib/apache2/modules(/.*)?
193 /etc/httpd/modules
194
195 httpd_php_tmp_t
196
197
198 httpd_script_exec_type
199
200
201 httpd_suexec_tmp_t
202
203
204 httpd_tmp_t
205
206 /var/run/user/apache(/.*)?
207 /var/www/openshift/console/tmp(/.*)?
208
209 httpd_unit_file_t
210
211 /usr/lib/systemd/system/httpd.*
212 /usr/lib/systemd/system/nginx.*
213 /usr/lib/systemd/system/thttpd.*
214 /usr/lib/systemd/system/php-fpm.*
215
216 httpd_var_run_t
217
218 /var/run/wsgi.*
219 /var/run/mod_.*
220 /var/run/httpd.*
221 /var/run/nginx.*
222 /var/run/apache.*
223 /var/run/php-fpm(/.*)?
224 /var/run/fcgiwrap(/.*)?
225 /var/run/lighttpd(/.*)?
226 /var/lib/php/session(/.*)?
227 /var/lib/php/wsdlcache(/.*)?
228 /var/run/dirsrv/admin-serv.*
229 /var/opt/rh/rh-nginx18/run/nginx(/.*)?
230 /var/www/openshift/broker/httpd/run(/.*)?
231 /var/www/openshift/console/httpd/run(/.*)?
232 /opt/dirsrv/var/run/dirsrv/dsgw/cookies(/.*)?
233 /var/run/thttpd.pid
234 /var/run/gcache_port
235 /var/run/cherokee.pid
236
237 httpdcontent
238
239
240 public_content_rw_t
241
242 /var/spool/abrt-upload(/.*)?
243
244 systemd_passwd_var_run_t
245
246 /var/run/systemd/ask-password(/.*)?
247 /var/run/systemd/ask-password-block(/.*)?
248
249 user_home_t
250
251 /home/[^/]+/.+
252
253 user_tmp_t
254
255 /dev/shm/mono.*
256 /var/run/user(/.*)?
257 /tmp/.ICE-unix(/.*)?
258 /tmp/.X11-unix(/.*)?
259 /dev/shm/pulse-shm.*
260 /tmp/.X0-lock
261 /tmp/hsperfdata_root
262 /var/tmp/hsperfdata_root
263 /home/[^/]+/tmp
264 /home/[^/]+/.tmp
265 /tmp/gconfd-[^/]+
266
267 webadm_tmp_t
268
269
270
272 semanage fcontext can also be used to manipulate default file context
273 mappings.
274
275 semanage permissive can also be used to manipulate whether or not a
276 process type is permissive.
277
278 semanage module can also be used to enable/disable/install/remove pol‐
279 icy modules.
280
281 semanage boolean can also be used to manipulate the booleans
282
283
284 system-config-selinux is a GUI tool available to customize SELinux pol‐
285 icy settings.
286
287
289 This manual page was auto-generated using sepolicy manpage .
290
291
293 selinux(8), webadm(8), semanage(8), restorecon(8), chcon(1), sepol‐
294 icy(8), setsebool(8)
295
296
297
298mgrepl@redhat.com webadm webadm_selinux(8)