Sambaを使用してSELinuxを構成する方法は?科学的なLinuxか。

Sambaを使用してSELinuxを構成する方法は?科学的なLinuxか。

読み取り専用Samba共有をマウントしようとすると、Sambaサーバーにこのメッセージ(クライアントタイムアウト)が表示されます。

Nov  5 18:45:49 localhost kernel: type=1400 audit(1352137549.469:17): avc:  denied  { module_request } for  pid=3046 comm="smbd" kmod="net-pf-10" scontext=unconfined_u:system_r:smbd_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=system

私は努力しました:

setsebool -P samba_export_all_ro 1
getsebool -a | egrep -i 'smb|samba'
yum install policycoreutils-python
semanage fcontext -a -t samba_share_t '/PATH/TO/SAMBASHARE(/.*)?'
restorecon -R /PATH/TO/SAMBASHARE
/etc/init.d/smb restart

読み取り専用 Samba 共有を許可するように SELinux を構成するにはどうすればよいですか? SELinuxをオフにするのは愚かなことです。

修正する:

[root@SERVER ~]# getsebool -a|grep -i smbd
allow_smbd_anon_write --> off
[root@SERVER ~]# setsebool -P smbd_disable_trans 1
libsemanage.dbase_llist_set: record not found in the database
libsemanage.dbase_llist_set: could not set record value
Could not change boolean smbd_disable_trans
Could not change policy booleans

答え1

smbdがカーネルモジュールを自動ロードしようとしているようです。これはモジュールが合理的に予想されないため、SELinuxでは許可されていないようですnet-pf-10ipv6習慣ロードされます(またはIPv6が無効なIPv6バインディングが必要です)。

この問題を解決する方法は少なくとも2つあります。

  1. システム全体でIPv6を再度有効にします(ほぼ確実に無効にしたため、これはIPv6の無効化によって引き起こされる可能性がある多くの問題の1つにすぎません)。
  2. IPv6 アドレスにバインドしようとしないように Samba を再構成します。目的のIPv4アドレスにのみバインドするようにinterfaces行を変更します。smb.conf一例:

    interfaces = 127.0.0.1 198.51.100.87
    bind interfaces only = yes
    

関連情報