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