]> git.ipfire.org Git - people/stevee/selinux-policy.git/blob - policy/modules/services/ricci.te
trunk: bump module versions for release.
[people/stevee/selinux-policy.git] / policy / modules / services / ricci.te
1
2 policy_module(ricci, 1.5.0)
3
4 ########################################
5 #
6 # Declarations
7 #
8
9 type ricci_t;
10 type ricci_exec_t;
11 domain_type(ricci_t)
12 init_daemon_domain(ricci_t, ricci_exec_t)
13
14 # tmp files
15 type ricci_tmp_t;
16 files_tmp_file(ricci_tmp_t)
17
18 # var/lib files
19 type ricci_var_lib_t;
20 files_type(ricci_var_lib_t)
21
22 # log files
23 type ricci_var_log_t;
24 logging_log_file(ricci_var_log_t)
25
26 # pid files
27 type ricci_var_run_t;
28 files_pid_file(ricci_var_run_t)
29
30 type ricci_modcluster_t;
31 type ricci_modcluster_exec_t;
32 domain_type(ricci_modcluster_t)
33 domain_entry_file(ricci_modcluster_t, ricci_modcluster_exec_t)
34 role system_r types ricci_modcluster_t;
35
36 # var/lib files
37 type ricci_modcluster_var_lib_t;
38 files_type(ricci_modcluster_var_lib_t)
39
40 # log files
41 type ricci_modcluster_var_log_t;
42 logging_log_file(ricci_modcluster_var_log_t)
43
44 # pid files
45 type ricci_modcluster_var_run_t;
46 files_pid_file(ricci_modcluster_var_run_t)
47
48 type ricci_modclusterd_t;
49 type ricci_modclusterd_exec_t;
50 domain_type(ricci_modclusterd_t)
51 init_daemon_domain(ricci_modclusterd_t, ricci_modclusterd_exec_t)
52
53 type ricci_modlog_t;
54 type ricci_modlog_exec_t;
55 domain_type(ricci_modlog_t)
56 domain_entry_file(ricci_modlog_t, ricci_modlog_exec_t)
57 role system_r types ricci_modlog_t;
58
59 type ricci_modrpm_t;
60 type ricci_modrpm_exec_t;
61 domain_type(ricci_modrpm_t)
62 domain_entry_file(ricci_modrpm_t, ricci_modrpm_exec_t)
63 role system_r types ricci_modrpm_t;
64
65 type ricci_modservice_t;
66 type ricci_modservice_exec_t;
67 domain_type(ricci_modservice_t)
68 domain_entry_file(ricci_modservice_t, ricci_modservice_exec_t)
69 role system_r types ricci_modservice_t;
70
71 type ricci_modstorage_t;
72 type ricci_modstorage_exec_t;
73 domain_type(ricci_modstorage_t)
74 domain_entry_file(ricci_modstorage_t, ricci_modstorage_exec_t)
75 role system_r types ricci_modstorage_t;
76
77 type ricci_modstorage_lock_t;
78 files_lock_file(ricci_modstorage_lock_t)
79
80 ########################################
81 #
82 # ricci local policy
83 #
84
85 allow ricci_t self:capability { setuid sys_nice sys_boot };
86 allow ricci_t self:process setsched;
87 allow ricci_t self:fifo_file rw_fifo_file_perms;
88 allow ricci_t self:unix_stream_socket { create_stream_socket_perms connectto };
89 allow ricci_t self:tcp_socket create_stream_socket_perms;
90
91 domain_auto_trans(ricci_t, ricci_modcluster_exec_t, ricci_modcluster_t)
92 domain_auto_trans(ricci_t, ricci_modlog_exec_t, ricci_modlog_t)
93 domain_auto_trans(ricci_t, ricci_modrpm_exec_t, ricci_modrpm_t)
94 domain_auto_trans(ricci_t, ricci_modservice_exec_t, ricci_modservice_t)
95 domain_auto_trans(ricci_t, ricci_modstorage_exec_t, ricci_modstorage_t)
96
97 # tmp file
98 manage_dirs_pattern(ricci_t, ricci_tmp_t, ricci_tmp_t)
99 manage_files_pattern(ricci_t, ricci_tmp_t, ricci_tmp_t)
100 files_tmp_filetrans(ricci_t, ricci_tmp_t, { file dir })
101
102 # var/lib files for ricci
103 manage_dirs_pattern(ricci_t, ricci_var_lib_t, ricci_var_lib_t)
104 manage_files_pattern(ricci_t, ricci_var_lib_t, ricci_var_lib_t)
105 manage_sock_files_pattern(ricci_t, ricci_var_lib_t, ricci_var_lib_t)
106 files_var_lib_filetrans(ricci_t, ricci_var_lib_t, { file dir sock_file })
107
108 # log files
109 allow ricci_t ricci_var_log_t:dir setattr;
110 manage_files_pattern(ricci_t, ricci_var_log_t, ricci_var_log_t)
111 manage_sock_files_pattern(ricci_t, ricci_var_log_t, ricci_var_log_t)
112 logging_log_filetrans(ricci_t, ricci_var_log_t, { sock_file file dir })
113
114 # pid file
115 manage_files_pattern(ricci_t, ricci_var_run_t, ricci_var_run_t)
116 manage_sock_files_pattern(ricci_t, ricci_var_run_t, ricci_var_run_t)
117 files_pid_filetrans(ricci_t, ricci_var_run_t, { file sock_file })
118
119 kernel_read_kernel_sysctls(ricci_t)
120
121 corecmd_exec_bin(ricci_t)
122
123 corenet_all_recvfrom_unlabeled(ricci_t)
124 corenet_all_recvfrom_netlabel(ricci_t)
125 corenet_tcp_sendrecv_all_if(ricci_t)
126 corenet_tcp_sendrecv_all_nodes(ricci_t)
127 corenet_tcp_sendrecv_all_ports(ricci_t)
128 corenet_tcp_bind_all_nodes(ricci_t)
129 corenet_udp_bind_all_nodes(ricci_t)
130 corenet_tcp_bind_ricci_port(ricci_t)
131 corenet_udp_bind_ricci_port(ricci_t)
132 corenet_tcp_connect_http_port(ricci_t)
133
134 dev_read_urand(ricci_t)
135
136 files_read_etc_files(ricci_t)
137 files_read_etc_runtime_files(ricci_t)
138 files_create_boot_flag(ricci_t)
139
140 auth_domtrans_chk_passwd(ricci_t)
141 auth_append_login_records(ricci_t)
142
143 init_dontaudit_stream_connect_script(ricci_t)
144
145 locallogin_dontaudit_use_fds(ricci_t)
146
147 logging_send_syslog_msg(ricci_t)
148
149 miscfiles_read_localization(ricci_t)
150
151 sysnet_dns_name_resolve(ricci_t)
152
153 optional_policy(`
154 ccs_read_config(ricci_t)
155 ')
156
157 optional_policy(`
158 dbus_system_bus_client(ricci_t)
159
160 oddjob_dbus_chat(ricci_t)
161 ')
162
163 optional_policy(`
164 # Needed so oddjob can run halt/reboot on behalf of ricci
165 corecmd_bin_entry_type(ricci_t)
166 term_dontaudit_search_ptys(ricci_t)
167 init_exec(ricci_t)
168 init_telinit(ricci_t)
169 init_rw_utmp(ricci_t)
170
171 oddjob_system_entry(ricci_t, ricci_exec_t)
172 ')
173
174 optional_policy(`
175 rpm_use_script_fds(ricci_t)
176 ')
177
178 optional_policy(`
179 sasl_connect(ricci_t)
180 ')
181
182 optional_policy(`
183 unconfined_use_fds(ricci_t)
184 ')
185
186 optional_policy(`
187 xen_domtrans_xm(ricci_t)
188 ')
189
190 ########################################
191 #
192 # ricci_modcluster local policy
193 #
194
195 allow ricci_modcluster_t self:capability sys_nice;
196 allow ricci_modcluster_t self:process setsched;
197 allow ricci_modcluster_t self:fifo_file rw_fifo_file_perms;
198
199 kernel_read_kernel_sysctls(ricci_modcluster_t)
200 kernel_read_system_state(ricci_modcluster_t)
201
202 corecmd_exec_shell(ricci_modcluster_t)
203 corecmd_exec_bin(ricci_modcluster_t)
204
205 domain_dontaudit_read_all_domains_state(ricci_modcluster_t)
206
207 files_search_locks(ricci_modcluster_t)
208 files_read_etc_runtime_files(ricci_modcluster_t)
209 files_read_etc_files(ricci_modcluster_t)
210 files_search_usr(ricci_modcluster_t)
211
212 init_exec(ricci_modcluster_t)
213 init_domtrans_script(ricci_modcluster_t)
214
215 logging_send_syslog_msg(ricci_modcluster_t)
216
217 miscfiles_read_localization(ricci_modcluster_t)
218
219 modutils_domtrans_insmod(ricci_modcluster_t)
220
221 mount_domtrans(ricci_modcluster_t)
222
223 ricci_stream_connect_modclusterd(ricci_modcluster_t)
224
225 optional_policy(`
226 ccs_stream_connect(ricci_modcluster_t)
227 ccs_domtrans(ricci_modcluster_t)
228 ccs_manage_config(ricci_modcluster_t)
229 ')
230
231 optional_policy(`
232 consoletype_exec(ricci_modcluster_t)
233 ')
234
235 optional_policy(`
236 lvm_domtrans(ricci_modcluster_t)
237 ')
238
239 optional_policy(`
240 nscd_socket_use(ricci_modcluster_t)
241 ')
242
243 optional_policy(`
244 oddjob_system_entry(ricci_modcluster_t, ricci_modcluster_exec_t)
245 ')
246
247 optional_policy(`
248 # XXX This has got to go.
249 unconfined_domain(ricci_modcluster_t)
250 ')
251
252 ########################################
253 #
254 # ricci_modclusterd local policy
255 #
256
257 allow ricci_modclusterd_t self:capability { sys_nice sys_tty_config };
258 allow ricci_modclusterd_t self:process { signal sigkill setsched };
259 allow ricci_modclusterd_t self:fifo_file rw_fifo_file_perms;
260 allow ricci_modclusterd_t self:unix_stream_socket create_stream_socket_perms;
261 allow ricci_modclusterd_t self:tcp_socket create_stream_socket_perms;
262 allow ricci_modclusterd_t self:netlink_route_socket r_netlink_socket_perms;
263 # cjp: this needs to be fixed for a specific socket type:
264 allow ricci_modclusterd_t self:socket create_socket_perms;
265
266 allow ricci_modclusterd_t ricci_modcluster_t:unix_stream_socket connectto;
267
268 # log files
269 allow ricci_modclusterd_t ricci_modcluster_var_log_t:dir setattr;
270 manage_files_pattern(ricci_modclusterd_t, ricci_modcluster_var_log_t, ricci_modcluster_var_log_t)
271 manage_sock_files_pattern(ricci_modclusterd_t, ricci_modcluster_var_log_t, ricci_modcluster_var_log_t)
272 logging_log_filetrans(ricci_modclusterd_t, ricci_modcluster_var_log_t, { sock_file file dir })
273
274 # pid file
275 manage_files_pattern(ricci_modclusterd_t, ricci_modcluster_var_run_t, ricci_modcluster_var_run_t)
276 manage_sock_files_pattern(ricci_modclusterd_t, ricci_modcluster_var_run_t, ricci_modcluster_var_run_t)
277 files_pid_filetrans(ricci_modclusterd_t, ricci_modcluster_var_run_t, { file sock_file })
278
279 kernel_read_kernel_sysctls(ricci_modclusterd_t)
280 kernel_read_system_state(ricci_modclusterd_t)
281
282 corecmd_exec_bin(ricci_modclusterd_t)
283
284 corenet_tcp_sendrecv_all_if(ricci_modclusterd_t)
285 corenet_tcp_sendrecv_all_ports(ricci_modclusterd_t)
286 corenet_tcp_bind_all_nodes(ricci_modclusterd_t)
287 corenet_tcp_bind_ricci_modcluster_port(ricci_modclusterd_t)
288 corenet_tcp_connect_ricci_modcluster_port(ricci_modclusterd_t)
289
290 domain_dontaudit_read_all_domains_state(ricci_modclusterd_t)
291
292 files_read_etc_files(ricci_modclusterd_t)
293 files_read_etc_runtime_files(ricci_modclusterd_t)
294
295 fs_getattr_xattr_fs(ricci_modclusterd_t)
296
297 init_dontaudit_stream_connect_script(ricci_modclusterd_t)
298
299 locallogin_dontaudit_use_fds(ricci_modclusterd_t)
300
301 logging_send_syslog_msg(ricci_modclusterd_t)
302
303 miscfiles_read_localization(ricci_modclusterd_t)
304
305 sysnet_domtrans_ifconfig(ricci_modclusterd_t)
306 sysnet_dns_name_resolve(ricci_modclusterd_t)
307
308 optional_policy(`
309 ccs_domtrans(ricci_modclusterd_t)
310 ccs_stream_connect(ricci_modclusterd_t)
311 ccs_read_config(ricci_modclusterd_t)
312 ')
313
314 optional_policy(`
315 unconfined_use_fds(ricci_modclusterd_t)
316 ')
317
318 ########################################
319 #
320 # ricci_modlog local policy
321 #
322
323 allow ricci_modlog_t self:capability sys_nice;
324 allow ricci_modlog_t self:process setsched;
325
326 kernel_read_kernel_sysctls(ricci_modlog_t)
327 kernel_read_system_state(ricci_modlog_t)
328
329 corecmd_exec_bin(ricci_modlog_t)
330
331 domain_dontaudit_read_all_domains_state(ricci_modlog_t)
332
333 files_read_etc_files(ricci_modlog_t)
334 files_search_usr(ricci_modlog_t)
335
336 logging_read_generic_logs(ricci_modlog_t)
337
338 miscfiles_read_localization(ricci_modlog_t)
339
340 optional_policy(`
341 nscd_dontaudit_search_pid(ricci_modlog_t)
342 ')
343
344 optional_policy(`
345 oddjob_system_entry(ricci_modlog_t, ricci_modlog_exec_t)
346 ')
347
348 ########################################
349 #
350 # ricci_modrpm local policy
351 #
352
353 allow ricci_modrpm_t self:fifo_file read_fifo_file_perms;
354
355 kernel_read_kernel_sysctls(ricci_modrpm_t)
356
357 corecmd_exec_bin(ricci_modrpm_t)
358
359 files_search_usr(ricci_modrpm_t)
360 files_read_etc_files(ricci_modrpm_t)
361
362 miscfiles_read_localization(ricci_modrpm_t)
363
364 optional_policy(`
365 oddjob_system_entry(ricci_modrpm_t, ricci_modrpm_exec_t)
366 ')
367
368 optional_policy(`
369 rpm_domtrans(ricci_modrpm_t)
370 ')
371
372 ########################################
373 #
374 # ricci_modservice local policy
375 #
376
377 allow ricci_modservice_t self:capability { dac_override sys_nice };
378 allow ricci_modservice_t self:fifo_file rw_fifo_file_perms;
379 allow ricci_modservice_t self:process setsched;
380
381 kernel_read_kernel_sysctls(ricci_modservice_t)
382 kernel_read_system_state(ricci_modservice_t)
383
384 corecmd_exec_bin(ricci_modservice_t)
385 corecmd_exec_shell(ricci_modservice_t)
386
387 files_read_etc_files(ricci_modservice_t)
388 files_read_etc_runtime_files(ricci_modservice_t)
389 files_search_usr(ricci_modservice_t)
390 # Needed for running chkconfig
391 files_manage_etc_symlinks(ricci_modservice_t)
392
393 consoletype_exec(ricci_modservice_t)
394
395 init_domtrans_script(ricci_modservice_t)
396
397 miscfiles_read_localization(ricci_modservice_t)
398
399 optional_policy(`
400 ccs_read_config(ricci_modservice_t)
401 ')
402
403 optional_policy(`
404 nscd_dontaudit_search_pid(ricci_modservice_t)
405 ')
406
407 optional_policy(`
408 oddjob_system_entry(ricci_modservice_t, ricci_modservice_exec_t)
409 ')
410
411 ########################################
412 #
413 # ricci_modstorage local policy
414 #
415
416 allow ricci_modstorage_t self:process { setsched signal };
417 dontaudit ricci_modstorage_t self:process ptrace;
418 allow ricci_modstorage_t self:capability { mknod sys_nice };
419 allow ricci_modstorage_t self:fifo_file rw_fifo_file_perms;
420 allow ricci_modstorage_t self:unix_dgram_socket create_socket_perms;
421
422 kernel_read_kernel_sysctls(ricci_modstorage_t)
423 kernel_read_system_state(ricci_modstorage_t)
424
425 create_files_pattern(ricci_modstorage_t, ricci_modstorage_lock_t, ricci_modstorage_lock_t)
426 files_lock_filetrans(ricci_modstorage_t, ricci_modstorage_lock_t, file)
427
428 corecmd_exec_shell(ricci_modstorage_t)
429 corecmd_exec_bin(ricci_modstorage_t)
430
431 dev_read_sysfs(ricci_modstorage_t)
432 dev_read_urand(ricci_modstorage_t)
433 dev_manage_generic_blk_files(ricci_modstorage_t)
434
435 domain_dontaudit_read_all_domains_state(ricci_modstorage_t)
436
437 #Needed for editing /etc/fstab
438 files_manage_etc_files(ricci_modstorage_t)
439 files_read_etc_runtime_files(ricci_modstorage_t)
440 files_read_usr_files(ricci_modstorage_t)
441 files_read_kernel_modules(ricci_modstorage_t)
442
443 storage_raw_read_fixed_disk(ricci_modstorage_t)
444
445 term_dontaudit_use_console(ricci_modstorage_t)
446
447 fstools_domtrans(ricci_modstorage_t)
448
449 logging_send_syslog_msg(ricci_modstorage_t)
450
451 miscfiles_read_localization(ricci_modstorage_t)
452
453 modutils_read_module_deps(ricci_modstorage_t)
454
455 optional_policy(`
456 ccs_stream_connect(ricci_modstorage_t)
457 ccs_read_config(ricci_modstorage_t)
458 ')
459
460 optional_policy(`
461 lvm_domtrans(ricci_modstorage_t)
462 lvm_manage_config(ricci_modstorage_t)
463 ')
464
465 optional_policy(`
466 nscd_socket_use(ricci_modstorage_t)
467 ')
468
469 optional_policy(`
470 oddjob_system_entry(ricci_modstorage_t, ricci_modstorage_exec_t)
471 ')
472
473 optional_policy(`
474 raid_domtrans_mdadm(ricci_modstorage_t)
475 ')