[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

NFS et SElinux



Bonjour,

Je fais mes premiers pas avec SElinux sous un système Etch à jour.
J'ai suivi les procédures décrites sur le [0]wiki et sur le [1]blog de
Russel Coker.

J'ai pour l'instant un problème avec NFS. Le daemon ne démarre pas si
j'active SElinux (echo 1 > /selinux/enforce):
# /etc/init.d/nfs-kernel-server restart
Stopping NFS kernel daemon: mountd nfsd.
Unexporting directories for NFS kernel daemon....
mount: block device nfsd is write-protected, mounting read-only
mount: cannot mount block device nfsd read-only
Exporting directories for NFS kernel daemon....
Starting NFS kernel daemon: nfsd mountd.

Voici les audits:
Apr  1 08:50:52 hestia kernel: audit(1175410252.866:82): avc:  denied  { getattr } for  pid=4771 comm="mountpoint" name="/" dev=nfsd ino=8971 scontext=user_u:system_r:mount_t:s0 tcontext=system_u:object_r:nfsd_fs_t:s0 tclass=dir
Apr  1 08:50:52 hestia kernel: audit(1175410252.934:83): avc:  denied  { search } for  pid=4771 comm="mountpoint" name="/" dev=nfsd ino=8971 scontext=user_u:system_r:mount_t:s0 tcontext=system_u:object_r:nfsd_fs_t:s0 tclass=dir
Apr  1 08:50:53 hestia kernel: audit(1175410252.998:84): avc:  denied  { getattr } for  pid=4772 comm="exportfs" name="/" dev=dm-5 ino=2 scontext=user_u:system_r:nfsd_t:s0 tcontext=system_u:object_r:home_root_t:s0 tclass=dir
Apr  1 08:50:53 hestia kernel: audit(1175410253.062:85): avc:  denied  { search } for  pid=4772 comm="exportfs" name="/" dev=dm-5 ino=2 scontext=user_u:system_r:nfsd_t:s0 tcontext=system_u:object_r:home_root_t:s0 tclass=dir
Apr  1 08:50:53 hestia kernel: audit(1175410253.126:86): avc:  denied  { getattr } for  pid=4772 comm="exportfs" name="media" dev=dm-5 ino=2976065 scontext=user_u:system_r:nfsd_t:s0 tcontext=user_u:object_r:user_home_dir_t:s0 tclass=dir
Apr  1 08:50:53 hestia kernel: NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
Apr  1 08:50:53 hestia kernel: NFSD: starting 90-second grace period

# ps -Zef | grep [n]fs
system_u:system_r:kernel_t:s0   root      4778     6  0 08:50 ?        00:00:00 [nfsd4]
system_u:system_r:kernel_t:s0   root      4779     1  0 08:50 ?        00:00:00 [nfsd]
system_u:system_r:kernel_t:s0   root      4780     1  0 08:50 ?        00:00:00 [nfsd]
system_u:system_r:kernel_t:s0   root      4781     1  0 08:50 ?        00:00:00 [nfsd]
system_u:system_r:kernel_t:s0   root      4782     1  0 08:50 ?        00:00:00 [nfsd]
system_u:system_r:kernel_t:s0   root      4783     1  0 08:50 ?        00:00:00 [nfsd]
system_u:system_r:kernel_t:s0   root      4784     1  0 08:50 ?        00:00:00 [nfsd]
system_u:system_r:kernel_t:s0   root      4785     1  0 08:50 ?        00:00:00 [nfsd]
system_u:system_r:kernel_t:s0   root      4786     1  0 08:50 ?        00:00:00 [nfsd]
user_u:system_r:nfsd_t:s0       root      4791     1  0 08:50 ?        00:00:00 /usr/sbin/rpc.mountd


Il semblerait que portmap soit confiné malgré le chargement du module requis :
Apr  1 08:52:33 hestia kernel: audit(1175410352.980:93): avc:  denied  { getattr } for  pid=4882 comm="rpc.mountd" name="/" dev=dm-5 ino=2 scontext=user_u:system_r:nfsd_t:s0 tcontext=system_u:object_r:home_root_t:s0 tclass=dir
Apr  1 08:52:33 hestia kernel: audit(1175410353.044:94): avc:  denied  { getattr } for  pid=4882 comm="rpc.mountd" name="/" dev=dm-5 ino=2 scontext=user_u:system_r:nfsd_t:s0 tcontext=system_u:object_r:home_root_t:s0 tclass=dir
Apr  1 08:52:58 hestia kernel: audit(1175410378.290:95): avc:  denied  { read write } for  pid=4890 comm="pmap_dump" name="1" dev=devpts ino=3 scontext=user_u:system_r:portmap_helper_t:s0 tcontext=user_u:object_r:initrc_devpts_t:s0 tclass=chr_file
Apr  1 08:52:58 hestia kernel: audit(1175410378.350:96): avc:  denied  { read write } for  pid=4890 comm="pmap_dump" name="1" dev=devpts ino=3 scontext=user_u:system_r:portmap_helper_t:s0 tcontext=user_u:object_r:initrc_devpts_t:s0 tclass=chr_file
Apr  1 08:52:58 hestia kernel: audit(1175410378.414:97): avc:  denied  { read write } for  pid=4890 comm="pmap_dump" name="1" dev=devpts ino=3 scontext=user_u:system_r:portmap_helper_t:s0 tcontext=user_u:object_r:initrc_devpts_t:s0 tclass=chr_file
Apr  1 08:52:59 hestia kernel: audit(1175410379.510:98): avc:  denied  { read write } for  pid=4905 comm="pmap_set" name="1" dev=devpts ino=3 scontext=user_u:system_r:portmap_helper_t:s0 tcontext=user_u:object_r:initrc_devpts_t:s0 tclass=chr_file
Apr  1 08:52:59 hestia kernel: audit(1175410379.574:99): avc:  denied  { read write } for  pid=4905 comm="pmap_set" name="1" dev=devpts ino=3 scontext=user_u:system_r:portmap_helper_t:s0 tcontext=user_u:object_r:initrc_devpts_t:s0 tclass=chr_file
Apr  1 08:52:59 hestia kernel: audit(1175410379.642:100): avc:  denied  { read write } for  pid=4905 comm="pmap_set" name="1" dev=devpts ino=3 scontext=user_u:system_r:portmap_helper_t:s0 tcontext=user_u:object_r:initrc_devpts_t:s0 tclass=chr_file
Apr  1 08:52:59 hestia portmap[4906]: connect from 127.0.0.1 to set(nfs): request from unprivileged port

Malgré mes recherches, je n'ai rien pu trouver, si ce n'est de
désactiver l'appel à rpcinfo dans /etc/init.d/nfs-kernel-server comme
indiqué sur http://www.coker.com.au/selinux/tweaks.html

Ce changement n'a apparemment pas lieu d'être, car les appels à rpcinfo
ne donnent lieu à aucun message d'audit de SElinux.

Avez-vous une idée ?

Julien


[0] http://wiki.debian.org/SELinux
[1] http://etbe.blogspot.com/2006/12/se-linux-on-debian-in-5-minutes.html




Reply to: