]> git.ipfire.org Git - people/stevee/selinux-policy.git/blame - policy/modules/services/nagios.te
trunk: nagios update from dan
[people/stevee/selinux-policy.git] / policy / modules / services / nagios.te
CommitLineData
f1e604bb 1
02f2c3e9 2policy_module(nagios,1.2.1)
f1e604bb
CP
3
4########################################
5#
6# Declarations
7#
8
9type nagios_t;
10type nagios_exec_t;
11init_daemon_domain(nagios_t,nagios_exec_t)
12
13type nagios_cgi_t;
14type nagios_cgi_exec_t;
15init_system_domain(nagios_cgi_t,nagios_cgi_exec_t)
16
17type nagios_etc_t;
18files_config_file(nagios_etc_t)
19
20type nagios_log_t;
21logging_log_file(nagios_log_t)
22
23type nagios_tmp_t;
24files_tmp_file(nagios_tmp_t)
25
26type nagios_var_run_t;
27files_pid_file(nagios_var_run_t)
28
06e27756
CP
29type nrpe_t;
30type nrpe_exec_t;
31init_daemon_domain(nrpe_t,nrpe_exec_t)
32
33type nrpe_etc_t;
34files_config_file(nrpe_etc_t)
35
f1e604bb
CP
36########################################
37#
38# Nagios local policy
39#
40
41allow nagios_t self:capability { dac_override setgid setuid };
42dontaudit nagios_t self:capability sys_tty_config;
43allow nagios_t self:process { setpgid signal_perms };
44allow nagios_t self:fifo_file rw_file_perms;
45allow nagios_t self:tcp_socket create_stream_socket_perms;
46allow nagios_t self:udp_socket create_socket_perms;
47
c0868a7a
CP
48read_files_pattern(nagios_t,nagios_etc_t,nagios_etc_t)
49read_lnk_files_pattern(nagios_t,nagios_etc_t,nagios_etc_t)
50allow nagios_t nagios_etc_t:dir list_dir_perms;
f1e604bb 51
c0868a7a
CP
52manage_files_pattern(nagios_t,nagios_log_t,nagios_log_t)
53manage_fifo_files_pattern(nagios_t,nagios_log_t,nagios_log_t)
f1e604bb
CP
54logging_log_filetrans(nagios_t,nagios_log_t,{ file dir })
55
c0868a7a
CP
56manage_dirs_pattern(nagios_t,nagios_tmp_t,nagios_tmp_t)
57manage_files_pattern(nagios_t,nagios_tmp_t,nagios_tmp_t)
f1e604bb
CP
58files_tmp_filetrans(nagios_t, nagios_tmp_t, { file dir })
59
c0868a7a 60manage_files_pattern(nagios_t,nagios_var_run_t,nagios_var_run_t)
f1e604bb
CP
61files_pid_filetrans(nagios_t,nagios_var_run_t,file)
62
63kernel_read_system_state(nagios_t)
64kernel_read_kernel_sysctls(nagios_t)
65
66corecmd_exec_bin(nagios_t)
67corecmd_exec_shell(nagios_t)
68
141cffdd 69corenet_non_ipsec_sendrecv(nagios_t)
f1e604bb
CP
70corenet_tcp_sendrecv_generic_if(nagios_t)
71corenet_udp_sendrecv_generic_if(nagios_t)
f1e604bb
CP
72corenet_tcp_sendrecv_all_nodes(nagios_t)
73corenet_udp_sendrecv_all_nodes(nagios_t)
f1e604bb
CP
74corenet_tcp_sendrecv_all_ports(nagios_t)
75corenet_udp_sendrecv_all_ports(nagios_t)
02f2c3e9 76corenet_tcp_connect_all_ports(nagios_t)
f1e604bb
CP
77
78dev_read_sysfs(nagios_t)
02f2c3e9 79dev_read_urand(nagios_t)
f1e604bb
CP
80
81domain_use_interactive_fds(nagios_t)
82# for ps
83domain_read_all_domains_state(nagios_t)
84
85files_read_etc_files(nagios_t)
86files_read_etc_runtime_files(nagios_t)
87files_read_kernel_symbol_table(nagios_t)
88
89fs_getattr_all_fs(nagios_t)
90fs_search_auto_mountpoints(nagios_t)
91
f1e604bb
CP
92# for who
93init_read_utmp(nagios_t)
94
95libs_use_ld_so(nagios_t)
96libs_use_shared_libs(nagios_t)
97
98logging_send_syslog_msg(nagios_t)
99
100miscfiles_read_localization(nagios_t)
101
f1e604bb
CP
102userdom_dontaudit_use_unpriv_user_fds(nagios_t)
103userdom_dontaudit_search_sysadm_home_dirs(nagios_t)
104
105mta_send_mail(nagios_t)
106
107ifdef(`targeted_policy',`
108 term_dontaudit_use_unallocated_ttys(nagios_t)
109 term_dontaudit_use_generic_ptys(nagios_t)
110 files_dontaudit_read_root_files(nagios_t)
111')
112
113optional_policy(`
02f2c3e9 114 auth_use_nsswitch(nagios_t)
f1e604bb
CP
115')
116
117optional_policy(`
02f2c3e9
CP
118 netutils_domtrans_ping(nagios_t)
119 netutils_signal_ping(nagios_t)
120 netutils_kill_ping(nagios_t)
f1e604bb
CP
121')
122
123optional_policy(`
124 seutil_sigchld_newrole(nagios_t)
125')
126
127optional_policy(`
128 udev_read_db(nagios_t)
129')
130
131# cjp: leaked file descriptors:
132# for open file handles
133#dontaudit system_mail_t nagios_etc_t:file read;
134#dontaudit system_mail_t nagios_log_t:fifo_file read;
135
136########################################
137#
138# Nagios CGI local policy
139#
140
c0868a7a
CP
141allow nagios_cgi_t self:process signal_perms;
142allow nagios_cgi_t self:fifo_file rw_fifo_file_perms;
f1e604bb 143
c0868a7a
CP
144read_files_pattern(nagios_cgi_t,nagios_t,nagios_t)
145read_lnk_files_pattern(nagios_cgi_t,nagios_t,nagios_t)
f1e604bb 146
c0868a7a
CP
147allow nagios_cgi_t nagios_etc_t:dir list_dir_perms;
148read_files_pattern(nagios_cgi_t,nagios_etc_t,nagios_etc_t)
149read_lnk_files_pattern(nagios_cgi_t,nagios_etc_t,nagios_etc_t)
f1e604bb 150
c0868a7a
CP
151allow nagios_cgi_t nagios_log_t:dir list_dir_perms;
152read_files_pattern(nagios_cgi_t,nagios_etc_t,nagios_log_t)
153read_lnk_files_pattern(nagios_cgi_t,nagios_etc_t,nagios_log_t)
f1e604bb
CP
154
155kernel_read_system_state(nagios_cgi_t)
156
157corecmd_exec_bin(nagios_cgi_t)
158
159domain_dontaudit_read_all_domains_state(nagios_cgi_t)
160
161files_read_etc_files(nagios_cgi_t)
162files_read_etc_runtime_files(nagios_cgi_t)
163files_read_kernel_symbol_table(nagios_cgi_t)
164
165libs_use_ld_so(nagios_cgi_t)
166libs_use_shared_libs(nagios_cgi_t)
167
168logging_send_syslog_msg(nagios_cgi_t)
169logging_search_logs(nagios_cgi_t)
170
171miscfiles_read_localization(nagios_cgi_t)
172
173optional_policy(`
174 apache_append_log(nagios_cgi_t)
175')
06e27756
CP
176
177########################################
178#
179# Nagios remote plugin executor local policy
180#
181
182dontaudit nrpe_t self:capability sys_tty_config;
183allow nrpe_t self:process { setpgid signal_perms };
c0868a7a 184allow nrpe_t self:fifo_file rw_fifo_file_perms;
06e27756
CP
185
186allow nrpe_t nrpe_etc_t:file { getattr read };
187files_search_etc(nrpe_t)
188
189kernel_read_system_state(nrpe_t)
190kernel_read_kernel_sysctls(nrpe_t)
191
192corecmd_exec_bin(nrpe_t)
193corecmd_exec_shell(nrpe_t)
06e27756
CP
194
195dev_read_sysfs(nrpe_t)
196dev_read_urand(nrpe_t)
197
198domain_use_interactive_fds(nrpe_t)
199
200files_read_etc_runtime_files(nrpe_t)
201
202fs_search_auto_mountpoints(nrpe_t)
203
06e27756
CP
204libs_use_ld_so(nrpe_t)
205libs_use_shared_libs(nrpe_t)
206
207logging_send_syslog_msg(nrpe_t)
208
209miscfiles_read_localization(nrpe_t)
210
211userdom_dontaudit_use_unpriv_user_fds(nrpe_t)
212
213ifdef(`targeted_policy',`
214 term_dontaudit_use_unallocated_ttys(nrpe_t)
215 term_dontaudit_use_generic_ptys(nrpe_t)
216 files_dontaudit_read_root_files(nrpe_t)
217')
218
219optional_policy(`
220 inetd_tcp_service_domain(nrpe_t,nrpe_exec_t)
221')
222
223optional_policy(`
224 seutil_sigchld_newrole(nrpe_t)
225')
226
227optional_policy(`
228 udev_read_db(nrpe_t)
229')