1pdns_selinux(8) SELinux Policy pdns pdns_selinux(8)
2
3
4
6 pdns_selinux - Security Enhanced Linux Policy for the pdns processes
7
9 Security-Enhanced Linux secures the pdns processes via flexible manda‐
10 tory access control.
11
12 The pdns processes execute with the pdns_t SELinux type. You can check
13 if you have these processes running by executing the ps command with
14 the -Z qualifier.
15
16 For example:
17
18 ps -eZ | grep pdns_t
19
20
21
23 The pdns_t SELinux type can be entered via the pdns_exec_t file type.
24
25 The default entrypoint paths for the pdns_t domain are the following:
26
27 /usr/sbin/pdns_server
28
30 SELinux defines process types (domains) for each process running on the
31 system
32
33 You can see the context of a process using the -Z option to ps
34
35 Policy governs the access confined processes have to files. SELinux
36 pdns policy is very flexible allowing users to setup their pdns pro‐
37 cesses in as secure a method as possible.
38
39 The following process types are defined for pdns:
40
41 pdns_t, pdns_control_t
42
43 Note: semanage permissive -a pdns_t can be used to make the process
44 type pdns_t permissive. SELinux does not deny access to permissive
45 process types, but the AVC (SELinux denials) messages are still gener‐
46 ated.
47
48
50 SELinux policy is customizable based on least access required. pdns
51 policy is extremely flexible and has several booleans that allow you to
52 manipulate the policy and run pdns with the tightest access possible.
53
54
55
56 If you want to allow PowerDNS to connect to databases over the network,
57 you must turn on the pdns_can_network_connect_db boolean. Disabled by
58 default.
59
60 setsebool -P pdns_can_network_connect_db 1
61
62
63
64 If you want to allow users to resolve user passwd entries directly from
65 ldap rather then using a sssd server, you must turn on the authlo‐
66 gin_nsswitch_use_ldap boolean. Disabled by default.
67
68 setsebool -P authlogin_nsswitch_use_ldap 1
69
70
71
72 If you want to allow all domains to execute in fips_mode, you must turn
73 on the fips_mode boolean. Enabled by default.
74
75 setsebool -P fips_mode 1
76
77
78
79 If you want to allow confined applications to run with kerberos, you
80 must turn on the kerberos_enabled boolean. Enabled by default.
81
82 setsebool -P kerberos_enabled 1
83
84
85
86 If you want to allow system to run with NIS, you must turn on the
87 nis_enabled boolean. Disabled by default.
88
89 setsebool -P nis_enabled 1
90
91
92
93 If you want to allow confined applications to use nscd shared memory,
94 you must turn on the nscd_use_shm boolean. Enabled by default.
95
96 setsebool -P nscd_use_shm 1
97
98
99
101 The SELinux process type pdns_t can manage files labeled with the fol‐
102 lowing file types. The paths listed are the default paths for these
103 file types. Note the processes UID still need to have DAC permissions.
104
105 cluster_conf_t
106
107 /etc/cluster(/.*)?
108
109 cluster_var_lib_t
110
111 /var/lib/pcsd(/.*)?
112 /var/lib/cluster(/.*)?
113 /var/lib/openais(/.*)?
114 /var/lib/pengine(/.*)?
115 /var/lib/corosync(/.*)?
116 /usr/lib/heartbeat(/.*)?
117 /var/lib/heartbeat(/.*)?
118 /var/lib/pacemaker(/.*)?
119
120 cluster_var_run_t
121
122 /var/run/crm(/.*)?
123 /var/run/cman_.*
124 /var/run/rsctmp(/.*)?
125 /var/run/aisexec.*
126 /var/run/heartbeat(/.*)?
127 /var/run/corosync-qnetd(/.*)?
128 /var/run/corosync-qdevice(/.*)?
129 /var/run/corosync.pid
130 /var/run/cpglockd.pid
131 /var/run/rgmanager.pid
132 /var/run/cluster/rgmanager.sk
133
134 pdns_var_run_t
135
136 /var/run/pdns.pid
137 /var/run/pdns.controlsocket
138
139 root_t
140
141 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
142 /
143 /initrd
144
145
147 SELinux requires files to have an extended attribute to define the file
148 type.
149
150 You can see the context of a file using the -Z option to ls
151
152 Policy governs the access confined processes have to these files.
153 SELinux pdns policy is very flexible allowing users to setup their pdns
154 processes in as secure a method as possible.
155
156 STANDARD FILE CONTEXT
157
158 SELinux defines the file context types for the pdns, if you wanted to
159 store files with these types in a diffent paths, you need to execute
160 the semanage command to sepecify alternate labeling and then use
161 restorecon to put the labels on disk.
162
163 semanage fcontext -a -t pdns_var_run_t '/srv/mypdns_content(/.*)?'
164 restorecon -R -v /srv/mypdns_content
165
166 Note: SELinux often uses regular expressions to specify labels that
167 match multiple files.
168
169 The following file types are defined for pdns:
170
171
172
173 pdns_conf_t
174
175 - Set files with the pdns_conf_t type, if you want to treat the files
176 as pdns configuration data, usually stored under the /etc directory.
177
178
179
180 pdns_control_exec_t
181
182 - Set files with the pdns_control_exec_t type, if you want to transi‐
183 tion an executable to the pdns_control_t domain.
184
185
186
187 pdns_exec_t
188
189 - Set files with the pdns_exec_t type, if you want to transition an
190 executable to the pdns_t domain.
191
192
193
194 pdns_unit_file_t
195
196 - Set files with the pdns_unit_file_t type, if you want to treat the
197 files as pdns unit content.
198
199
200
201 pdns_var_run_t
202
203 - Set files with the pdns_var_run_t type, if you want to store the pdns
204 files under the /run or /var/run directory.
205
206
207 Paths:
208 /var/run/pdns.pid, /var/run/pdns.controlsocket
209
210
211 Note: File context can be temporarily modified with the chcon command.
212 If you want to permanently change the file context you need to use the
213 semanage fcontext command. This will modify the SELinux labeling data‐
214 base. You will need to use restorecon to apply the labels.
215
216
218 semanage fcontext can also be used to manipulate default file context
219 mappings.
220
221 semanage permissive can also be used to manipulate whether or not a
222 process type is permissive.
223
224 semanage module can also be used to enable/disable/install/remove pol‐
225 icy modules.
226
227 semanage boolean can also be used to manipulate the booleans
228
229
230 system-config-selinux is a GUI tool available to customize SELinux pol‐
231 icy settings.
232
233
235 This manual page was auto-generated using sepolicy manpage .
236
237
239 selinux(8), pdns(8), semanage(8), restorecon(8), chcon(1), sepolicy(8),
240 setsebool(8), pdns_control_selinux(8), pdns_control_selinux(8)
241
242
243
244pdns 19-10-08 pdns_selinux(8)