1swift_selinux(8) SELinux Policy swift swift_selinux(8)
2
3
4
6 swift_selinux - Security Enhanced Linux Policy for the swift processes
7
9 Security-Enhanced Linux secures the swift processes via flexible manda‐
10 tory access control.
11
12 The swift processes execute with the swift_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 swift_t
19
20
21
23 The swift_t SELinux type can be entered via the swift_exec_t file type.
24
25 The default entrypoint paths for the swift_t domain are the following:
26
27 /usr/bin/swift-object-info, /usr/bin/swift-proxy-server,
28 /usr/bin/swift-object-server, /usr/bin/swift-account-reaper,
29 /usr/bin/swift-account-server, /usr/bin/swift-container-sync,
30 /usr/bin/swift-object-auditor, /usr/bin/swift-object-expirer,
31 /usr/bin/swift-object-updater, /usr/bin/swift-account-auditor,
32 /usr/bin/swift-container-server, /usr/bin/swift-container-auditor,
33 /usr/bin/swift-container-updater, /usr/bin/swift-object-replicator,
34 /usr/bin/swift-account-replicator, /usr/bin/swift-container-reconciler,
35 /usr/bin/swift-container-replicator
36
38 SELinux defines process types (domains) for each process running on the
39 system
40
41 You can see the context of a process using the -Z option to ps
42
43 Policy governs the access confined processes have to files. SELinux
44 swift policy is very flexible allowing users to setup their swift pro‐
45 cesses in as secure a method as possible.
46
47 The following process types are defined for swift:
48
49 swift_t
50
51 Note: semanage permissive -a swift_t can be used to make the process
52 type swift_t permissive. SELinux does not deny access to permissive
53 process types, but the AVC (SELinux denials) messages are still gener‐
54 ated.
55
56
58 SELinux policy is customizable based on least access required. swift
59 policy is extremely flexible and has several booleans that allow you to
60 manipulate the policy and run swift with the tightest access possible.
61
62
63
64 If you want to determine whether swift can connect to all TCP ports,
65 you must turn on the swift_can_network boolean. Disabled by default.
66
67 setsebool -P swift_can_network 1
68
69
70
71 If you want to allow all domains to execute in fips_mode, you must turn
72 on the fips_mode boolean. Enabled by default.
73
74 setsebool -P fips_mode 1
75
76
77
79 SELinux defines port types to represent TCP and UDP ports.
80
81 You can see the types associated with a port by using the following
82 command:
83
84 semanage port -l
85
86
87 Policy governs the access confined processes have to these ports.
88 SELinux swift policy is very flexible allowing users to setup their
89 swift processes in as secure a method as possible.
90
91 The following port types are defined for swift:
92
93
94 swift_port_t
95
96
97
98 Default Defined Ports:
99 tcp 6200-6203
100
102 The SELinux process type swift_t can manage files labeled with the fol‐
103 lowing file types. The paths listed are the default paths for these
104 file types. Note the processes UID still need to have DAC permissions.
105
106 cluster_conf_t
107
108 /etc/cluster(/.*)?
109
110 cluster_var_lib_t
111
112 /var/lib/pcsd(/.*)?
113 /var/lib/cluster(/.*)?
114 /var/lib/openais(/.*)?
115 /var/lib/pengine(/.*)?
116 /var/lib/corosync(/.*)?
117 /usr/lib/heartbeat(/.*)?
118 /var/lib/heartbeat(/.*)?
119 /var/lib/pacemaker(/.*)?
120
121 cluster_var_run_t
122
123 /var/run/crm(/.*)?
124 /var/run/cman_.*
125 /var/run/rsctmp(/.*)?
126 /var/run/aisexec.*
127 /var/run/heartbeat(/.*)?
128 /var/run/pcsd-ruby.socket
129 /var/run/corosync-qnetd(/.*)?
130 /var/run/corosync-qdevice(/.*)?
131 /var/run/corosync.pid
132 /var/run/cpglockd.pid
133 /var/run/rgmanager.pid
134 /var/run/cluster/rgmanager.sk
135
136 krb5_host_rcache_t
137
138 /var/tmp/krb5_0.rcache2
139 /var/cache/krb5rcache(/.*)?
140 /var/tmp/nfs_0
141 /var/tmp/DNS_25
142 /var/tmp/host_0
143 /var/tmp/imap_0
144 /var/tmp/HTTP_23
145 /var/tmp/HTTP_48
146 /var/tmp/ldap_55
147 /var/tmp/ldap_487
148 /var/tmp/ldapmap1_0
149
150 root_t
151
152 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
153 /
154 /initrd
155
156 swift_data_t
157
158 /srv/node(/.*)?
159 /var/lib/swift(/.*)?
160 /srv/loopback-device(/.*)?
161
162 swift_lock_t
163
164 /var/lock/swift.*
165
166 swift_tmp_t
167
168
169 swift_tmpfs_t
170
171
172 swift_var_cache_t
173
174 /var/cache/swift(/.*)?
175
176 swift_var_run_t
177
178 /var/run/swift(/.*)?
179
180
182 SELinux requires files to have an extended attribute to define the file
183 type.
184
185 You can see the context of a file using the -Z option to ls
186
187 Policy governs the access confined processes have to these files.
188 SELinux swift policy is very flexible allowing users to setup their
189 swift processes in as secure a method as possible.
190
191 STANDARD FILE CONTEXT
192
193 SELinux defines the file context types for the swift, if you wanted to
194 store files with these types in a diffent paths, you need to execute
195 the semanage command to specify alternate labeling and then use re‐
196 storecon to put the labels on disk.
197
198 semanage fcontext -a -t swift_data_t '/srv/myswift_content(/.*)?'
199 restorecon -R -v /srv/myswift_content
200
201 Note: SELinux often uses regular expressions to specify labels that
202 match multiple files.
203
204 The following file types are defined for swift:
205
206
207
208 swift_data_t
209
210 - Set files with the swift_data_t type, if you want to treat the files
211 as swift content.
212
213
214 Paths:
215 /srv/node(/.*)?, /var/lib/swift(/.*)?, /srv/loopback-device(/.*)?
216
217
218 swift_exec_t
219
220 - Set files with the swift_exec_t type, if you want to transition an
221 executable to the swift_t domain.
222
223
224 Paths:
225 /usr/bin/swift-object-info, /usr/bin/swift-proxy-server,
226 /usr/bin/swift-object-server, /usr/bin/swift-account-reaper,
227 /usr/bin/swift-account-server, /usr/bin/swift-container-sync,
228 /usr/bin/swift-object-auditor, /usr/bin/swift-object-expirer,
229 /usr/bin/swift-object-updater, /usr/bin/swift-account-auditor,
230 /usr/bin/swift-container-server, /usr/bin/swift-container-auditor,
231 /usr/bin/swift-container-updater, /usr/bin/swift-object-replica‐
232 tor, /usr/bin/swift-account-replicator, /usr/bin/swift-container-
233 reconciler, /usr/bin/swift-container-replicator
234
235
236 swift_lock_t
237
238 - Set files with the swift_lock_t type, if you want to treat the files
239 as swift lock data, stored under the /var/lock directory
240
241
242
243 swift_tmp_t
244
245 - Set files with the swift_tmp_t type, if you want to store swift tem‐
246 porary files in the /tmp directories.
247
248
249
250 swift_tmpfs_t
251
252 - Set files with the swift_tmpfs_t type, if you want to store swift
253 files on a tmpfs file system.
254
255
256
257 swift_unit_file_t
258
259 - Set files with the swift_unit_file_t type, if you want to treat the
260 files as swift unit content.
261
262
263
264 swift_var_cache_t
265
266 - Set files with the swift_var_cache_t type, if you want to store the
267 files under the /var/cache directory.
268
269
270
271 swift_var_run_t
272
273 - Set files with the swift_var_run_t type, if you want to store the
274 swift files under the /run or /var/run directory.
275
276
277
278 Note: File context can be temporarily modified with the chcon command.
279 If you want to permanently change the file context you need to use the
280 semanage fcontext command. This will modify the SELinux labeling data‐
281 base. You will need to use restorecon to apply the labels.
282
283
285 semanage fcontext can also be used to manipulate default file context
286 mappings.
287
288 semanage permissive can also be used to manipulate whether or not a
289 process type is permissive.
290
291 semanage module can also be used to enable/disable/install/remove pol‐
292 icy modules.
293
294 semanage port can also be used to manipulate the port definitions
295
296 semanage boolean can also be used to manipulate the booleans
297
298
299 system-config-selinux is a GUI tool available to customize SELinux pol‐
300 icy settings.
301
302
304 This manual page was auto-generated using sepolicy manpage .
305
306
308 selinux(8), swift(8), semanage(8), restorecon(8), chcon(1), sepol‐
309 icy(8), setsebool(8)
310
311
312
313swift 23-02-03 swift_selinux(8)