]> git.ipfire.org Git - people/stevee/selinux-policy.git/blame - policy/modules/admin/netutils.te
Bump module versions for release.
[people/stevee/selinux-policy.git] / policy / modules / admin / netutils.te
CommitLineData
4fc91539 1
29af4c13 2policy_module(netutils, 1.10.0)
4fc91539
CP
3
4########################################
5#
6# Declarations
7#
8
56e1b3d2
CP
9## <desc>
10## <p>
11## Control users use of ping and traceroute
12## </p>
13## </desc>
0bfccda4 14gen_tunable(user_ping, false)
56e1b3d2 15
4fc91539
CP
16type netutils_t;
17type netutils_exec_t;
0bfccda4 18init_system_domain(netutils_t, netutils_exec_t)
4fc91539
CP
19role system_r types netutils_t;
20
21type netutils_tmp_t;
c9428d33 22files_tmp_file(netutils_tmp_t)
4fc91539 23
493d6c4a 24type ping_t;
4fc91539 25type ping_exec_t;
0bfccda4 26init_system_domain(ping_t, ping_exec_t)
4fc91539
CP
27role system_r types ping_t;
28
493d6c4a 29type traceroute_t;
4fc91539 30type traceroute_exec_t;
0bfccda4 31init_system_domain(traceroute_t, traceroute_exec_t)
4fc91539
CP
32role system_r types traceroute_t;
33
4fc91539
CP
34########################################
35#
36# Netutils local policy
37#
38
39# Perform network administration operations and have raw access to the network.
40allow netutils_t self:capability { net_admin net_raw setuid setgid };
27c570f7 41dontaudit netutils_t self:capability sys_tty_config;
4fc91539
CP
42allow netutils_t self:process { sigkill sigstop signull signal };
43allow netutils_t self:netlink_route_socket { bind create getattr nlmsg_read nlmsg_write read write };
dc67f782
CP
44allow netutils_t self:packet_socket create_socket_perms;
45allow netutils_t self:udp_socket create_socket_perms;
2e0a8801 46allow netutils_t self:tcp_socket create_stream_socket_perms;
44dc1b9c 47allow netutils_t self:socket create_socket_perms;
4fc91539 48
0bfccda4
CP
49manage_dirs_pattern(netutils_t, netutils_tmp_t, netutils_tmp_t)
50manage_files_pattern(netutils_t, netutils_tmp_t, netutils_tmp_t)
103fe280 51files_tmp_filetrans(netutils_t, netutils_tmp_t, { file dir })
4fc91539 52
b24f35d8 53kernel_search_proc(netutils_t)
a65fd90a 54kernel_read_all_sysctls(netutils_t)
b24f35d8 55
19006686
CP
56corenet_all_recvfrom_unlabeled(netutils_t)
57corenet_all_recvfrom_netlabel(netutils_t)
668b3093
CP
58corenet_tcp_sendrecv_generic_if(netutils_t)
59corenet_raw_sendrecv_generic_if(netutils_t)
60corenet_udp_sendrecv_generic_if(netutils_t)
c1262146
CP
61corenet_tcp_sendrecv_generic_node(netutils_t)
62corenet_raw_sendrecv_generic_node(netutils_t)
63corenet_udp_sendrecv_generic_node(netutils_t)
0fd9dc55
CP
64corenet_tcp_sendrecv_all_ports(netutils_t)
65corenet_udp_sendrecv_all_ports(netutils_t)
0907bda1 66corenet_tcp_connect_all_ports(netutils_t)
9d0c9b3e 67corenet_sendrecv_all_client_packets(netutils_t)
123a990b 68corenet_udp_bind_generic_node(netutils_t)
0fd9dc55 69
9e8f65c8
CP
70dev_read_sysfs(netutils_t)
71
0fd9dc55 72fs_getattr_xattr_fs(netutils_t)
4fc91539 73
15722ec9 74domain_use_interactive_fds(netutils_t)
4fc91539 75
8fd36732 76files_read_etc_files(netutils_t)
4fc91539 77# for nscd
c9428d33 78files_dontaudit_search_var(netutils_t)
4fc91539 79
1c1ac67f 80init_use_fds(netutils_t)
1815bad1 81init_use_script_ptys(netutils_t)
ab940a4c 82
74993c4d
CP
83auth_use_nsswitch(netutils_t)
84
c9428d33 85logging_send_syslog_msg(netutils_t)
4fc91539
CP
86
87miscfiles_read_localization(netutils_t)
88
44dc1b9c 89term_dontaudit_use_console(netutils_t)
296273a7 90userdom_use_user_terminals(netutils_t)
15722ec9 91userdom_use_all_users_fds(netutils_t)
4fc91539 92
bb7170f6 93optional_policy(`
ab940a4c
CP
94 nis_use_ypbind(netutils_t)
95')
4fc91539 96
74993c4d
CP
97optional_policy(`
98 vmware_append_log(netutils_t)
99')
100
d9845ae9
CP
101optional_policy(`
102 xen_append_log(netutils_t)
103')
104
4fc91539
CP
105########################################
106#
107# Ping local policy
108#
109
8f882ffc 110allow ping_t self:capability { setuid net_raw };
4fc91539 111dontaudit ping_t self:capability sys_tty_config;
dc67f782 112allow ping_t self:tcp_socket create_socket_perms;
4fc91539 113allow ping_t self:rawip_socket { create ioctl read write bind getopt setopt };
0e1c461e 114allow ping_t self:packet_socket { create ioctl read write bind getopt setopt };
74993c4d 115allow ping_t self:netlink_route_socket create_netlink_socket_perms;
4fc91539 116
19006686
CP
117corenet_all_recvfrom_unlabeled(ping_t)
118corenet_all_recvfrom_netlabel(ping_t)
668b3093
CP
119corenet_tcp_sendrecv_generic_if(ping_t)
120corenet_raw_sendrecv_generic_if(ping_t)
c1262146
CP
121corenet_raw_sendrecv_generic_node(ping_t)
122corenet_tcp_sendrecv_generic_node(ping_t)
123corenet_raw_bind_generic_node(ping_t)
0fd9dc55 124corenet_tcp_sendrecv_all_ports(ping_t)
4fc91539 125
0fd9dc55 126fs_dontaudit_getattr_xattr_fs(ping_t)
4fc91539 127
15722ec9 128domain_use_interactive_fds(ping_t)
4fc91539 129
8fd36732 130files_read_etc_files(ping_t)
c9428d33 131files_dontaudit_search_var(ping_t)
4fc91539 132
da04234f
CP
133kernel_read_system_state(ping_t)
134
74993c4d
CP
135auth_use_nsswitch(ping_t)
136
c0868a7a
CP
137logging_send_syslog_msg(ping_t)
138
27c570f7
CP
139miscfiles_read_localization(ping_t)
140
296273a7
CP
141userdom_use_user_terminals(ping_t)
142
cf6a7d89 143ifdef(`hide_broken_symptoms',`
1c1ac67f 144 init_dontaudit_use_fds(ping_t)
a65fd90a
CP
145
146 optional_policy(`
147 nagios_dontaudit_rw_pipes(ping_t)
148 ')
cf6a7d89
CP
149')
150
da04234f
CP
151optional_policy(`
152 munin_append_log(ping_t)
153')
154
bb7170f6 155optional_policy(`
15722ec9 156 pcmcia_use_cardmgr_fds(ping_t)
cf6a7d89
CP
157')
158
bb7170f6 159optional_policy(`
1c1ac67f 160 hotplug_use_fds(ping_t)
ebdc3b79
CP
161')
162
4fc91539
CP
163########################################
164#
165# Traceroute local policy
166#
167
168allow traceroute_t self:capability { net_admin net_raw setuid setgid };
dc67f782
CP
169allow traceroute_t self:rawip_socket create_socket_perms;
170allow traceroute_t self:packet_socket create_socket_perms;
8f882ffc 171allow traceroute_t self:udp_socket create_socket_perms;
4fc91539
CP
172
173kernel_read_system_state(traceroute_t)
174kernel_read_network_state(traceroute_t)
175
19006686
CP
176corenet_all_recvfrom_unlabeled(traceroute_t)
177corenet_all_recvfrom_netlabel(traceroute_t)
668b3093
CP
178corenet_tcp_sendrecv_generic_if(traceroute_t)
179corenet_udp_sendrecv_generic_if(traceroute_t)
180corenet_raw_sendrecv_generic_if(traceroute_t)
c1262146
CP
181corenet_tcp_sendrecv_generic_node(traceroute_t)
182corenet_udp_sendrecv_generic_node(traceroute_t)
183corenet_raw_sendrecv_generic_node(traceroute_t)
0fd9dc55
CP
184corenet_tcp_sendrecv_all_ports(traceroute_t)
185corenet_udp_sendrecv_all_ports(traceroute_t)
c1262146
CP
186corenet_udp_bind_generic_node(traceroute_t)
187corenet_tcp_bind_generic_node(traceroute_t)
8f882ffc 188# traceroute needs this but not tracepath
c1262146 189corenet_raw_bind_generic_node(traceroute_t)
165b42d2 190corenet_udp_bind_traceroute_port(traceroute_t)
2705f9a0 191corenet_tcp_connect_all_ports(traceroute_t)
9d0c9b3e
CP
192corenet_sendrecv_all_client_packets(traceroute_t)
193corenet_sendrecv_traceroute_server_packets(traceroute_t)
4fc91539 194
0fd9dc55 195fs_dontaudit_getattr_xattr_fs(traceroute_t)
4fc91539 196
15722ec9 197domain_use_interactive_fds(traceroute_t)
4fc91539 198
8fd36732 199files_read_etc_files(traceroute_t)
c9428d33 200files_dontaudit_search_var(traceroute_t)
4fc91539 201
165b42d2
CP
202init_use_fds(traceroute_t)
203
74993c4d
CP
204auth_use_nsswitch(traceroute_t)
205
c9428d33 206logging_send_syslog_msg(traceroute_t)
4fc91539
CP
207
208miscfiles_read_localization(traceroute_t)
209
296273a7
CP
210userdom_use_user_terminals(traceroute_t)
211
4fc91539 212#rules needed for nmap
f0c985ca
KM
213dev_read_rand(traceroute_t)
214dev_read_urand(traceroute_t)
c9428d33 215files_read_usr_files(traceroute_t)