我正在尝试在我的 vps 上配置 vsftpd,以便从 Transmit/FileZilla 访问 SFTP。我选择了 SFTP,并且配置了 OpenSSL,但我似乎无法添加仅用于 FTP 访问的新用户并将其限制为仅用于 /home 目录。
因此,/home 是我保存 WWW 服务器文件的地方,并且我希望新用户拥有该目录的完全访问权限 (chroot)。
vsftpd 现在能够允许 root 用户访问 ftp,但我想限制仅为特定用户名允许 SFTP 访问。
来自 vsftpd.conf 的一些信息:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
chroot_list_file=/etc/vsftpd/chroot_list
local_root=/home
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/vsftpd/vsftpd.pem
chroot_list 是我添加用户“max”来访问 FTP 的文件,但在我多次尝试让其访问 SFTP 之后,我删除了该用户。
vsftpd 允许新用户登录,但输入密码时失败。root 没问题。
此外,是否有任何更改可以允许特定 IP 地址访问 SFTP?
谢谢。
答案1
抱歉,但看起来您混淆了协议。即 SFTP 和 FTPS。SFTP 用于 SSH,FTPS 用于 FTP 服务器。
如果你真的想锁定用户。添加 /usr/sbin/nologin /etc/shells(这将停止 SSH 访问)将你的用户“max”添加到 /etc/vsftpd/chroot_list
配置 filezilla 以使用 FTPS
答案2
为了使 sftp chroot 正常工作,你可以忘记 vsftpd,只需配置 openssh 即可 -http://www.techrepublic.com/blog/opensource/chroot-users-with-openssh-an-easier-way-to-confine-users-to-their-home-directories/229