
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