2007-10-24 15:07:40 +00:00
|
|
|
## <summary>Exim mail transfer agent</summary>
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Execute a domain transition to run exim.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
2010-09-17 09:46:20 +00:00
|
|
|
## <summary>
|
2007-10-24 15:07:40 +00:00
|
|
|
## Domain allowed to transition.
|
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
2010-09-17 09:46:20 +00:00
|
|
|
## </summary>
|
2007-10-24 15:07:40 +00:00
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`exim_domtrans',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_t, exim_exec_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
domtrans_pattern($1, exim_exec_t, exim_t)
|
|
|
|
')
|
|
|
|
|
2010-08-26 13:41:21 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Execute exim in the exim domain.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
2010-09-17 07:48:34 +00:00
|
|
|
## Domain allowed to transition.
|
2010-08-26 13:41:21 +00:00
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
2010-09-17 09:46:20 +00:00
|
|
|
interface(`exim_initrc_domtrans',`
|
2010-08-26 13:41:21 +00:00
|
|
|
gen_require(`
|
|
|
|
type exim_initrc_exec_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
init_labeled_script_domtrans($1, exim_initrc_exec_t)
|
|
|
|
')
|
|
|
|
|
2007-10-24 15:07:40 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Do not audit attempts to read,
|
|
|
|
## exim tmp files
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain to not audit.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`exim_dontaudit_read_tmp_files',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_tmp_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
dontaudit $1 exim_tmp_t:file read_file_perms;
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Allow domain to read, exim tmp files
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
2010-08-05 13:03:19 +00:00
|
|
|
## Domain allowed access.
|
2007-10-24 15:07:40 +00:00
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`exim_read_tmp_files',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_tmp_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 exim_tmp_t:file read_file_perms;
|
|
|
|
files_search_tmp($1)
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Read exim PID files.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`exim_read_pid_files',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_var_run_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 exim_var_run_t:file read_file_perms;
|
|
|
|
files_search_pids($1)
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Allow the specified domain to read exim's log files.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
## <rolecap/>
|
|
|
|
#
|
|
|
|
interface(`exim_read_log',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_log_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
read_files_pattern($1, exim_log_t, exim_log_t)
|
|
|
|
logging_search_logs($1)
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Allow the specified domain to append
|
|
|
|
## exim log files.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
2010-09-17 09:46:20 +00:00
|
|
|
## <summary>
|
2010-08-05 13:03:19 +00:00
|
|
|
## Domain allowed access.
|
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
2010-09-17 09:46:20 +00:00
|
|
|
## </summary>
|
2007-10-24 15:07:40 +00:00
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`exim_append_log',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_log_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
append_files_pattern($1, exim_log_t, exim_log_t)
|
|
|
|
logging_search_logs($1)
|
|
|
|
')
|
|
|
|
|
2009-05-14 14:41:50 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Allow the specified domain to manage exim's log files.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
## <rolecap/>
|
|
|
|
#
|
|
|
|
interface(`exim_manage_log',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_log_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
manage_files_pattern($1, exim_log_t, exim_log_t)
|
|
|
|
logging_search_logs($1)
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Create, read, write, and delete
|
|
|
|
## exim spool dirs.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`exim_manage_spool_dirs',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_spool_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
manage_dirs_pattern($1, exim_spool_t, exim_spool_t)
|
|
|
|
files_search_spool($1)
|
|
|
|
')
|
|
|
|
|
2007-10-24 15:07:40 +00:00
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Read exim spool files.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`exim_read_spool_files',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_spool_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
allow $1 exim_spool_t:file read_file_perms;
|
|
|
|
allow $1 exim_spool_t:dir list_dir_perms;
|
|
|
|
files_search_spool($1)
|
|
|
|
')
|
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## Create, read, write, and delete
|
|
|
|
## exim spool files.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
|
|
|
interface(`exim_manage_spool_files',`
|
|
|
|
gen_require(`
|
|
|
|
type exim_spool_t;
|
|
|
|
')
|
|
|
|
|
|
|
|
manage_files_pattern($1, exim_spool_t, exim_spool_t)
|
|
|
|
files_search_spool($1)
|
|
|
|
')
|
2010-08-26 13:41:21 +00:00
|
|
|
|
|
|
|
########################################
|
|
|
|
## <summary>
|
|
|
|
## All of the rules required to administrate
|
|
|
|
## an exim environment.
|
|
|
|
## </summary>
|
|
|
|
## <param name="domain">
|
|
|
|
## <summary>
|
|
|
|
## Domain allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
## <param name="role">
|
|
|
|
## <summary>
|
|
|
|
## Role allowed access.
|
|
|
|
## </summary>
|
|
|
|
## </param>
|
|
|
|
#
|
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
2010-09-17 09:46:20 +00:00
|
|
|
interface(`exim_admin',`
|
2010-08-26 13:41:21 +00:00
|
|
|
gen_require(`
|
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
Whitespace, newline and tab fixes.
2010-09-17 09:46:20 +00:00
|
|
|
type exim_t, exim_initrc_exec_t, exim_log_t;
|
|
|
|
type exim_tmp_t, exim_spool_t, exim_var_run_t;
|
2010-08-26 13:41:21 +00:00
|
|
|
')
|
|
|
|
|
2010-09-15 08:20:36 +00:00
|
|
|
allow $1 exim_t:process { ptrace signal_perms };
|
|
|
|
ps_process_pattern($1, exim_t)
|
2010-08-26 13:41:21 +00:00
|
|
|
|
|
|
|
exim_initrc_domtrans($1)
|
|
|
|
domain_system_change_exemption($1)
|
|
|
|
role_transition $2 exim_initrc_exec_t system_r;
|
|
|
|
allow $2 system_r;
|
|
|
|
|
|
|
|
logging_search_logs($1)
|
|
|
|
admin_pattern($1, exim_log_t)
|
|
|
|
|
|
|
|
files_search_tmp($1)
|
|
|
|
admin_pattern($1, exim_tmp_t)
|
|
|
|
|
|
|
|
files_search_spool($1)
|
|
|
|
admin_pattern($1, exim_spool_t)
|
|
|
|
|
|
|
|
files_search_pids($1)
|
|
|
|
admin_pattern($1, exim_var_run_t)
|
|
|
|
')
|