--- 最新编辑 -----------------------------------
感谢所有提供帮助的人,但我仍然陷入困境。我现在很绝望。除了 sshd 之外,还有其他需要重启的进程吗?不知道该往哪个方向走?还有其他想法吗?
几个月来,我设法与 ssh 连接良好,但每次都必须输入密码。我现在忘记了我在 ssh 和 keygen 的初始设置方面走了多远。
无论如何,昨天我尝试正确安装密钥并查看此页面上的设置说明。
不得不说,我没有做防火墙相关的步骤。完成此命令后:
/etc/init.d/ssh reload
从那以后,我一直无法通过密钥或密码方式登录。幸运的是,我仍然打开了一个 ssh 终端会话,所以我仍然可以修补它,但没有设法修复它。今天早上 Internet 连接中断,因此会话消失了。这是我运行“ssh -p 30000 -v [email protected]”时得到的结果
OpenSSH_5.1p1, OpenSSL 0.9.7l 28 Sep 2006
debug1: Reading configuration data /Users/swamiatma/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: Connecting to ohlalaweb.com [173.45.225.154] port 30000.
debug1: Connection established.
debug1: identity file /Users/swamiatma/.ssh/identity type -1
debug1: identity file /Users/swamiatma/.ssh/id_rsa type 1
debug1: identity file /Users/swamiatma/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_4.7p1 Debian-8ubuntu1.2
debug1: match: OpenSSH_4.7p1 Debian-8ubuntu1.2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.1
debug1: SSH2_MSG_KEXINIT sent
Connection closed by 173.45.225.154
非常感谢 Slicehost 通过他们的管理面板提供了一个控制台,我可以通过它登录。请帮忙。第一要务,无论如何我如何登录:启用telnet,ssh密码登录等?
对这种紧急情况的回答会很好。接下来我想再次通过私钥/公钥登录的过程。我想我首先需要对这个过程有更多的了解。
编辑:这是我从 auth.log 收到的消息
Aug 7 10:14:39 ohlala sudo: pam_unix(sudo:session): session closed for user root
Aug 7 10:15:24 ohlala sshd[20217]: error: Could not load host key: /etc/ssh/ssh_host_rsa_key
Aug 7 10:15:24 ohlala sshd[20217]: error: Could not load host key: /etc/ssh/ssh_host_dsa_key
Aug 7 10:15:24 ohlala sshd[20218]: fatal: No supported key exchange algorithms
不知道我能做些什么。
编辑 2:按照 rkthkr 的建议,我重新生成了服务器密钥,这是我得到的新错误消息。
Aug 7 12:07:50 ohlala sudo: pam_unix(sudo:session): session opened for user root by deploy(uid=0)
Aug 7 12:07:50 ohlala sudo: pam_unix(sudo:session): session closed for user root
Aug 7 12:08:51 ohlala sshd[20362]: error: Could not load host key: /etc/ssh/ssh_host_rsa_key
Aug 7 12:08:51 ohlala sshd[20362]: error: Could not load host key: /etc/ssh/ssh_host_dsa_key
Aug 7 12:08:51 ohlala sshd[20363]: fatal: No supported key exchange algorithms
Aug 7 12:09:15 ohlala sudo: deploy : TTY=tty1 ; PWD=/home/deploy ; USER=root ; COMMAND=/usr/bin/tail -f /var/log/auth
.log -n 25
Aug 7 12:09:15 ohlala sudo: pam_unix(sudo:session): session opened for user root by deploy(uid=0)
Aug 7 12:09:15 ohlala sudo: pam_unix(sudo:session): session closed for user root
看起来您的服务器密钥丢失/错误的权限/损坏:
线索:
权限应归“root:root”和 chmod 0600 所有
要生成这些密钥:
您是否仔细检查了您的 sshd_config?
查看您的输出和 slicedhost 设置,我认为您的 AllowUsers 设置不正确,因为您似乎立即被服务器拒绝。
如果您可以通过控制台执行此操作,则可以删除 AllowUsers 行(如果我没记错的话,这将允许所有用户再次通过 SSH 登录)并将 PasswordAuthentication 设置回 yes 以解决当前的问题。
由于您重新生成了密钥,您是否检查过新密钥是否具有正确的权限?如果文件的权限不正确,sshd 可以(并且通常会)认为文件不可用。
好吧,在花了很多时间之后,包括 Slicehost 技术支持,我决定放弃设置密钥身份验证,我又回到了使用密码身份验证。
为了能够再次使用密码访问我的服务器,我必须将 sshd.config 文件恢复为其原始配置。
嗯不应该..
/etc/init.d/ssh 重新加载
是 ..
sudo /etc/init.d/ssh 重新加载
?
否则你会得到..
错误:无法加载主机密钥:/etc/ssh/ssh_host_rsa_key
错误:无法加载主机密钥:/etc/ssh/ssh_host_dsa_key
!