]> git.ipfire.org Git - people/stevee/selinux-policy.git/blame - policy/modules/services/varnishd.te
Allow munin services plugins to use NSCD services
[people/stevee/selinux-policy.git] / policy / modules / services / varnishd.te
CommitLineData
826d0142 1policy_module(varnishd, 1.2.0)
267d9c60
CP
2
3########################################
4#
5# Declarations
6#
7
8## <desc>
aaf8a677
DG
9## <p>
10## Allow varnishd to connect to all ports,
11## not just HTTP.
12## </p>
267d9c60
CP
13## </desc>
14gen_tunable(varnishd_connect_any, false)
15
16type varnishd_t;
17type varnishd_exec_t;
18init_daemon_domain(varnishd_t, varnishd_exec_t)
19
20type varnishd_initrc_exec_t;
21init_script_file(varnishd_initrc_exec_t)
22
23type varnishd_etc_t;
5e4542af 24files_config_file(varnishd_etc_t)
267d9c60
CP
25
26type varnishd_tmp_t;
27files_tmp_file(varnishd_tmp_t)
28
29type varnishd_var_lib_t;
30files_type(varnishd_var_lib_t)
31
32type varnishd_var_run_t;
33files_pid_file(varnishd_var_run_t)
34
35type varnishlog_t;
36type varnishlog_exec_t;
37init_daemon_domain(varnishlog_t, varnishlog_exec_t)
38
39type varnishlog_initrc_exec_t;
40init_script_file(varnishlog_initrc_exec_t)
41
42type varnishlog_var_run_t;
43files_pid_file(varnishlog_var_run_t)
44
45type varnishlog_log_t;
2b3649c1 46logging_log_file(varnishlog_log_t)
267d9c60
CP
47
48########################################
49#
50# varnishd local policy
51#
52
3eaa9939
DW
53allow varnishd_t self:capability { kill dac_override ipc_lock setuid setgid };
54dontaudit varnishd_t self:capability sys_tty_config;
267d9c60
CP
55allow varnishd_t self:process signal;
56allow varnishd_t self:fifo_file rw_fifo_file_perms;
57allow varnishd_t self:tcp_socket create_stream_socket_perms;
58allow varnishd_t self:udp_socket create_socket_perms;
59
60read_files_pattern(varnishd_t, varnishd_etc_t, varnishd_etc_t)
61list_dirs_pattern(varnishd_t, varnishd_etc_t, varnishd_etc_t)
62
63manage_dirs_pattern(varnishd_t, varnishd_tmp_t, varnishd_tmp_t)
64manage_files_pattern(varnishd_t, varnishd_tmp_t, varnishd_tmp_t)
65files_tmp_filetrans(varnishd_t, varnishd_tmp_t, { file dir })
66
67exec_files_pattern(varnishd_t, varnishd_var_lib_t, varnishd_var_lib_t)
68manage_dirs_pattern(varnishd_t, varnishd_var_lib_t, varnishd_var_lib_t)
69manage_files_pattern(varnishd_t, varnishd_var_lib_t, varnishd_var_lib_t)
70files_var_lib_filetrans(varnishd_t, varnishd_var_lib_t, { dir file })
71
72manage_files_pattern(varnishd_t, varnishd_var_run_t, varnishd_var_run_t)
a25335e1 73files_pid_filetrans(varnishd_t, varnishd_var_run_t, file)
267d9c60
CP
74
75kernel_read_system_state(varnishd_t)
76
77corecmd_exec_bin(varnishd_t)
78corecmd_exec_shell(varnishd_t)
79
80corenet_tcp_sendrecv_generic_if(varnishd_t)
81corenet_tcp_bind_generic_node(varnishd_t)
82corenet_tcp_bind_http_port(varnishd_t)
83corenet_tcp_bind_http_cache_port(varnishd_t)
45b975db 84corenet_tcp_bind_varnishd_port(varnishd_t)
267d9c60
CP
85corenet_tcp_connect_http_cache_port(varnishd_t)
86corenet_tcp_connect_http_port(varnishd_t)
87
88dev_read_urand(varnishd_t)
89
90fs_getattr_all_fs(varnishd_t)
91
92auth_use_nsswitch(varnishd_t)
93
94logging_send_syslog_msg(varnishd_t)
95
96miscfiles_read_localization(varnishd_t)
97
98sysnet_read_config(varnishd_t)
99
100tunable_policy(`varnishd_connect_any',`
101 corenet_tcp_connect_all_ports(varnishd_t)
102 corenet_tcp_bind_all_ports(varnishd_t)
103')
104
105#######################################
106#
107# varnishlog local policy
108#
109
110manage_files_pattern(varnishlog_t, varnishlog_var_run_t, varnishlog_var_run_t)
a25335e1 111files_pid_filetrans(varnishlog_t, varnishlog_var_run_t, file)
267d9c60
CP
112
113manage_dirs_pattern(varnishlog_t, varnishlog_log_t, varnishlog_log_t)
114manage_files_pattern(varnishlog_t, varnishlog_log_t, varnishlog_log_t)
115logging_log_filetrans(varnishlog_t, varnishlog_log_t, { file dir })
116
117files_search_var_lib(varnishlog_t)
118read_files_pattern(varnishlog_t, varnishd_var_lib_t, varnishd_var_lib_t)