我的任务是设置一个centOS 6.2开发盒(即使我不知道linux),目前正在使用vsftpd将FTP转换成工作盒。问题是sftp无效。
身份验证失败。错误:严重错误错误:无法连接 到服务器
这是我得到的错误。
我通过执行以下操作添加了用户:
sudo useradd -d /var/www/PATH -s /usr/sbin/nologin USERNAME
sudo passwd USERNAME
sudo chown -R USERNAME /var/www/ PATH
sudo chmod 755 /var/www/PATH
它适用于ftp(并且文件夹结构被监禁)但它不适用于sftp。
但是,当我以下列方式添加用户时:
sudo useradd USERNAME
sudo passwd USERNAME
sudo chown –R USERNAME /opt/USERNAME
sudo chmod 777 /opt/USERNAME
我有sftp访问权限,没有FTP访问权限。
如果我必须创建多个帐户(一个用于ftp,一个用于sftp),它们必须被绑定到目录。
如果对我的问题有更好的解决方案,欢迎提供帮助!
谢谢,
马特
答案 0 :(得分:1)
你很好。
就我个人而言,我正在使用这里描述的sftp用户的chroot:http://www.thegeekstuff.com/2012/03/chroot-sftp-setup/
恕我直言的文章并没有说明用户的主目录必须由root拥有
# ls -ld /var/www/PATH
drwxr-xr-x 3 root root 4096 Dec 28 23:49 /var/www/PATH
您可以从日志中获取大量有用的信息,在这种情况下您可以搜索
tail -f /var/log/secure
从外部主机连接时。
如果您对此问题有任何帮助,请与我们联系。
答案 1 :(得分:0)
我已经为此创建了一个脚本,您可以使用它所使用的分发版本,它既适用于基于RHEL又适用于Deb,也可以创建一个没有shell访问权限的监禁SFTP目录,只有SFTP