系统:Linux Ubuntu 10.04
我已经设置了一个 vsftpd 服务器,如果你通过浏览器登录,一切似乎都运行良好,但如果我使用 winscp 登录,那么我就可以导航出我自己的主目录,而该目录实际上受到配置文件的限制(如下)
有人知道为什么会发生这种情况吗?我需要确保没有人可以在我的服务器上翻找文件。
这是我的 VSFTPD 配置文件:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
chroot_local_user=NO
chroot_list_enable=YES
答案1
答案2
设置chroot_local_user
为YES
。之后chroot_list_file
将会有一个用户列表不是锁定到他们的主目录,因此除非您也有这样的用户,否则请禁用它。
答案3
谢谢你的建议。解决这个问题的办法首先是要明白 ftp 不是 sftp,正如 DarkDust 所说。我发现,通过使用使用 FTP 而不是 SFTP 的 Filezilla,一切都会按预期运行。但我没有意识到,如果您使用与 sftp 服务器相同的登录名,您可以导航到您想要的任何位置。我的解决方案是在 /etc/ssh/ 配置文件中添加“denyuser 用户名”,以限制 sftp 对服务器的访问。唯一的进入方式是只有 FTP,它可以像 VSFTPD 服务器配置那样工作!
再次感谢,
抢