답변:
다음 줄이 있는지 확인하십시오
chroot_local_user=YES
사용자 HOME Directory를로 설정하십시오. /var/www/
기존 사용자를 변경하려면 다음을 사용할 수 있습니다.
usermod --home /var/www/ username
그런 다음 필요한 권한을 설정하십시오. /var/www/
user_sub_token
사용자의 홈 디렉토리를 변경하지 않으려면 다음을 사용할 수 있습니다.
chroot_local_user=YES
local_root=/ftphome/$USER
user_sub_token=$USER
user_sub_token
:템플릿을 기반으로 각 가상 사용자에 대한 홈 디렉토리를 자동으로 생성합니다. 예를 들어 guest_username을 통해 지정된 실제 사용자의 홈 디렉토리가 / ftphome / $ USER이고 user_sub_token이 $ USER로 설정되어 있으면 가상 사용자 테스트가 로그인 될 때 (일반적으로 chroot () 'ed) / ftphome / test 디렉토리 local_root에 user_sub_token이 포함 된 경우에도이 옵션이 적용됩니다.
디렉토리를 작성하고 권한을 설정하십시오.
mkdir -p /ftphome/{test,user1,user2}
chmod 770 -R /ftphome
chown -R ftp. /ftphome
usermod -G ftp test
다시 시작 vsftpd
하고 설정을 테스트하십시오.
샘플 성공 출력 :
[root@mail tmp]# ftp localhost
Connected to mail.linuxian.local.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): test
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mput vhosts
mput vhosts?
227 Entering Passive Mode (127,0,0,1,146,41)
150 Ok to send data.
226 File receive OK.
24 bytes sent in 3.3e-05 seconds (7.1e+02 Kbytes/s)
ftp> ls -rlt
227 Entering Passive Mode (127,0,0,1,97,90)
150 Here comes the directory listing.
-rw-r--r-- 1 787 787 24 Oct 11 19:57 vhosts
226 Directory send OK.
ftp> 221 Goodbye.
$USER
for 뒤에 접미사를 사용할 수 있습니다 ( local_root
예 : /home/$USER/ftp
사용자를 ftp
홈 디렉토리의 하위 디렉토리로 chroot합니다 ).
local_root
실제 홈 디렉토리에 넣을 경우에 매우 가능성이 높습니다 .
당신은 이것을 할 수 있습니다 :
usermod --home /var/www/ username
위의 Rahul Patil의 제안을 사용했습니다.
chroot_local_user=YES
local_root=/home/$USER/www-data
user_sub_token=$USER
그러나 왜 한 명의 사용자로만 로그인 할 수 있었는지 이해할 수 없었습니다. 그런 다음 /home/$USER/www-data
쓰기 권한 이있는 루트 디렉토리 (이 경우 )에 chroot 할 수 없다는 것을 알았습니다 . 따라서 다음을 사용하여 쓰기 권한을 제거합니다.
# chmod a-w /home/$USER/www-data
참고 :$USER
사용자와 함께 변경 하십시오.
의 chroot
옵션을 확인하고 vsftpd.conf
homedir이로 설정된 별도의 사용자를 작성하십시오 /var/www
.
chroot
옵션을 확인하고vsftpd.conf
homedir이로 설정된 별도의 사용자를 작성하십시오/var/www
.