]> git.ipfire.org Git - people/stevee/selinux-policy.git/blob - policy/modules/services/networkmanager.te
trunk: bump module versions for release.
[people/stevee/selinux-policy.git] / policy / modules / services / networkmanager.te
1
2 policy_module(networkmanager, 1.12.0)
3
4 ########################################
5 #
6 # Declarations
7 #
8
9 type NetworkManager_t;
10 type NetworkManager_exec_t;
11 init_daemon_domain(NetworkManager_t, NetworkManager_exec_t)
12
13 type NetworkManager_initrc_exec_t;
14 init_script_file(NetworkManager_initrc_exec_t)
15
16 type NetworkManager_log_t;
17 logging_log_file(NetworkManager_log_t)
18
19 type NetworkManager_tmp_t;
20 files_tmp_file(NetworkManager_tmp_t)
21
22 type NetworkManager_var_run_t;
23 files_pid_file(NetworkManager_var_run_t)
24
25 type wpa_cli_t;
26 type wpa_cli_exec_t;
27 init_system_domain(wpa_cli_t, wpa_cli_exec_t)
28
29 ########################################
30 #
31 # Local policy
32 #
33
34 # networkmanager will ptrace itself if gdb is installed
35 # and it receives a unexpected signal (rh bug #204161)
36 allow NetworkManager_t self:capability { kill setgid setuid dac_override net_admin net_raw net_bind_service ipc_lock };
37 dontaudit NetworkManager_t self:capability { sys_tty_config sys_ptrace };
38 allow NetworkManager_t self:process { ptrace setcap setpgid getsched signal_perms };
39 allow NetworkManager_t self:fifo_file rw_fifo_file_perms;
40 allow NetworkManager_t self:unix_dgram_socket { sendto create_socket_perms };
41 allow NetworkManager_t self:unix_stream_socket create_stream_socket_perms;
42 allow NetworkManager_t self:netlink_route_socket create_netlink_socket_perms;
43 allow NetworkManager_t self:tcp_socket create_stream_socket_perms;
44 allow NetworkManager_t self:udp_socket create_socket_perms;
45 allow NetworkManager_t self:packet_socket create_socket_perms;
46
47 allow NetworkManager_t wpa_cli_t:unix_dgram_socket sendto;
48
49 can_exec(NetworkManager_t, NetworkManager_exec_t)
50
51 manage_files_pattern(NetworkManager_t, NetworkManager_log_t, NetworkManager_log_t)
52 logging_log_filetrans(NetworkManager_t, NetworkManager_log_t, file)
53
54 rw_sock_files_pattern(NetworkManager_t, NetworkManager_tmp_t, NetworkManager_tmp_t)
55 files_search_tmp(NetworkManager_t)
56
57 manage_dirs_pattern(NetworkManager_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
58 manage_files_pattern(NetworkManager_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
59 manage_sock_files_pattern(NetworkManager_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
60 files_pid_filetrans(NetworkManager_t,NetworkManager_var_run_t, { dir file sock_file })
61
62 kernel_read_system_state(NetworkManager_t)
63 kernel_read_network_state(NetworkManager_t)
64 kernel_read_kernel_sysctls(NetworkManager_t)
65 kernel_load_module(NetworkManager_t)
66
67 corenet_all_recvfrom_unlabeled(NetworkManager_t)
68 corenet_all_recvfrom_netlabel(NetworkManager_t)
69 corenet_tcp_sendrecv_all_if(NetworkManager_t)
70 corenet_udp_sendrecv_all_if(NetworkManager_t)
71 corenet_raw_sendrecv_all_if(NetworkManager_t)
72 corenet_tcp_sendrecv_all_nodes(NetworkManager_t)
73 corenet_udp_sendrecv_all_nodes(NetworkManager_t)
74 corenet_raw_sendrecv_all_nodes(NetworkManager_t)
75 corenet_tcp_sendrecv_all_ports(NetworkManager_t)
76 corenet_udp_sendrecv_all_ports(NetworkManager_t)
77 corenet_udp_bind_all_nodes(NetworkManager_t)
78 corenet_udp_bind_isakmp_port(NetworkManager_t)
79 corenet_udp_bind_dhcpc_port(NetworkManager_t)
80 corenet_tcp_connect_all_ports(NetworkManager_t)
81 corenet_sendrecv_isakmp_server_packets(NetworkManager_t)
82 corenet_sendrecv_dhcpc_server_packets(NetworkManager_t)
83 corenet_sendrecv_all_client_packets(NetworkManager_t)
84
85 dev_read_sysfs(NetworkManager_t)
86 dev_read_rand(NetworkManager_t)
87 dev_read_urand(NetworkManager_t)
88
89 fs_getattr_all_fs(NetworkManager_t)
90 fs_search_auto_mountpoints(NetworkManager_t)
91
92 mls_file_read_all_levels(NetworkManager_t)
93
94 selinux_dontaudit_search_fs(NetworkManager_t)
95
96 corecmd_exec_shell(NetworkManager_t)
97 corecmd_exec_bin(NetworkManager_t)
98
99 domain_use_interactive_fds(NetworkManager_t)
100 domain_read_confined_domains_state(NetworkManager_t)
101 domain_dontaudit_read_all_domains_state(NetworkManager_t)
102
103 files_read_etc_files(NetworkManager_t)
104 files_read_etc_runtime_files(NetworkManager_t)
105 files_read_usr_files(NetworkManager_t)
106
107 init_read_utmp(NetworkManager_t)
108 init_domtrans_script(NetworkManager_t)
109
110 logging_send_syslog_msg(NetworkManager_t)
111
112 miscfiles_read_localization(NetworkManager_t)
113 miscfiles_read_certs(NetworkManager_t)
114
115 modutils_domtrans_insmod(NetworkManager_t)
116
117 seutil_read_config(NetworkManager_t)
118
119 sysnet_domtrans_ifconfig(NetworkManager_t)
120 sysnet_domtrans_dhcpc(NetworkManager_t)
121 sysnet_signal_dhcpc(NetworkManager_t)
122 sysnet_read_dhcpc_pid(NetworkManager_t)
123 sysnet_delete_dhcpc_pid(NetworkManager_t)
124 sysnet_search_dhcp_state(NetworkManager_t)
125 # in /etc created by NetworkManager will be labelled net_conf_t.
126 sysnet_manage_config(NetworkManager_t)
127 sysnet_etc_filetrans_config(NetworkManager_t)
128
129 userdom_dontaudit_use_unpriv_user_fds(NetworkManager_t)
130 userdom_dontaudit_use_user_ttys(NetworkManager_t)
131 # Read gnome-keyring
132 userdom_read_user_home_content_files(NetworkManager_t)
133
134 optional_policy(`
135 bind_domtrans(NetworkManager_t)
136 bind_manage_cache(NetworkManager_t)
137 bind_signal(NetworkManager_t)
138 ')
139
140 optional_policy(`
141 bluetooth_dontaudit_read_helper_state(NetworkManager_t)
142 ')
143
144 optional_policy(`
145 consoletype_exec(NetworkManager_t)
146 ')
147
148 optional_policy(`
149 dbus_system_bus_client(NetworkManager_t)
150 dbus_connect_system_bus(NetworkManager_t)
151 ')
152
153 optional_policy(`
154 howl_signal(NetworkManager_t)
155 ')
156
157 optional_policy(`
158 nis_use_ypbind(NetworkManager_t)
159 ')
160
161 optional_policy(`
162 nscd_socket_use(NetworkManager_t)
163 nscd_signal(NetworkManager_t)
164 ')
165
166 optional_policy(`
167 openvpn_domtrans(NetworkManager_t)
168 openvpn_signal(NetworkManager_t)
169 ')
170
171 optional_policy(`
172 ppp_domtrans(NetworkManager_t)
173 ppp_read_pid_files(NetworkManager_t)
174 ppp_signal(NetworkManager_t)
175 ')
176
177 optional_policy(`
178 seutil_sigchld_newrole(NetworkManager_t)
179 ')
180
181 optional_policy(`
182 udev_read_db(NetworkManager_t)
183 ')
184
185 optional_policy(`
186 vpn_domtrans(NetworkManager_t)
187 vpn_signal(NetworkManager_t)
188 ')
189
190 ########################################
191 #
192 # wpa_cli local policy
193 #
194
195 allow wpa_cli_t self:capability dac_override;
196 allow wpa_cli_t self:unix_dgram_socket create_socket_perms;
197
198 allow wpa_cli_t NetworkManager_t:unix_dgram_socket sendto;
199
200 manage_sock_files_pattern(wpa_cli_t, NetworkManager_tmp_t, NetworkManager_tmp_t)
201 files_tmp_filetrans(wpa_cli_t, NetworkManager_tmp_t, sock_file)
202
203 list_dirs_pattern(wpa_cli_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
204 rw_sock_files_pattern(wpa_cli_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
205
206 init_dontaudit_use_fds(wpa_cli_t)
207 init_use_script_ptys(wpa_cli_t)
208
209 miscfiles_read_localization(wpa_cli_t)
210
211 term_dontaudit_use_console(wpa_cli_t)