我已在 Ubuntu 14.04 服务器上启用基于 SSH 密钥的身份验证,禁用使用 SSH 的 root 登录,并且可以使用我的用户帐户使用基于 SSH 密钥的身份验证成功连接巴拉巴拉在我的 Mac SSH 客户端上。
但是,为了测试使用密码身份验证的 SSH 登录,我在 Filezilla 中使用 SFTP 登录作为用户帐户巴拉巴拉使用它的密码,它允许我登录而无需任何基于 SSH 密钥的身份验证。
文件/etc/ssh/sshd_config
如下。如您所见,我已禁用PasswordAuthentication
.sudo service ssh restart
修改此配置文件后,我已经使用重新启动了 sshd 守护进程。任何想法为什么会发生这种情况?
Port 8888
Protocol 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
UsePrivilegeSeparation yes
KeyRegenerationInterval 3600
ServerKeyBits 1024
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 120
PermitRootLogin no
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
PasswordAuthentication no
X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
AcceptEnv LANG LC_*
Subsystem sftp /usr/lib/openssh/sftp-server
UsePAM no
AllowUsers blahblah
答案1
通过查看 /var/log/auth.log,可以验证 Mac 客户端上的 Filezilla 实际上似乎使用的是 Mac SSH 代理,而不是在那里输入的密码。
通过尝试通过另一台计算机上的 SFTP 连接但失败,验证了 SFTP 正在使用 SSH 密钥身份验证。