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 cluster administrative cluster domains memcheck-
68 amd64- to use executable memory, you must turn on the clus‐
69 ter_use_execmem boolean. Disabled by default.
70
71 setsebool -P cluster_use_execmem 1
72
73
74
75 If you want to allow all domains to execute in fips_mode, you must turn
76 on the fips_mode boolean. Enabled by default.
77
78 setsebool -P fips_mode 1
79
80
81
83 The SELinux process type haproxy_t can manage files labeled with the
84 following file types. The paths listed are the default paths for these
85 file types. Note the processes UID still need to have DAC permissions.
86
87 cluster_conf_t
88
89 /etc/cluster(/.*)?
90
91 cluster_log
92
93
94 cluster_var_lib_t
95
96 /var/lib/pcsd(/.*)?
97 /var/lib/cluster(/.*)?
98 /var/lib/openais(/.*)?
99 /var/lib/pengine(/.*)?
100 /var/lib/corosync(/.*)?
101 /usr/lib/heartbeat(/.*)?
102 /var/lib/heartbeat(/.*)?
103 /var/lib/pacemaker(/.*)?
104
105 cluster_var_run_t
106
107 /var/run/crm(/.*)?
108 /var/run/cman_.*
109 /var/run/rsctmp(/.*)?
110 /var/run/aisexec.*
111 /var/run/heartbeat(/.*)?
112 /var/run/corosync-qnetd(/.*)?
113 /var/run/corosync-qdevice(/.*)?
114 /var/run/corosync.pid
115 /var/run/cpglockd.pid
116 /var/run/rgmanager.pid
117 /var/run/cluster/rgmanager.sk
118
119 haproxy_tmpfs_t
120
121
122 haproxy_var_lib_t
123
124 /var/lib/haproxy(/.*)?
125
126 haproxy_var_run_t
127
128 /var/run/haproxy.stat.*
129 /var/run/haproxy.sock.*
130 /var/run/haproxy.pid
131
132 root_t
133
134 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
135 /
136 /initrd
137
138
140 SELinux requires files to have an extended attribute to define the file
141 type.
142
143 You can see the context of a file using the -Z option to ls
144
145 Policy governs the access confined processes have to these files.
146 SELinux haproxy policy is very flexible allowing users to setup their
147 haproxy processes in as secure a method as possible.
148
149 STANDARD FILE CONTEXT
150
151 SELinux defines the file context types for the haproxy, if you wanted
152 to store files with these types in a diffent paths, you need to execute
153 the semanage command to sepecify alternate labeling and then use
154 restorecon to put the labels on disk.
155
156 semanage fcontext -a -t haproxy_unit_file_t '/srv/myhaproxy_con‐
157 tent(/.*)?'
158 restorecon -R -v /srv/myhaproxy_content
159
160 Note: SELinux often uses regular expressions to specify labels that
161 match multiple files.
162
163 The following file types are defined for haproxy:
164
165
166
167 haproxy_exec_t
168
169 - Set files with the haproxy_exec_t type, if you want to transition an
170 executable to the haproxy_t domain.
171
172
173 Paths:
174 /usr/sbin/haproxy, /usr/sbin/haproxy-systemd-wrapper
175
176
177 haproxy_tmpfs_t
178
179 - Set files with the haproxy_tmpfs_t type, if you want to store haproxy
180 files on a tmpfs file system.
181
182
183
184 haproxy_unit_file_t
185
186 - Set files with the haproxy_unit_file_t type, if you want to treat the
187 files as haproxy unit content.
188
189
190
191 haproxy_var_lib_t
192
193 - Set files with the haproxy_var_lib_t type, if you want to store the
194 haproxy files under the /var/lib directory.
195
196
197
198 haproxy_var_log_t
199
200 - Set files with the haproxy_var_log_t type, if you want to treat the
201 data as haproxy var log data, usually stored under the /var/log direc‐
202 tory.
203
204
205
206 haproxy_var_run_t
207
208 - Set files with the haproxy_var_run_t type, if you want to store the
209 haproxy files under the /run or /var/run directory.
210
211
212 Paths:
213 /var/run/haproxy.stat.*, /var/run/haproxy.sock.*,
214 /var/run/haproxy.pid
215
216
217 Note: File context can be temporarily modified with the chcon command.
218 If you want to permanently change the file context you need to use the
219 semanage fcontext command. This will modify the SELinux labeling data‐
220 base. You will need to use restorecon to apply the labels.
221
222
224 semanage fcontext can also be used to manipulate default file context
225 mappings.
226
227 semanage permissive can also be used to manipulate whether or not a
228 process type is permissive.
229
230 semanage module can also be used to enable/disable/install/remove pol‐
231 icy modules.
232
233 semanage boolean can also be used to manipulate the booleans
234
235
236 system-config-selinux is a GUI tool available to customize SELinux pol‐
237 icy settings.
238
239
241 This manual page was auto-generated using sepolicy manpage .
242
243
245 selinux(8), haproxy(8), semanage(8), restorecon(8), chcon(1), sepol‐
246 icy(8), setsebool(8)
247
248
249
250haproxy 20-05-05 haproxy_selinux(8)