我使用的是 Ubuntu 18.04,今天我使用 openssh 为我的服务器安装了 sftp 服务器。我按照互联网上的说明操作,一切都很好,他们说我必须将这些代码添加到 sshd_config 文件中:
Match group sftp
ChrootDirectory /home
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
PubkeyAuthentication yes
我这样做了,但服务器无法连接,filezilla 出现错误:“软件导致连接中止。无法连接到服务器”。在另一台计算机上尝试使用另一个版本的 filezilla,结果相同。但是,当我将该代码添加到文件 ssh_config 并从 sshd_config 中删除时。连接工作正常。这里有人知道为什么吗?
答案1
首先确保 /home 可以被 sftp 组访问(因为默认情况下不可访问)。
如果 sftp 组不起作用,请确保您确实使用密钥登录,您可以先通过终端上的 ssh 进行确认(或 Windows 上的 putty)
ssh -vvv [email protected]
默认情况下,只要您不使用 root 帐户,您就应该能够毫无问题地登录。
基本设置中最有趣的密钥通常是: -PubkeyAuthentication
能够使用密钥登录(也需要UsePAM yes
) -PermitRootLogin
如果你想使用 root 帐户登录 -PasswordAuthentication
允许/禁止使用密码验证