1tor_selinux(8) SELinux Policy tor tor_selinux(8)
2
3
4
6 tor_selinux - Security Enhanced Linux Policy for the tor processes
7
9 Security-Enhanced Linux secures the tor processes via flexible manda‐
10 tory access control.
11
12 The tor processes execute with the tor_t SELinux type. You can check if
13 you have these processes running by executing the ps command with the
14 -Z qualifier.
15
16 For example:
17
18 ps -eZ | grep tor_t
19
20
21
23 The tor_t SELinux type can be entered via the tor_exec_t file type.
24
25 The default entrypoint paths for the tor_t domain are the following:
26
27 /usr/bin/tor, /usr/sbin/tor
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 tor policy is very flexible allowing users to setup their tor processes
37 in as secure a method as possible.
38
39 The following process types are defined for tor:
40
41 tor_t
42
43 Note: semanage permissive -a tor_t can be used to make the process type
44 tor_t permissive. SELinux does not deny access to permissive process
45 types, but the AVC (SELinux denials) messages are still generated.
46
47
49 SELinux policy is customizable based on least access required. tor
50 policy is extremely flexible and has several booleans that allow you to
51 manipulate the policy and run tor with the tightest access possible.
52
53
54
55 If you want to determine whether tor can bind tcp sockets to all unre‐
56 served ports, you must turn on the tor_bind_all_unreserved_ports bool‐
57 ean. Disabled by default.
58
59 setsebool -P tor_bind_all_unreserved_ports 1
60
61
62
63 If you want to allow tor to act as a relay, you must turn on the
64 tor_can_network_relay boolean. Disabled by default.
65
66 setsebool -P tor_can_network_relay 1
67
68
69
70 If you want to allow all domains to execute in fips_mode, you must turn
71 on the fips_mode boolean. Enabled by default.
72
73 setsebool -P fips_mode 1
74
75
76
78 SELinux defines port types to represent TCP and UDP ports.
79
80 You can see the types associated with a port by using the following
81 command:
82
83 semanage port -l
84
85
86 Policy governs the access confined processes have to these ports.
87 SELinux tor policy is very flexible allowing users to setup their tor
88 processes in as secure a method as possible.
89
90 The following port types are defined for tor:
91
92
93 tor_port_t
94
95
96
97 Default Defined Ports:
98 tcp 6969,9001,9030,9050,9051,9150
99
101 The SELinux process type tor_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 root_t
135
136 /sysroot/ostree/deploy/.*-atomic/deploy(/.*)?
137 /
138 /initrd
139
140 tor_var_lib_t
141
142 /var/lib/tor(/.*)?
143 /var/lib/tor-data(/.*)?
144
145 tor_var_run_t
146
147 /var/run/tor(/.*)?
148
149
151 SELinux requires files to have an extended attribute to define the file
152 type.
153
154 You can see the context of a file using the -Z option to ls
155
156 Policy governs the access confined processes have to these files.
157 SELinux tor policy is very flexible allowing users to setup their tor
158 processes in as secure a method as possible.
159
160 EQUIVALENCE DIRECTORIES
161
162
163 tor policy stores data with multiple different file context types under
164 the /var/lib/tor directory. If you would like to store the data in a
165 different directory you can use the semanage command to create an
166 equivalence mapping. If you wanted to store this data under the /srv
167 directory you would execute the following command:
168
169 semanage fcontext -a -e /var/lib/tor /srv/tor
170 restorecon -R -v /srv/tor
171
172 STANDARD FILE CONTEXT
173
174 SELinux defines the file context types for the tor, if you wanted to
175 store files with these types in a diffent paths, you need to execute
176 the semanage command to sepecify alternate labeling and then use
177 restorecon to put the labels on disk.
178
179 semanage fcontext -a -t tor_unit_file_t '/srv/mytor_content(/.*)?'
180 restorecon -R -v /srv/mytor_content
181
182 Note: SELinux often uses regular expressions to specify labels that
183 match multiple files.
184
185 The following file types are defined for tor:
186
187
188
189 tor_etc_t
190
191 - Set files with the tor_etc_t type, if you want to store tor files in
192 the /etc directories.
193
194
195
196 tor_exec_t
197
198 - Set files with the tor_exec_t type, if you want to transition an exe‐
199 cutable to the tor_t domain.
200
201
202 Paths:
203 /usr/bin/tor, /usr/sbin/tor
204
205
206 tor_initrc_exec_t
207
208 - Set files with the tor_initrc_exec_t type, if you want to transition
209 an executable to the tor_initrc_t domain.
210
211
212
213 tor_unit_file_t
214
215 - Set files with the tor_unit_file_t type, if you want to treat the
216 files as tor unit content.
217
218
219
220 tor_var_lib_t
221
222 - Set files with the tor_var_lib_t type, if you want to store the tor
223 files under the /var/lib directory.
224
225
226 Paths:
227 /var/lib/tor(/.*)?, /var/lib/tor-data(/.*)?
228
229
230 tor_var_log_t
231
232 - Set files with the tor_var_log_t type, if you want to treat the data
233 as tor var log data, usually stored under the /var/log directory.
234
235
236
237 tor_var_run_t
238
239 - Set files with the tor_var_run_t type, if you want to store the tor
240 files under the /run or /var/run directory.
241
242
243
244 Note: File context can be temporarily modified with the chcon command.
245 If you want to permanently change the file context you need to use the
246 semanage fcontext command. This will modify the SELinux labeling data‐
247 base. You will need to use restorecon to apply the labels.
248
249
251 semanage fcontext can also be used to manipulate default file context
252 mappings.
253
254 semanage permissive can also be used to manipulate whether or not a
255 process type is permissive.
256
257 semanage module can also be used to enable/disable/install/remove pol‐
258 icy modules.
259
260 semanage port can also be used to manipulate the port definitions
261
262 semanage boolean can also be used to manipulate the booleans
263
264
265 system-config-selinux is a GUI tool available to customize SELinux pol‐
266 icy settings.
267
268
270 This manual page was auto-generated using sepolicy manpage .
271
272
274 selinux(8), tor(8), semanage(8), restorecon(8), chcon(1), sepolicy(8),
275 setsebool(8)
276
277
278
279tor 20-05-05 tor_selinux(8)