1mongod_selinux(8) SELinux Policy mongod mongod_selinux(8)
2
3
4
6 mongod_selinux - Security Enhanced Linux Policy for the mongod pro‐
7 cesses
8
10 Security-Enhanced Linux secures the mongod processes via flexible
11 mandatory access control.
12
13 The mongod processes execute with the mongod_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 mongod_t
20
21
22
24 The mongod_t SELinux type can be entered via the mongod_exec_t file
25 type.
26
27 The default entrypoint paths for the mongod_t domain are the following:
28
29 /usr/bin/mongod, /usr/bin/mongos, /usr/libexec/mongodb-scl-helper,
30 /usr/share/aeolus-conductor/dbomatic/dbomatic
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 mongod policy is very flexible allowing users to setup their mongod
40 processes in as secure a method as possible.
41
42 The following process types are defined for mongod:
43
44 mongod_t
45
46 Note: semanage permissive -a mongod_t can be used to make the process
47 type mongod_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. mongod
54 policy is extremely flexible and has several booleans that allow you to
55 manipulate the policy and run mongod with the tightest access possible.
56
57
58
59 If you want to allow users to resolve user passwd entries directly from
60 ldap rather then using a sssd server, you must turn on the authlo‐
61 gin_nsswitch_use_ldap boolean. Disabled by default.
62
63 setsebool -P authlogin_nsswitch_use_ldap 1
64
65
66
67 If you want to allow all domains to execute in fips_mode, you must turn
68 on the fips_mode boolean. Enabled by default.
69
70 setsebool -P fips_mode 1
71
72
73
74 If you want to allow confined applications to run with kerberos, you
75 must turn on the kerberos_enabled boolean. Enabled by default.
76
77 setsebool -P kerberos_enabled 1
78
79
80
81 If you want to allow system to run with NIS, you must turn on the
82 nis_enabled boolean. Disabled by default.
83
84 setsebool -P nis_enabled 1
85
86
87
88 If you want to allow confined applications to use nscd shared memory,
89 you must turn on the nscd_use_shm boolean. Enabled by default.
90
91 setsebool -P nscd_use_shm 1
92
93
94
96 SELinux defines port types to represent TCP and UDP ports.
97
98 You can see the types associated with a port by using the following
99 command:
100
101 semanage port -l
102
103
104 Policy governs the access confined processes have to these ports.
105 SELinux mongod policy is very flexible allowing users to setup their
106 mongod processes in as secure a method as possible.
107
108 The following port types are defined for mongod:
109
110
111 mongod_port_t
112
113
114
115 Default Defined Ports:
116 tcp 27017-27019,28017-28019
117
119 The SELinux process type mongod_t can manage files labeled with the
120 following file types. The paths listed are the default paths for these
121 file types. Note the processes UID still need to have DAC permissions.
122
123 cluster_conf_t
124
125 /etc/cluster(/.*)?
126
127 cluster_var_lib_t
128
129 /var/lib/pcsd(/.*)?
130 /var/lib/cluster(/.*)?
131 /var/lib/openais(/.*)?
132 /var/lib/pengine(/.*)?
133 /var/lib/corosync(/.*)?
134 /usr/lib/heartbeat(/.*)?
135 /var/lib/heartbeat(/.*)?
136 /var/lib/pacemaker(/.*)?
137
138 cluster_var_run_t
139
140 /var/run/crm(/.*)?
141 /var/run/cman_.*
142 /var/run/rsctmp(/.*)?
143 /var/run/aisexec.*
144 /var/run/heartbeat(/.*)?
145 /var/run/corosync-qnetd(/.*)?
146 /var/run/corosync-qdevice(/.*)?
147 /var/run/corosync.pid
148 /var/run/cpglockd.pid
149 /var/run/rgmanager.pid
150 /var/run/cluster/rgmanager.sk
151
152 mongod_log_t
153
154 /var/log/mongo.*
155 /var/log/aeolus-conductor/dbomatic.log.*
156
157 mongod_tmp_t
158
159
160 mongod_var_lib_t
161
162 /var/lib/mongo.*
163
164 mongod_var_run_t
165
166 /var/run/mongo.*
167 /var/run/aeolus/dbomatic.pid
168
169 root_t
170
171 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
172 /
173 /initrd
174
175
177 SELinux requires files to have an extended attribute to define the file
178 type.
179
180 You can see the context of a file using the -Z option to ls
181
182 Policy governs the access confined processes have to these files.
183 SELinux mongod policy is very flexible allowing users to setup their
184 mongod processes in as secure a method as possible.
185
186 STANDARD FILE CONTEXT
187
188 SELinux defines the file context types for the mongod, if you wanted to
189 store files with these types in a diffent paths, you need to execute
190 the semanage command to sepecify alternate labeling and then use
191 restorecon to put the labels on disk.
192
193 semanage fcontext -a -t mongod_tmp_t '/srv/mymongod_content(/.*)?'
194 restorecon -R -v /srv/mymongod_content
195
196 Note: SELinux often uses regular expressions to specify labels that
197 match multiple files.
198
199 The following file types are defined for mongod:
200
201
202
203 mongod_exec_t
204
205 - Set files with the mongod_exec_t type, if you want to transition an
206 executable to the mongod_t domain.
207
208
209 Paths:
210 /usr/bin/mongod, /usr/bin/mongos, /usr/libexec/mongodb-scl-helper,
211 /usr/share/aeolus-conductor/dbomatic/dbomatic
212
213
214 mongod_initrc_exec_t
215
216 - Set files with the mongod_initrc_exec_t type, if you want to transi‐
217 tion an executable to the mongod_initrc_t domain.
218
219
220 Paths:
221 /etc/rc.d/init.d/mongod, /etc/rc.d/init.d/mongos
222
223
224 mongod_log_t
225
226 - Set files with the mongod_log_t type, if you want to treat the data
227 as mongod log data, usually stored under the /var/log directory.
228
229
230 Paths:
231 /var/log/mongo.*, /var/log/aeolus-conductor/dbomatic.log.*
232
233
234 mongod_tmp_t
235
236 - Set files with the mongod_tmp_t type, if you want to store mongod
237 temporary files in the /tmp directories.
238
239
240
241 mongod_unit_file_t
242
243 - Set files with the mongod_unit_file_t type, if you want to treat the
244 files as mongod unit content.
245
246
247 Paths:
248 /usr/lib/systemd/system/mongod.*, /usr/lib/systemd/system/mongos.*
249
250
251 mongod_var_lib_t
252
253 - Set files with the mongod_var_lib_t type, if you want to store the
254 mongod files under the /var/lib directory.
255
256
257
258 mongod_var_run_t
259
260 - Set files with the mongod_var_run_t type, if you want to store the
261 mongod files under the /run or /var/run directory.
262
263
264 Paths:
265 /var/run/mongo.*, /var/run/aeolus/dbomatic.pid
266
267
268 Note: File context can be temporarily modified with the chcon command.
269 If you want to permanently change the file context you need to use the
270 semanage fcontext command. This will modify the SELinux labeling data‐
271 base. You will need to use restorecon to apply the labels.
272
273
275 semanage fcontext can also be used to manipulate default file context
276 mappings.
277
278 semanage permissive can also be used to manipulate whether or not a
279 process type is permissive.
280
281 semanage module can also be used to enable/disable/install/remove pol‐
282 icy modules.
283
284 semanage port can also be used to manipulate the port definitions
285
286 semanage boolean can also be used to manipulate the booleans
287
288
289 system-config-selinux is a GUI tool available to customize SELinux pol‐
290 icy settings.
291
292
294 This manual page was auto-generated using sepolicy manpage .
295
296
298 selinux(8), mongod(8), semanage(8), restorecon(8), chcon(1), sepol‐
299 icy(8), setsebool(8)
300
301
302
303mongod 19-10-08 mongod_selinux(8)