ISOファイルがマウントされているディレクトリへの匿名FTPアクセスを許可するのに問題があります。
- 変更なし
/etc/vsftpd/vsftpd.conf
- RHEL 6.5 DVD ISOファイルが次に保存されました。
/var/ftp/pub/ISO/rhel6_5.iso
- 匿名ユーザーはこのISOファイルを見ることができます。
- ディレクトリを作成しました。
/var/ftp/pub/rhel
- ISOファイルをマウントしました。
mount -o loop,ro /var/ftp/pub/ISO/rhel6_5.iso /var/ftp/pub/rhel
rhel
しかし、匿名のFTPユーザーは何らかの理由でディレクトリを見ることができません。どんなアイデアがありますか?
私はこの指示に従った。vsftpdシンボリックリンクしかし、私にとってはうまくいきません。/var/ftp/pub/rhel
ISOファイルをマウントすると、匿名FTPユーザーからディレクトリが消えます。
ls -lZ
出力は次のとおりです。また、ISOファイルがマウントされるとSELinuxコンテキストが変更されることも確認しました。
[root@citest pub]# ls -lZ
drwxr-xr-x. root root unconfined_u:object_r:public_content_t:s0 ISO
drwxr-xr-x. root root unconfined_u:object_r:public_content_t:s0 rhel
答え1
約3時間後になぜ動作しないのかを考え出したようです。
public_content_t
FTPサーバーを介して共有されるファイルは、ユーザーのホームディレクトリに関連付けられておらず、ホームディレクトリとして適切で/var/ftp/pub
ないと思われる場合を除き、Selinuxコンテキストが必要です。
ISOファイルをマウントすると、rhelのセキュリティコンテキストが変更され、system_u:object_r:iso9660_t:s0
ISOファイルは読み取り専用でのみマウントできるため、セキュリティコンテキストを変更できません。
また、次の点に注意してください。/var/log/audit/audit.log
type=AVC msg=audit(1404397698.292:182): avc: denied { getattr } for pid=2671 comm="vsftpd" path="/pub/ISO/rhel" dev=loop1 ino=1856 scontext=unconfined_u:system_r:ftpd_t:s0-s0:c0.c1023 tcontext=system_u:object_r:iso9660_t:s0 tclass=dir
selinuxを無効にしてvsftpdを再起動すると、すべてがうまく機能します。
答え2
私は仮想CDROMにISOイメージを添付した仮想マシンを持っています。これはあなたとほぼ同じ設定です。
この行を追加しました。/etc/fstab
/dev/cdrom /repo iso9660 rootcontext=system_u:object_r:public_content_t:s0,context=system_u:object_r:public_content_t:s0 0 0
mount(8) で selinux オプションを検索する
FTPユーザー設定:
# getent passwd ftp
ftp:x:14:50:FTP User:/repo:/sbin/nologin