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 dontaudit all daemons scheduling requests (setsched,
60 sys_nice), you must turn on the daemons_dontaudit_scheduling boolean.
61 Enabled by default.
62
63 setsebool -P daemons_dontaudit_scheduling 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 system to run with NIS, you must turn on the
75 nis_enabled boolean. Disabled by default.
76
77 setsebool -P nis_enabled 1
78
79
80
82 SELinux defines port types to represent TCP and UDP ports.
83
84 You can see the types associated with a port by using the following
85 command:
86
87 semanage port -l
88
89
90 Policy governs the access confined processes have to these ports.
91 SELinux mongod policy is very flexible allowing users to setup their
92 mongod processes in as secure a method as possible.
93
94 The following port types are defined for mongod:
95
96
97 mongod_port_t
98
99
100
101 Default Defined Ports:
102 tcp 27017-27019,28017-28019
103
105 The SELinux process type mongod_t can manage files labeled with the
106 following file types. The paths listed are the default paths for these
107 file types. Note the processes UID still need to have DAC permissions.
108
109 cluster_conf_t
110
111 /etc/cluster(/.*)?
112
113 cluster_var_lib_t
114
115 /var/lib/pcsd(/.*)?
116 /var/lib/cluster(/.*)?
117 /var/lib/openais(/.*)?
118 /var/lib/pengine(/.*)?
119 /var/lib/corosync(/.*)?
120 /usr/lib/heartbeat(/.*)?
121 /var/lib/heartbeat(/.*)?
122 /var/lib/pacemaker(/.*)?
123
124 cluster_var_run_t
125
126 /var/run/crm(/.*)?
127 /var/run/cman_.*
128 /var/run/rsctmp(/.*)?
129 /var/run/aisexec.*
130 /var/run/heartbeat(/.*)?
131 /var/run/pcsd-ruby.socket
132 /var/run/corosync-qnetd(/.*)?
133 /var/run/corosync-qdevice(/.*)?
134 /var/run/corosync.pid
135 /var/run/cpglockd.pid
136 /var/run/rgmanager.pid
137 /var/run/cluster/rgmanager.sk
138
139 krb5_host_rcache_t
140
141 /var/tmp/krb5_0.rcache2
142 /var/cache/krb5rcache(/.*)?
143 /var/tmp/nfs_0
144 /var/tmp/DNS_25
145 /var/tmp/host_0
146 /var/tmp/imap_0
147 /var/tmp/HTTP_23
148 /var/tmp/HTTP_48
149 /var/tmp/ldap_55
150 /var/tmp/ldap_487
151 /var/tmp/ldapmap1_0
152
153 mongod_log_t
154
155 /var/log/mongo.*
156 /var/log/aeolus-conductor/dbomatic.log.*
157
158 mongod_tmp_t
159
160
161 mongod_var_lib_t
162
163 /var/lib/mongo.*
164
165 mongod_var_run_t
166
167 /var/run/mongo.*
168 /var/run/aeolus/dbomatic.pid
169
170 root_t
171
172 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
173 /
174 /initrd
175
176
178 SELinux requires files to have an extended attribute to define the file
179 type.
180
181 You can see the context of a file using the -Z option to ls
182
183 Policy governs the access confined processes have to these files.
184 SELinux mongod policy is very flexible allowing users to setup their
185 mongod processes in as secure a method as possible.
186
187 STANDARD FILE CONTEXT
188
189 SELinux defines the file context types for the mongod, if you wanted to
190 store files with these types in a different paths, you need to execute
191 the semanage command to specify alternate labeling and then use re‐
192 storecon to put the labels on disk.
193
194 semanage fcontext -a -t mongod_exec_t '/srv/mongod/content(/.*)?'
195 restorecon -R -v /srv/mymongod_content
196
197 Note: SELinux often uses regular expressions to specify labels that
198 match multiple files.
199
200 The following file types are defined for mongod:
201
202
203
204 mongod_exec_t
205
206 - Set files with the mongod_exec_t type, if you want to transition an
207 executable to the mongod_t domain.
208
209
210 Paths:
211 /usr/bin/mongod, /usr/bin/mongos, /usr/libexec/mongodb-scl-helper,
212 /usr/share/aeolus-conductor/dbomatic/dbomatic
213
214
215 mongod_initrc_exec_t
216
217 - Set files with the mongod_initrc_exec_t type, if you want to transi‐
218 tion an executable to the mongod_initrc_t domain.
219
220
221 Paths:
222 /etc/rc.d/init.d/mongod, /etc/rc.d/init.d/mongos
223
224
225 mongod_log_t
226
227 - Set files with the mongod_log_t type, if you want to treat the data
228 as mongod log data, usually stored under the /var/log directory.
229
230
231 Paths:
232 /var/log/mongo.*, /var/log/aeolus-conductor/dbomatic.log.*
233
234
235 mongod_tmp_t
236
237 - Set files with the mongod_tmp_t type, if you want to store mongod
238 temporary files in the /tmp directories.
239
240
241
242 mongod_unit_file_t
243
244 - Set files with the mongod_unit_file_t type, if you want to treat the
245 files as mongod unit content.
246
247
248 Paths:
249 /usr/lib/systemd/system/mongod.*, /usr/lib/systemd/system/mongos.*
250
251
252 mongod_var_lib_t
253
254 - Set files with the mongod_var_lib_t type, if you want to store the
255 mongod files under the /var/lib directory.
256
257
258
259 mongod_var_run_t
260
261 - Set files with the mongod_var_run_t type, if you want to store the
262 mongod files under the /run or /var/run directory.
263
264
265 Paths:
266 /var/run/mongo.*, /var/run/aeolus/dbomatic.pid
267
268
269 Note: File context can be temporarily modified with the chcon command.
270 If you want to permanently change the file context you need to use the
271 semanage fcontext command. This will modify the SELinux labeling data‐
272 base. You will need to use restorecon to apply the labels.
273
274
276 semanage fcontext can also be used to manipulate default file context
277 mappings.
278
279 semanage permissive can also be used to manipulate whether or not a
280 process type is permissive.
281
282 semanage module can also be used to enable/disable/install/remove pol‐
283 icy modules.
284
285 semanage port can also be used to manipulate the port definitions
286
287 semanage boolean can also be used to manipulate the booleans
288
289
290 system-config-selinux is a GUI tool available to customize SELinux pol‐
291 icy settings.
292
293
295 This manual page was auto-generated using sepolicy manpage .
296
297
299 selinux(8), mongod(8), semanage(8), restorecon(8), chcon(1), sepol‐
300 icy(8), setsebool(8)
301
302
303
304mongod 23-10-20 mongod_selinux(8)