폴더에 대한 읽기/쓰기 액세스 권한이 있는 사용자의 ftp 계정을 설정하려고 합니다: /items/myuser
adduser 명령을 사용하여 Linux에서 사용자 이름 "myuser"로 계정을 설정했습니다. 그 후 /etc/vsftpd.conf 파일을 다음과 같이 변경했습니다.
chroot_local_user=NO
chroot_list_enable=YES
user_config_dir=/etc/vsftpd_user_conf
또한 /etc/vsftpd.chroot_list를 편집하고 이 목록에 "myuser"를 추가했습니다.
그 후 /etc/vsftpd_user_conf/myuser를 편집하고 다음 줄을 추가했습니다.
local_root = /items/myuser
그런 다음 이 local_root 폴더를 만들고 다음 명령을 실행했습니다.
chown myuser:myuser /items/myuser
chmod ug-w /items/myuser
mkdir /items/myuser/homefolder
mount --bind /items/myuser /items/myuser/homefolder
로그인할 수 있고 해당 폴더와 하위 폴더로 제한되어 있지만 파일에 쓰려고 하면 553 오류가 발생합니다.
내가 무엇을 잊었는지 아는 사람 있나요?
미리 감사드립니다!
답변1
사용자가 홈 페이지에 쓸 수 있는 기능을 제거합니다.
chmod ug-w /items/myuser
그런데, 이 바인드 마운트의 목적은 무엇입니까?
mount --bind /items/myuser /items/myuser/homefolder
답변2
이제 사용할 수 있어요. 인터넷에서 몇 가지를 검색해서 해결책을 찾았습니다. 내 local_root는 쓰기 불가능해야 하므로 이 쓰기 불가능 디렉터리에 쓰기 권한이 있는 하위 폴더를 만들었습니다. 루트 디렉터리만 쓰기 불가능하면 되기 때문입니다.