我在使用 ssh 远程登录计算机时遇到问题。它允许我输入用户名,但当我输入密码时,我收到“拒绝访问”提示。我可以使用相同的用户名/密码在本地登录,并且我之前使用相同的用户名/密码成功地远程登录了同一台计算机。这不是 Caps Lock 键的问题。
我该如何调试此问题并找出拒绝的原因?我在盒子上有根权限,并且可以本地访问它。
- - 更新
我找到了页面OpenSSH 日志记录维基非常有帮助并且有助于解决问题。
问题是我把 sshd 端口改成了另一个数字,然后就忘了。奇怪的是,sshd 仍然在监听 22 端口,但只是拒绝该端口上的任何登录尝试。不知道为什么会这样。
答案1
你有没有尝试过:
ssh -v <host>
ssh -vv <host>
ssh -vvv <host>
这就是我开始调试该问题的地方。
答案2
客户端调试:
ssh -vvv
服务器端调试:
tail -f /var/log/secure
答案3
默认情况下,大多数发行版都禁用 SSH 根访问权限。出于安全考虑,我建议保持此设置不变,只使用您暂时授予根访问权限的其他 SSH 帐户。但是,如果您确实希望通过 SSH 使用根帐户进行访问,请先打开/etc/ssh/sshd_config
:
# vi /etc/ssh/sshd_config
接下来,注释掉PermitRootLogin
:
# PermitRootLogin no
最后重启 ssh:
# /etc/init.d/sshd restart