1haproxy_selinux(8) SELinux Policy haproxy haproxy_selinux(8)
2
3
4
6 haproxy_selinux - Security Enhanced Linux Policy for the haproxy pro‐
7 cesses
8
10 Security-Enhanced Linux secures the haproxy processes via flexible
11 mandatory access control.
12
13 The haproxy processes execute with the haproxy_t SELinux type. You can
14 check if you have these processes running by executing the ps command
15 with the -Z qualifier.
16
17 For example:
18
19 ps -eZ | grep haproxy_t
20
21
22
24 The haproxy_t SELinux type can be entered via the haproxy_exec_t file
25 type.
26
27 The default entrypoint paths for the haproxy_t domain are the follow‐
28 ing:
29
30 /usr/sbin/haproxy, /usr/sbin/haproxy-systemd-wrapper
31
33 SELinux defines process types (domains) for each process running on the
34 system
35
36 You can see the context of a process using the -Z option to ps
37
38 Policy governs the access confined processes have to files. SELinux
39 haproxy policy is very flexible allowing users to setup their haproxy
40 processes in as secure a method as possible.
41
42 The following process types are defined for haproxy:
43
44 haproxy_t
45
46 Note: semanage permissive -a haproxy_t can be used to make the process
47 type haproxy_t permissive. SELinux does not deny access to permissive
48 process types, but the AVC (SELinux denials) messages are still gener‐
49 ated.
50
51
53 SELinux policy is customizable based on least access required. haproxy
54 policy is extremely flexible and has several booleans that allow you to
55 manipulate the policy and run haproxy with the tightest access possi‐
56 ble.
57
58
59
60 If you want to determine whether haproxy can connect to all TCP ports,
61 you must turn on the haproxy_connect_any boolean. Disabled by default.
62
63 setsebool -P haproxy_connect_any 1
64
65
66
67 If you want to allow users to resolve user passwd entries directly from
68 ldap rather then using a sssd server, you must turn on the authlo‐
69 gin_nsswitch_use_ldap boolean. Disabled by default.
70
71 setsebool -P authlogin_nsswitch_use_ldap 1
72
73
74
75 If you want to allow cluster administrative cluster domains memcheck-
76 amd64- to use executable memory, you must turn on the clus‐
77 ter_use_execmem boolean. Disabled by default.
78
79 setsebool -P cluster_use_execmem 1
80
81
82
83 If you want to allow all domains to execute in fips_mode, you must turn
84 on the fips_mode boolean. Enabled by default.
85
86 setsebool -P fips_mode 1
87
88
89
90 If you want to allow confined applications to run with kerberos, you
91 must turn on the kerberos_enabled boolean. Enabled by default.
92
93 setsebool -P kerberos_enabled 1
94
95
96
97 If you want to allow system to run with NIS, you must turn on the
98 nis_enabled boolean. Disabled by default.
99
100 setsebool -P nis_enabled 1
101
102
103
104 If you want to allow confined applications to use nscd shared memory,
105 you must turn on the nscd_use_shm boolean. Enabled by default.
106
107 setsebool -P nscd_use_shm 1
108
109
110
112 The SELinux process type haproxy_t can manage files labeled with the
113 following file types. The paths listed are the default paths for these
114 file types. Note the processes UID still need to have DAC permissions.
115
116 cluster_conf_t
117
118 /etc/cluster(/.*)?
119
120 cluster_log
121
122
123 cluster_var_lib_t
124
125 /var/lib/pcsd(/.*)?
126 /var/lib/cluster(/.*)?
127 /var/lib/openais(/.*)?
128 /var/lib/pengine(/.*)?
129 /var/lib/corosync(/.*)?
130 /usr/lib/heartbeat(/.*)?
131 /var/lib/heartbeat(/.*)?
132 /var/lib/pacemaker(/.*)?
133
134 cluster_var_run_t
135
136 /var/run/crm(/.*)?
137 /var/run/cman_.*
138 /var/run/rsctmp(/.*)?
139 /var/run/aisexec.*
140 /var/run/heartbeat(/.*)?
141 /var/run/corosync-qnetd(/.*)?
142 /var/run/corosync-qdevice(/.*)?
143 /var/run/corosync.pid
144 /var/run/cpglockd.pid
145 /var/run/rgmanager.pid
146 /var/run/cluster/rgmanager.sk
147
148 haproxy_tmpfs_t
149
150
151 haproxy_var_lib_t
152
153 /var/lib/haproxy(/.*)?
154
155 haproxy_var_run_t
156
157 /var/run/haproxy.stat.*
158 /var/run/haproxy.sock.*
159 /var/run/haproxy.pid
160
161 root_t
162
163 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
164 /
165 /initrd
166
167
169 SELinux requires files to have an extended attribute to define the file
170 type.
171
172 You can see the context of a file using the -Z option to ls
173
174 Policy governs the access confined processes have to these files.
175 SELinux haproxy policy is very flexible allowing users to setup their
176 haproxy processes in as secure a method as possible.
177
178 STANDARD FILE CONTEXT
179
180 SELinux defines the file context types for the haproxy, if you wanted
181 to store files with these types in a diffent paths, you need to execute
182 the semanage command to sepecify alternate labeling and then use
183 restorecon to put the labels on disk.
184
185 semanage fcontext -a -t haproxy_unit_file_t '/srv/myhaproxy_con‐
186 tent(/.*)?'
187 restorecon -R -v /srv/myhaproxy_content
188
189 Note: SELinux often uses regular expressions to specify labels that
190 match multiple files.
191
192 The following file types are defined for haproxy:
193
194
195
196 haproxy_exec_t
197
198 - Set files with the haproxy_exec_t type, if you want to transition an
199 executable to the haproxy_t domain.
200
201
202 Paths:
203 /usr/sbin/haproxy, /usr/sbin/haproxy-systemd-wrapper
204
205
206 haproxy_tmpfs_t
207
208 - Set files with the haproxy_tmpfs_t type, if you want to store haproxy
209 files on a tmpfs file system.
210
211
212
213 haproxy_unit_file_t
214
215 - Set files with the haproxy_unit_file_t type, if you want to treat the
216 files as haproxy unit content.
217
218
219
220 haproxy_var_lib_t
221
222 - Set files with the haproxy_var_lib_t type, if you want to store the
223 haproxy files under the /var/lib directory.
224
225
226
227 haproxy_var_log_t
228
229 - Set files with the haproxy_var_log_t type, if you want to treat the
230 data as haproxy var log data, usually stored under the /var/log direc‐
231 tory.
232
233
234
235 haproxy_var_run_t
236
237 - Set files with the haproxy_var_run_t type, if you want to store the
238 haproxy files under the /run or /var/run directory.
239
240
241 Paths:
242 /var/run/haproxy.stat.*, /var/run/haproxy.sock.*,
243 /var/run/haproxy.pid
244
245
246 Note: File context can be temporarily modified with the chcon command.
247 If you want to permanently change the file context you need to use the
248 semanage fcontext command. This will modify the SELinux labeling data‐
249 base. You will need to use restorecon to apply the labels.
250
251
253 semanage fcontext can also be used to manipulate default file context
254 mappings.
255
256 semanage permissive can also be used to manipulate whether or not a
257 process type is permissive.
258
259 semanage module can also be used to enable/disable/install/remove pol‐
260 icy modules.
261
262 semanage boolean can also be used to manipulate the booleans
263
264
265 system-config-selinux is a GUI tool available to customize SELinux pol‐
266 icy settings.
267
268
270 This manual page was auto-generated using sepolicy manpage .
271
272
274 selinux(8), haproxy(8), semanage(8), restorecon(8), chcon(1), sepol‐
275 icy(8), setsebool(8)
276
277
278
279haproxy 19-10-08 haproxy_selinux(8)