Dominick Grift a9db5b7
policy_module(webalizer, 1.12.1)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Declarations
1ec3d1a
#
1ec3d1a
Dominick Grift a9db5b7
attribute_role webalizer_roles;
Dominick Grift a9db5b7
roleattribute system_r webalizer_roles;
Dominick Grift a9db5b7
1ec3d1a
type webalizer_t;
1ec3d1a
type webalizer_exec_t;
1ec3d1a
application_domain(webalizer_t, webalizer_exec_t)
Dominick Grift a9db5b7
role webalizer_roles types webalizer_t;
1ec3d1a
1ec3d1a
type webalizer_etc_t;
1ec3d1a
files_config_file(webalizer_etc_t)
1ec3d1a
1ec3d1a
type webalizer_usage_t;
1ec3d1a
files_type(webalizer_usage_t)
1ec3d1a
1ec3d1a
type webalizer_tmp_t;
1ec3d1a
files_tmp_file(webalizer_tmp_t)
1ec3d1a
1ec3d1a
type webalizer_var_lib_t;
1ec3d1a
files_type(webalizer_var_lib_t)
1ec3d1a
1ec3d1a
type webalizer_write_t;
1ec3d1a
files_type(webalizer_write_t)
1ec3d1a
1ec3d1a
########################################
1ec3d1a
#
1ec3d1a
# Local policy
1ec3d1a
#
1ec3d1a
1ec3d1a
allow webalizer_t self:capability dac_override;
1ec3d1a
allow webalizer_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap };
1ec3d1a
allow webalizer_t self:fd use;
1ec3d1a
allow webalizer_t self:fifo_file rw_fifo_file_perms;
1ec3d1a
allow webalizer_t self:unix_dgram_socket sendto;
Dominick Grift a9db5b7
allow webalizer_t self:unix_stream_socket { accept connectto listen };
Dominick Grift a9db5b7
allow webalizer_t self:tcp_socket { accept listen };
1ec3d1a
1ec3d1a
allow webalizer_t webalizer_etc_t:file read_file_perms;
1ec3d1a
1ec3d1a
manage_dirs_pattern(webalizer_t, webalizer_tmp_t, webalizer_tmp_t)
1ec3d1a
manage_files_pattern(webalizer_t, webalizer_tmp_t, webalizer_tmp_t)
1ec3d1a
files_tmp_filetrans(webalizer_t, webalizer_tmp_t, { file dir })
1ec3d1a
1ec3d1a
manage_files_pattern(webalizer_t, webalizer_var_lib_t, webalizer_var_lib_t)
1ec3d1a
files_var_lib_filetrans(webalizer_t, webalizer_var_lib_t, file)
1ec3d1a
Dominick Grift a9db5b7
can_exec(webalizer_t, webalizer_exec_t)
Dominick Grift a9db5b7
1ec3d1a
kernel_read_kernel_sysctls(webalizer_t)
1ec3d1a
kernel_read_system_state(webalizer_t)
1ec3d1a
1ec3d1a
corenet_all_recvfrom_netlabel(webalizer_t)
1ec3d1a
corenet_tcp_sendrecv_generic_if(webalizer_t)
1ec3d1a
corenet_tcp_sendrecv_generic_node(webalizer_t)
1ec3d1a
corenet_tcp_sendrecv_all_ports(webalizer_t)
1ec3d1a
1ec3d1a
fs_search_auto_mountpoints(webalizer_t)
1ec3d1a
fs_getattr_xattr_fs(webalizer_t)
1ec3d1a
fs_rw_anon_inodefs_files(webalizer_t)
1ec3d1a
1ec3d1a
files_read_etc_runtime_files(webalizer_t)
1ec3d1a
1ec3d1a
logging_list_logs(webalizer_t)
1ec3d1a
logging_send_syslog_msg(webalizer_t)
1ec3d1a
1ec3d1a
auth_use_nsswitch(webalizer_t)
1ec3d1a
1ec3d1a
miscfiles_read_public_files(webalizer_t)
1ec3d1a
1ec3d1a
sysnet_dns_name_resolve(webalizer_t)
1ec3d1a
sysnet_read_config(webalizer_t)
1ec3d1a
1ec3d1a
userdom_use_inherited_user_terminals(webalizer_t)
1ec3d1a
userdom_use_unpriv_users_fds(webalizer_t)
1ec3d1a
userdom_dontaudit_search_user_home_content(webalizer_t)
1ec3d1a
1ec3d1a
optional_policy(`
1ec3d1a
	apache_read_log(webalizer_t)
Dominick Grift a9db5b7
	apache_content_template(webalizer)
0c593c2
	apache_manage_sys_content(webalizer_t)
Dominick Grift a9db5b7
	manage_dirs_pattern(webalizer_t, httpd_webalizer_content_t, httpd_webalizer_content_t)
Dominick Grift a9db5b7
	manage_files_pattern(webalizer_t, httpd_webalizer_content_t, httpd_webalizer_content_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
optional_policy(`
Dominick Grift a9db5b7
	cron_system_entry(webalizer_t, webalizer_exec_t)
Chris PeBenito 9401ae1
')
Chris PeBenito 9401ae1
Chris PeBenito 9401ae1
optional_policy(`
Dominick Grift a9db5b7
	ftp_read_log(webalizer_t)
Chris PeBenito 9401ae1
')
Chris PeBenito 9401ae1
Chris PeBenito 9401ae1
optional_policy(`
1ec3d1a
	squid_read_log(webalizer_t)
1ec3d1a
')