초보자
안녕하세요,
그래서 학교 과제를 완료하기 위해 OpenSUSE에 FTP 서버(vsftp)를 설정해야 했습니다. 선생님이 chroot list를 사용하라고 했는데, chroot list를 사용할 때마다 모든 사용자가 전체 파일 시스템에 대한 모든 권한을 갖게 됩니다. 내가 뭘 잘못했나요?
상태 데이터가 포함된 디렉터리입니다. 이 디렉토리에는 2개의 다른 디렉토리가 있습니다. 그 중 하나는 헤르만의 것이었고, 다른 하나는 프란츠의 것이었습니다. Franz와 Herman은 각자의 디렉토리에서 작업할 수 있어야 하므로 저는 그들의 홈 디렉토리를 각자의 디렉토리(/data/Franz 및 /data/Herman)로 지정했습니다. Herman은 Franz의 디렉토리에서 읽거나 쓸 수 없어야 하며, 그 반대의 경우도 마찬가지입니다. 마지막으로 디렉토리의 권리와 소유권을 다음과 같이 변경했습니다.
drwxrwxr-x 15 Herman FTP 4096 May 13 15:23 Herman
drwxrwxr-x 18 Franz FTP 4096 May 13 14:48 Franz
이것이 내가 파일에서 변경한 내용입니다 vsftpd.conf
. 그 외에는 모든 것이 그대로 유지되며 기본값입니다.
write_enable = YES
local_enable = YES
chroot_local_user = YES
allow_writeable_chroot = YES
anonymous_enable = NO
listen = YES
listen_ipv6 = NO (we may do not use IPv6)
chroot_list_enable=YES
chroot_list에 원하는 모든 사용자가 포함된 파일을 주석 해제하고 생성해 보았습니다 . 이것은 일을 망가뜨리는 것 같습니다. 내가 모든 것에 대한 주석을 해제할 때마다chroot_lists, 예상대로 작동하지만 선생님에 따르면 "잘못되었습니다". 자세히 설명을 안해주셔서 여기에 질문드립니다!
누구든지 나를 올바른 방향으로 밀어줄 수 있나요? 감사해요:)
정말 감사합니다 <3
답변1
발견된 문서에는 man vsftpd.conf
다음과 같은 내용이 적혀 있었습니다.
chroot_list_enable
활성화되면 로그인 시 홈 디렉터리의 chroot() 감옥에 배치될 로컬 사용자 목록을 제공할 수 있습니다.
여태까지는 그런대로 잘됐다. 그런데 계속해서,
chroot_local_user
로 설정하면 의미가 약간 달라집니다YES
. 이 경우 목록은 chroot() 감옥에 배치되지 않은 사용자 목록이 됩니다. [...]
계속 읽으면 다음 설명을 볼 수 있습니다 chroot_local_user
.
chroot_local_user
로 설정하면YES
로컬 사용자는 (기본적으로) 로그인 후 홈 디렉터리의 chroot() 감옥에 배치됩니다. [...]
귀하의 구성에서 활성화한 것을 볼 수 있습니다 chroot_local_user = YES
.chroot_list_enable=YES
chroot_list에서 원하는 모든 사용자가 포함된 파일을 주석 해제 하고 생성합니다."실제로 사용자 파일을 생성하고 있습니다.원하지 않는다chroot 환경에서.