請問一個關於vsftpd用戶設置的問題
我的conf文件如下
listen=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
anon_root=/home/ftp
我設置了一個用戶ftpuser
passwd文件時這樣的
ftpuser:x:1002:1004::/home/ftp/ftp1:/bin/sh
我設置了/home/ftp/ftp1 的許可權后,我在ftp客戶端可以登錄,各種許可權都有,但我想去掉ftpuser登錄shell的許可權,我修改:/bin/sh 為:/sbin/nologin
重啟vsftpd服務后,ftpuser用戶就登錄不了ftp了,改回來就可以,請問是什麼原因呢
《解決方案》
用虛擬用戶
《解決方案》
主要是想搞清楚,這樣設有什麼地方不對
《解決方案》
弄清楚了~~加上echo "/sbin/nologin" >> /etc/shells
《解決方案》
vsftpd會檢測用戶的shell是否登記於/etc/shells文件中,而默認的/etc/shells沒有nologin的記錄