1httpd_user_script_selinuSxE(L8i)nux Policy httpd_user_schrtitpptd_user_script_selinux(8)
2
3
4
6 httpd_user_script_selinux - Security Enhanced Linux Policy for the
7 httpd_user_script processes
8
10 Security-Enhanced Linux secures the httpd_user_script processes via
11 flexible mandatory access control.
12
13 The httpd_user_script processes execute with the httpd_user_script_t
14 SELinux type. You can check if you have these processes running by exe‐
15 cuting the ps command with the -Z qualifier.
16
17 For example:
18
19 ps -eZ | grep httpd_user_script_t
20
21
22
24 The httpd_user_script_t SELinux type can be entered via the
25 shell_exec_t, httpd_user_script_exec_t, httpdcontent,
26 httpd_user_script_exec_t file types.
27
28 The default entrypoint paths for the httpd_user_script_t domain are the
29 following:
30
31 /bin/d?ash, /bin/zsh.*, /bin/ksh.*, /usr/bin/d?ash, /usr/bin/ksh.*,
32 /usr/bin/zsh.*, /bin/esh, /bin/mksh, /bin/sash, /bin/tcsh, /bin/yash,
33 /bin/bash, /bin/fish, /bin/bash2, /usr/bin/esh, /usr/bin/sash,
34 /usr/bin/tcsh, /usr/bin/yash, /usr/bin/mksh, /usr/bin/fish,
35 /usr/bin/bash, /sbin/nologin, /usr/sbin/sesh, /usr/bin/bash2,
36 /usr/sbin/smrsh, /usr/bin/scponly, /usr/sbin/nologin,
37 /usr/libexec/sesh, /usr/sbin/scponlyc, /usr/bin/git-shell,
38 /usr/libexec/sudo/sesh, /usr/bin/cockpit-bridge, /usr/libexec/cockpit-
39 agent, /usr/libexec/git-core/git-shell, /home/[^/]+/((www)|(web)|(pub‐
40 lic_html))/cgi-bin(/.+)?, /home/[^/]+/((www)|(web)|(public_html))/cgi-
41 bin(/.+)?
42
44 SELinux defines process types (domains) for each process running on the
45 system
46
47 You can see the context of a process using the -Z option to ps
48
49 Policy governs the access confined processes have to files. SELinux
50 httpd_user_script policy is very flexible allowing users to setup their
51 httpd_user_script processes in as secure a method as possible.
52
53 The following process types are defined for httpd_user_script:
54
55 httpd_user_script_t
56
57 Note: semanage permissive -a httpd_user_script_t can be used to make
58 the process type httpd_user_script_t permissive. SELinux does not deny
59 access to permissive process types, but the AVC (SELinux denials) mes‐
60 sages are still generated.
61
62
64 SELinux policy is customizable based on least access required.
65 httpd_user_script policy is extremely flexible and has several booleans
66 that allow you to manipulate the policy and run httpd_user_script with
67 the tightest access possible.
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 any process from ptracing or debugging any other
80 processes, you must turn on the deny_ptrace boolean. Enabled by
81 default.
82
83 setsebool -P deny_ptrace 1
84
85
86
87 If you want to allow any process to mmap any file on system with
88 attribute file_type, you must turn on the domain_can_mmap_files bool‐
89 ean. Enabled by default.
90
91 setsebool -P domain_can_mmap_files 1
92
93
94
95 If you want to allow all domains write to kmsg_device, while kernel is
96 executed with systemd.log_target=kmsg parameter, you must turn on the
97 domain_can_write_kmsg boolean. Disabled by default.
98
99 setsebool -P domain_can_write_kmsg 1
100
101
102
103 If you want to allow all domains to use other domains file descriptors,
104 you must turn on the domain_fd_use boolean. Enabled by default.
105
106 setsebool -P domain_fd_use 1
107
108
109
110 If you want to allow all domains to have the kernel load modules, you
111 must turn on the domain_kernel_load_modules boolean. Disabled by
112 default.
113
114 setsebool -P domain_kernel_load_modules 1
115
116
117
118 If you want to allow all domains to execute in fips_mode, you must turn
119 on the fips_mode boolean. Enabled by default.
120
121 setsebool -P fips_mode 1
122
123
124
125 If you want to enable reading of urandom for all domains, you must turn
126 on the global_ssp boolean. Disabled by default.
127
128 setsebool -P global_ssp 1
129
130
131
132 If you want to allow httpd cgi support, you must turn on the
133 httpd_enable_cgi boolean. Disabled by default.
134
135 setsebool -P httpd_enable_cgi 1
136
137
138
139 If you want to allow httpd to read home directories, you must turn on
140 the httpd_enable_homedirs boolean. Disabled by default.
141
142 setsebool -P httpd_enable_homedirs 1
143
144
145
146 If you want to allow httpd to read user content, you must turn on the
147 httpd_read_user_content boolean. Disabled by default.
148
149 setsebool -P httpd_read_user_content 1
150
151
152
153 If you want to unify HTTPD handling of all content files, you must turn
154 on the httpd_unified boolean. Disabled by default.
155
156 setsebool -P httpd_unified 1
157
158
159
160 If you want to allow confined applications to run with kerberos, you
161 must turn on the kerberos_enabled boolean. Enabled by default.
162
163 setsebool -P kerberos_enabled 1
164
165
166
167 If you want to allow system to run with NIS, you must turn on the
168 nis_enabled boolean. Disabled by default.
169
170 setsebool -P nis_enabled 1
171
172
173
174 If you want to allow confined applications to use nscd shared memory,
175 you must turn on the nscd_use_shm boolean. Disabled by default.
176
177 setsebool -P nscd_use_shm 1
178
179
180
182 The SELinux process type httpd_user_script_t can manage files labeled
183 with the following file types. The paths listed are the default paths
184 for these file types. Note the processes UID still need to have DAC
185 permissions.
186
187 httpd_user_content_t
188
189 /home/[^/]+/((www)|(web)|(public_html))(/.+)?
190
191 httpd_user_ra_content_t
192
193 /home/[^/]+/((www)|(web)|(public_html))(/.*)?/logs(/.*)?
194
195 httpd_user_rw_content_t
196
197
198
200 SELinux requires files to have an extended attribute to define the file
201 type.
202
203 You can see the context of a file using the -Z option to ls
204
205 Policy governs the access confined processes have to these files.
206 SELinux httpd_user_script policy is very flexible allowing users to
207 setup their httpd_user_script processes in as secure a method as possi‐
208 ble.
209
210 The following file types are defined for httpd_user_script:
211
212
213
214 httpd_user_script_exec_t
215
216 - Set files with the httpd_user_script_exec_t type, if you want to
217 transition an executable to the httpd_user_script_t domain.
218
219
220
221 Note: File context can be temporarily modified with the chcon command.
222 If you want to permanently change the file context you need to use the
223 semanage fcontext command. This will modify the SELinux labeling data‐
224 base. You will need to use restorecon to apply the labels.
225
226
228 semanage fcontext can also be used to manipulate default file context
229 mappings.
230
231 semanage permissive can also be used to manipulate whether or not a
232 process type is permissive.
233
234 semanage module can also be used to enable/disable/install/remove pol‐
235 icy modules.
236
237 semanage boolean can also be used to manipulate the booleans
238
239
240 system-config-selinux is a GUI tool available to customize SELinux pol‐
241 icy settings.
242
243
245 This manual page was auto-generated using sepolicy manpage .
246
247
249 selinux(8), httpd_user_script(8), semanage(8), restorecon(8), chcon(1),
250 sepolicy(8) , setsebool(8)
251
252
253
254httpd_user_script 19-04-25 httpd_user_script_selinux(8)