diff options
Diffstat (limited to 'recipes-security/refpolicy/refpolicy/0059-policy-modules-services-rpc-fix-policy-for-nfsserver.patch')
-rw-r--r-- | recipes-security/refpolicy/refpolicy/0059-policy-modules-services-rpc-fix-policy-for-nfsserver.patch | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/recipes-security/refpolicy/refpolicy/0059-policy-modules-services-rpc-fix-policy-for-nfsserver.patch b/recipes-security/refpolicy/refpolicy/0059-policy-modules-services-rpc-fix-policy-for-nfsserver.patch new file mode 100644 index 0000000..d4bdd37 --- /dev/null +++ b/recipes-security/refpolicy/refpolicy/0059-policy-modules-services-rpc-fix-policy-for-nfsserver.patch | |||
@@ -0,0 +1,78 @@ | |||
1 | From fbf98576f32e33e55f3babeb9db255a459fad711 Mon Sep 17 00:00:00 2001 | ||
2 | From: Xin Ouyang <Xin.Ouyang@windriver.com> | ||
3 | Date: Fri, 23 Aug 2013 12:01:53 +0800 | ||
4 | Subject: [PATCH] policy/modules/services/rpc: fix policy for nfsserver to | ||
5 | mount nfsd_fs_t | ||
6 | |||
7 | Upstream-Status: Inappropriate [embedded specific] | ||
8 | |||
9 | Signed-off-by: Xin Ouyang <Xin.Ouyang@windriver.com> | ||
10 | Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com> | ||
11 | Signed-off-by: Yi Zhao <yi.zhao@windriver.com> | ||
12 | --- | ||
13 | policy/modules/kernel/kernel.te | 2 ++ | ||
14 | policy/modules/services/rpc.fc | 2 ++ | ||
15 | policy/modules/services/rpc.te | 2 ++ | ||
16 | policy/modules/services/rpcbind.te | 6 ++++++ | ||
17 | 4 files changed, 12 insertions(+) | ||
18 | |||
19 | diff --git a/policy/modules/kernel/kernel.te b/policy/modules/kernel/kernel.te | ||
20 | index c8218bf8c..44c031a39 100644 | ||
21 | --- a/policy/modules/kernel/kernel.te | ||
22 | +++ b/policy/modules/kernel/kernel.te | ||
23 | @@ -356,6 +356,8 @@ mls_process_read_all_levels(kernel_t) | ||
24 | mls_process_write_all_levels(kernel_t) | ||
25 | mls_file_write_all_levels(kernel_t) | ||
26 | mls_file_read_all_levels(kernel_t) | ||
27 | +mls_socket_write_all_levels(kernel_t) | ||
28 | +mls_fd_use_all_levels(kernel_t) | ||
29 | |||
30 | ifdef(`distro_redhat',` | ||
31 | # Bugzilla 222337 | ||
32 | diff --git a/policy/modules/services/rpc.fc b/policy/modules/services/rpc.fc | ||
33 | index 6d3c9b68b..75999a57c 100644 | ||
34 | --- a/policy/modules/services/rpc.fc | ||
35 | +++ b/policy/modules/services/rpc.fc | ||
36 | @@ -1,7 +1,9 @@ | ||
37 | /etc/exports -- gen_context(system_u:object_r:exports_t,s0) | ||
38 | |||
39 | /etc/rc\.d/init\.d/nfs -- gen_context(system_u:object_r:nfsd_initrc_exec_t,s0) | ||
40 | +/etc/rc\.d/init\.d/nfsserver -- gen_context(system_u:object_r:nfsd_initrc_exec_t,s0) | ||
41 | /etc/rc\.d/init\.d/nfslock -- gen_context(system_u:object_r:rpcd_initrc_exec_t,s0) | ||
42 | +/etc/rc\.d/init\.d/nfscommon -- gen_context(system_u:object_r:rpcd_initrc_exec_t,s0) | ||
43 | /etc/rc\.d/init\.d/rpcidmapd -- gen_context(system_u:object_r:rpcd_initrc_exec_t,s0) | ||
44 | |||
45 | /usr/bin/rpc\..* -- gen_context(system_u:object_r:rpcd_exec_t,s0) | ||
46 | diff --git a/policy/modules/services/rpc.te b/policy/modules/services/rpc.te | ||
47 | index c06ff803f..7c0b37ddc 100644 | ||
48 | --- a/policy/modules/services/rpc.te | ||
49 | +++ b/policy/modules/services/rpc.te | ||
50 | @@ -250,6 +250,8 @@ storage_raw_read_removable_device(nfsd_t) | ||
51 | |||
52 | miscfiles_read_public_files(nfsd_t) | ||
53 | |||
54 | +mls_file_read_to_clearance(nfsd_t) | ||
55 | + | ||
56 | tunable_policy(`allow_nfsd_anon_write',` | ||
57 | miscfiles_manage_public_files(nfsd_t) | ||
58 | ') | ||
59 | diff --git a/policy/modules/services/rpcbind.te b/policy/modules/services/rpcbind.te | ||
60 | index 4f110773a..3cc85a8d5 100644 | ||
61 | --- a/policy/modules/services/rpcbind.te | ||
62 | +++ b/policy/modules/services/rpcbind.te | ||
63 | @@ -73,6 +73,12 @@ logging_send_syslog_msg(rpcbind_t) | ||
64 | |||
65 | miscfiles_read_localization(rpcbind_t) | ||
66 | |||
67 | +# nfsd_t would not be allowed to send unix_stream_socket to rpcbind_t, | ||
68 | +# because the are running in different level. So add rules to allow this. | ||
69 | +mls_socket_read_all_levels(rpcbind_t) | ||
70 | +mls_socket_write_all_levels(rpcbind_t) | ||
71 | +mls_file_read_to_clearance(rpcbind_t) | ||
72 | + | ||
73 | ifdef(`distro_debian',` | ||
74 | term_dontaudit_use_unallocated_ttys(rpcbind_t) | ||
75 | ') | ||
76 | -- | ||
77 | 2.17.1 | ||
78 | |||