1git_script_selinux(8) SELinux Policy git_script git_script_selinux(8)
2
3
4
6 git_script_selinux - Security Enhanced Linux Policy for the git_script
7 processes
8
10 Security-Enhanced Linux secures the git_script processes via flexible
11 mandatory access control.
12
13 The git_script processes execute with the git_script_t SELinux type.
14 You can check if you have these processes running by executing the ps
15 command with the -Z qualifier.
16
17 For example:
18
19 ps -eZ | grep git_script_t
20
21
22
24 The git_script_t SELinux type can be entered via the shell_exec_t,
25 git_script_exec_t, git_script_exec_t file types.
26
27 The default entrypoint paths for the git_script_t domain are the fol‐
28 lowing:
29
30 /bin/d?ash, /bin/zsh.*, /bin/ksh.*, /usr/bin/d?ash, /usr/bin/ksh.*,
31 /usr/bin/zsh.*, /bin/esh, /bin/mksh, /bin/sash, /bin/tcsh, /bin/yash,
32 /bin/bash, /bin/fish, /bin/bash2, /usr/bin/esh, /usr/bin/sash,
33 /usr/bin/tcsh, /usr/bin/yash, /usr/bin/mksh, /usr/bin/fish,
34 /usr/bin/bash, /sbin/nologin, /usr/sbin/sesh, /usr/bin/bash2,
35 /usr/sbin/smrsh, /usr/bin/scponly, /usr/sbin/nologin,
36 /usr/libexec/sesh, /usr/sbin/scponlyc, /usr/bin/git-shell,
37 /usr/libexec/sudo/sesh, /usr/bin/cockpit-bridge, /usr/libexec/cockpit-
38 agent, /usr/libexec/git-core/git-shell, /var/www/cgi-bin/cgit,
39 /var/www/git/gitweb.cgi, /var/www/gitweb-caching/gitweb.cgi,
40 /var/www/cgi-bin/cgit, /var/www/git/gitweb.cgi, /var/www/gitweb-
41 caching/gitweb.cgi
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 git_script policy is very flexible allowing users to setup their
51 git_script processes in as secure a method as possible.
52
53 The following process types are defined for git_script:
54
55 git_script_t
56
57 Note: semanage permissive -a git_script_t can be used to make the
58 process type git_script_t permissive. SELinux does not deny access to
59 permissive process types, but the AVC (SELinux denials) messages are
60 still generated.
61
62
64 SELinux policy is customizable based on least access required.
65 git_script policy is extremely flexible and has several booleans that
66 allow you to manipulate the policy and run git_script with the tightest
67 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 determine whether Git CGI can search home directories,
126 you must turn on the git_cgi_enable_homedirs boolean. Disabled by
127 default.
128
129 setsebool -P git_cgi_enable_homedirs 1
130
131
132
133 If you want to determine whether Git CGI can access cifs file systems,
134 you must turn on the git_cgi_use_cifs boolean. Disabled by default.
135
136 setsebool -P git_cgi_use_cifs 1
137
138
139
140 If you want to determine whether Git CGI can access nfs file systems,
141 you must turn on the git_cgi_use_nfs boolean. Disabled by default.
142
143 setsebool -P git_cgi_use_nfs 1
144
145
146
147 If you want to determine whether Git system daemon can search home
148 directories, you must turn on the git_system_enable_homedirs boolean.
149 Disabled by default.
150
151 setsebool -P git_system_enable_homedirs 1
152
153
154
155 If you want to enable reading of urandom for all domains, you must turn
156 on the global_ssp boolean. Disabled by default.
157
158 setsebool -P global_ssp 1
159
160
161
162 If you want to allow httpd cgi support, you must turn on the
163 httpd_enable_cgi boolean. Disabled by default.
164
165 setsebool -P httpd_enable_cgi 1
166
167
168
169 If you want to allow confined applications to run with kerberos, you
170 must turn on the kerberos_enabled boolean. Enabled by default.
171
172 setsebool -P kerberos_enabled 1
173
174
175
176 If you want to allow system to run with NIS, you must turn on the
177 nis_enabled boolean. Disabled by default.
178
179 setsebool -P nis_enabled 1
180
181
182
183 If you want to allow confined applications to use nscd shared memory,
184 you must turn on the nscd_use_shm boolean. Disabled by default.
185
186 setsebool -P nscd_use_shm 1
187
188
189
190 If you want to support NFS home directories, you must turn on the
191 use_nfs_home_dirs boolean. Disabled by default.
192
193 setsebool -P use_nfs_home_dirs 1
194
195
196
197 If you want to support SAMBA home directories, you must turn on the
198 use_samba_home_dirs boolean. Disabled by default.
199
200 setsebool -P use_samba_home_dirs 1
201
202
203
205 The SELinux process type git_script_t can manage files labeled with the
206 following file types. The paths listed are the default paths for these
207 file types. Note the processes UID still need to have DAC permissions.
208
209 git_rw_content_t
210
211 /var/cache/cgit(/.*)?
212 /var/cache/gitweb-caching(/.*)?
213
214 git_script_tmp_t
215
216
217
219 SELinux requires files to have an extended attribute to define the file
220 type.
221
222 You can see the context of a file using the -Z option to ls
223
224 Policy governs the access confined processes have to these files.
225 SELinux git_script policy is very flexible allowing users to setup
226 their git_script processes in as secure a method as possible.
227
228 STANDARD FILE CONTEXT
229
230 SELinux defines the file context types for the git_script, if you
231 wanted to store files with these types in a diffent paths, you need to
232 execute the semanage command to sepecify alternate labeling and then
233 use restorecon to put the labels on disk.
234
235 semanage fcontext -a -t git_script_tmp_t '/srv/mygit_script_con‐
236 tent(/.*)?'
237 restorecon -R -v /srv/mygit_script_content
238
239 Note: SELinux often uses regular expressions to specify labels that
240 match multiple files.
241
242 The following file types are defined for git_script:
243
244
245
246 git_script_exec_t
247
248 - Set files with the git_script_exec_t type, if you want to transition
249 an executable to the git_script_t domain.
250
251
252 Paths:
253 /var/www/cgi-bin/cgit, /var/www/git/gitweb.cgi, /var/www/gitweb-
254 caching/gitweb.cgi
255
256
257 git_script_tmp_t
258
259 - Set files with the git_script_tmp_t type, if you want to store git
260 script temporary files in the /tmp directories.
261
262
263
264 Note: File context can be temporarily modified with the chcon command.
265 If you want to permanently change the file context you need to use the
266 semanage fcontext command. This will modify the SELinux labeling data‐
267 base. You will need to use restorecon to apply the labels.
268
269
271 semanage fcontext can also be used to manipulate default file context
272 mappings.
273
274 semanage permissive can also be used to manipulate whether or not a
275 process type is permissive.
276
277 semanage module can also be used to enable/disable/install/remove pol‐
278 icy modules.
279
280 semanage boolean can also be used to manipulate the booleans
281
282
283 system-config-selinux is a GUI tool available to customize SELinux pol‐
284 icy settings.
285
286
288 This manual page was auto-generated using sepolicy manpage .
289
290
292 selinux(8), git_script(8), semanage(8), restorecon(8), chcon(1), sepol‐
293 icy(8) , setsebool(8)
294
295
296
297git_script 19-04-25 git_script_selinux(8)