1zebra_selinux(8) SELinux Policy zebra zebra_selinux(8)
2
3
4
6 zebra_selinux - Security Enhanced Linux Policy for the zebra processes
7
9 Security-Enhanced Linux secures the zebra processes via flexible manda‐
10 tory access control.
11
12 The zebra processes execute with the zebra_t SELinux type. You can
13 check if you have these processes running by executing the ps command
14 with the -Z qualifier.
15
16 For example:
17
18 ps -eZ | grep zebra_t
19
20
21
23 The zebra_t SELinux type can be entered via the zebra_exec_t file type.
24
25 The default entrypoint paths for the zebra_t domain are the following:
26
27 /usr/sbin/rip.*, /usr/sbin/ospf.*, /usr/sbin/bgpd, /usr/sbin/pimd,
28 /usr/sbin/isisd, /usr/sbin/nhrpd, /usr/sbin/zebra, /usr/sbin/babeld
29
31 SELinux defines process types (domains) for each process running on the
32 system
33
34 You can see the context of a process using the -Z option to ps
35
36 Policy governs the access confined processes have to files. SELinux
37 zebra policy is very flexible allowing users to setup their zebra pro‐
38 cesses in as secure a method as possible.
39
40 The following process types are defined for zebra:
41
42 zebra_t
43
44 Note: semanage permissive -a zebra_t can be used to make the process
45 type zebra_t permissive. SELinux does not deny access to permissive
46 process types, but the AVC (SELinux denials) messages are still gener‐
47 ated.
48
49
51 SELinux policy is customizable based on least access required. zebra
52 policy is extremely flexible and has several booleans that allow you to
53 manipulate the policy and run zebra with the tightest access possible.
54
55
56
57 If you want to allow zebra daemon to write it configuration files, you
58 must turn on the zebra_write_config boolean. Disabled by default.
59
60 setsebool -P zebra_write_config 1
61
62
63
64 If you want to allow all domains to execute in fips_mode, you must turn
65 on the fips_mode boolean. Enabled by default.
66
67 setsebool -P fips_mode 1
68
69
70
72 SELinux defines port types to represent TCP and UDP ports.
73
74 You can see the types associated with a port by using the following
75 command:
76
77 semanage port -l
78
79
80 Policy governs the access confined processes have to these ports.
81 SELinux zebra policy is very flexible allowing users to setup their
82 zebra processes in as secure a method as possible.
83
84 The following port types are defined for zebra:
85
86
87 zebra_port_t
88
89
90
91 Default Defined Ports:
92 tcp 2606,2608-2609,2600-2604
93 udp 2606,2608-2609,2600-2604
94
96 The SELinux process type zebra_t can manage files labeled with the fol‐
97 lowing file types. The paths listed are the default paths for these
98 file types. Note the processes UID still need to have DAC permissions.
99
100 cluster_conf_t
101
102 /etc/cluster(/.*)?
103
104 cluster_var_lib_t
105
106 /var/lib/pcsd(/.*)?
107 /var/lib/cluster(/.*)?
108 /var/lib/openais(/.*)?
109 /var/lib/pengine(/.*)?
110 /var/lib/corosync(/.*)?
111 /usr/lib/heartbeat(/.*)?
112 /var/lib/heartbeat(/.*)?
113 /var/lib/pacemaker(/.*)?
114
115 cluster_var_run_t
116
117 /var/run/crm(/.*)?
118 /var/run/cman_.*
119 /var/run/rsctmp(/.*)?
120 /var/run/aisexec.*
121 /var/run/heartbeat(/.*)?
122 /var/run/corosync-qnetd(/.*)?
123 /var/run/corosync-qdevice(/.*)?
124 /var/run/corosync.pid
125 /var/run/cpglockd.pid
126 /var/run/rgmanager.pid
127 /var/run/cluster/rgmanager.sk
128
129 root_t
130
131 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
132 /
133 /initrd
134
135 zebra_log_t
136
137 /var/log/zebra(/.*)?
138 /var/log/quagga(/.*)?
139
140 zebra_var_run_t
141
142 /var/run/quagga(/.*)?
143 /var/run/.zebra
144 /var/run/.zserv
145
146
148 SELinux requires files to have an extended attribute to define the file
149 type.
150
151 You can see the context of a file using the -Z option to ls
152
153 Policy governs the access confined processes have to these files.
154 SELinux zebra policy is very flexible allowing users to setup their
155 zebra processes in as secure a method as possible.
156
157 STANDARD FILE CONTEXT
158
159 SELinux defines the file context types for the zebra, if you wanted to
160 store files with these types in a diffent paths, you need to execute
161 the semanage command to sepecify alternate labeling and then use
162 restorecon to put the labels on disk.
163
164 semanage fcontext -a -t zebra_var_run_t '/srv/myzebra_content(/.*)?'
165 restorecon -R -v /srv/myzebra_content
166
167 Note: SELinux often uses regular expressions to specify labels that
168 match multiple files.
169
170 The following file types are defined for zebra:
171
172
173
174 zebra_conf_t
175
176 - Set files with the zebra_conf_t type, if you want to treat the files
177 as zebra configuration data, usually stored under the /etc directory.
178
179
180 Paths:
181 /etc/zebra(/.*)?, /etc/quagga(/.*)?
182
183
184 zebra_exec_t
185
186 - Set files with the zebra_exec_t type, if you want to transition an
187 executable to the zebra_t domain.
188
189
190 Paths:
191 /usr/sbin/rip.*, /usr/sbin/ospf.*, /usr/sbin/bgpd, /usr/sbin/pimd,
192 /usr/sbin/isisd, /usr/sbin/nhrpd, /usr/sbin/zebra,
193 /usr/sbin/babeld
194
195
196 zebra_initrc_exec_t
197
198 - Set files with the zebra_initrc_exec_t type, if you want to transi‐
199 tion an executable to the zebra_initrc_t domain.
200
201
202 Paths:
203 /etc/rc.d/init.d/bgpd, /etc/rc.d/init.d/ripd,
204 /etc/rc.d/init.d/isisd, /etc/rc.d/init.d/ospfd,
205 /etc/rc.d/init.d/zebra, /etc/rc.d/init.d/babeld,
206 /etc/rc.d/init.d/ospf6d, /etc/rc.d/init.d/ripngd
207
208
209 zebra_log_t
210
211 - Set files with the zebra_log_t type, if you want to treat the data as
212 zebra log data, usually stored under the /var/log directory.
213
214
215 Paths:
216 /var/log/zebra(/.*)?, /var/log/quagga(/.*)?
217
218
219 zebra_tmp_t
220
221 - Set files with the zebra_tmp_t type, if you want to store zebra tem‐
222 porary files in the /tmp directories.
223
224
225
226 zebra_unit_file_t
227
228 - Set files with the zebra_unit_file_t type, if you want to treat the
229 files as zebra unit content.
230
231
232 Paths:
233 /usr/lib/systemd/system/bgpd.*, /usr/lib/systemd/system/ripd.*,
234 /usr/lib/systemd/system/isisd.*, /usr/lib/systemd/system/ospfd.*,
235 /usr/lib/systemd/system/zebra.*, /usr/lib/systemd/system/babeld.*,
236 /usr/lib/systemd/system/ospf6d.*, /usr/lib/systemd/system/ripngd.*
237
238
239 zebra_var_run_t
240
241 - Set files with the zebra_var_run_t type, if you want to store the
242 zebra files under the /run or /var/run directory.
243
244
245 Paths:
246 /var/run/quagga(/.*)?, /var/run/.zebra, /var/run/.zserv
247
248
249 Note: File context can be temporarily modified with the chcon command.
250 If you want to permanently change the file context you need to use the
251 semanage fcontext command. This will modify the SELinux labeling data‐
252 base. You will need to use restorecon to apply the labels.
253
254
256 semanage fcontext can also be used to manipulate default file context
257 mappings.
258
259 semanage permissive can also be used to manipulate whether or not a
260 process type is permissive.
261
262 semanage module can also be used to enable/disable/install/remove pol‐
263 icy modules.
264
265 semanage port can also be used to manipulate the port definitions
266
267 semanage boolean can also be used to manipulate the booleans
268
269
270 system-config-selinux is a GUI tool available to customize SELinux pol‐
271 icy settings.
272
273
275 This manual page was auto-generated using sepolicy manpage .
276
277
279 selinux(8), zebra(8), semanage(8), restorecon(8), chcon(1), sepol‐
280 icy(8), setsebool(8)
281
282
283
284zebra 21-03-26 zebra_selinux(8)