1swift_selinux(8)             SELinux Policy swift             swift_selinux(8)
2
3
4

NAME

6       swift_selinux - Security Enhanced Linux Policy for the swift processes
7

DESCRIPTION

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

ENTRYPOINTS

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

PROCESS TYPES

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

BOOLEANS

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

PORT TYPES

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

MANAGED FILES

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

FILE CONTEXTS

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

COMMANDS

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

AUTHOR

304       This manual page was auto-generated using sepolicy manpage .
305
306

SEE ALSO

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)
Impressum