我在远程机器上运行 Ubuntu 10.10。我每天 ssh 都没有问题,但今天突然出现以下错误:
ssh_exchange_identification: Connection closed by remote host
如果我与 连接-vv
,我会得到以下信息:
OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /Users/bla/.ssh/config
debug1: Applying options for ubuntu-server
debug1: Reading configuration data /etc/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to ubuntu-server.com [123.123.123.123] port 22.
debug1: Connection established.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug2: key_type_from_name: unknown key type '-----END'
debug1: identity file /Users/bla/.ssh/id_rsa type -1
debug1: identity file /Users/bla/.ssh/id_rsa-cert type -1
ssh_exchange_identification: Connection closed by remote host
Run Code Online (Sandbox Code Playgroud)
如果我删除密钥,我会得到完全相同的输出(sans“debug2:key_type_...)。我已经设法物理登录并检查了我的hosts.allow
,hosts.deny
但他们没有条目。我尝试删除并重新安装OpenSSH,检查authorized_keys
并~/.ssh
权限并尝试从其他计算机连接却得到同样的错误。我不知所措,任何帮助将不胜感激。
小智 5
对我而言,在 CentOS7 上,这是由大量的蛮力登录尝试以及MaxStartups
for sshd的默认设置引起的。
sshd_config的手册页是这样说的:
最大初创公司
指定到 SSH 守护程序的最大并发未经身份验证连接数。其他连接将被丢弃,直到身份验证成功或连接的 LoginGraceTime 到期。默认值为 10。
或者,可以通过指定三个冒号分隔值 ''start:rate:full''(例如“10:30:60”)来启用随机提前丢弃。如果当前存在 ''start'' (10) 个未经身份验证的连接,sshd(8) 将以 ''rate/100'' (30%) 的概率拒绝连接尝试。如果未经身份验证的连接数达到“满”(60),则概率线性增加并且所有连接尝试都将被拒绝。
将起始值设置为 25(例如,MaxStartups 25:30:100
)/etc/ssh/sshd_config
解决了该问题。
-rw------- 1 user group 405 2011-10-29 10:20 authorized_keys2
Run Code Online (Sandbox Code Playgroud)
authorized_keys2
从 3.0 版本开始已弃用。
debug3: Not a RSA1 key file /Users/bla/.ssh/id_rsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: key_read: missing keytype
debug3: key_read: missing whitespace
Run Code Online (Sandbox Code Playgroud)
您的私钥似乎已损坏。重新生成密钥对,用于ssh-copy-id
将公钥安装到authorized_keys
文件中,然后重试。
归档时间: |
|
查看次数: |
80335 次 |
最近记录: |