使用 SSH 连接远程服务器时出现问题

使用 SSH 连接远程服务器时出现问题

我可以连接到[电子邮件保护]使用 ssh。我的密钥与存储在服务器中的密钥匹配。

不过我正试图连接到一个私人仓库[电子邮件保护]它会阻止不允许的 IP,但我没有收到任何回应。

我确信我的密钥在存储库中,并且我能够通过 HTTP 进行连接。我还检查了端口 22,发现它是开放的。

我也尝试在不同的服务器上执行相同的操作,它运行良好,只是在这个 IP 上停止。

我检查了日志;这个 IP 发送了一个请求,但服务器从未收到。正如我所说,我已经检查了所有内容

我是否忽略了什么?

答案1

如果您尝试“telnet privaterepo.com 22”,您是否会获得如下连接:

joes-MacBook-Pro:~ joe$ telnet privaterepo.com 22
Trying 10.0.0.1...
Connected to privaterepo.com.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.7

或者您是否收到诸如连接超时之类的错误?

就像其他人说的那样,使用 tcpdump 看看发生了什么。看看是否看到三次握手。

joes-MacBook-Pro:~ joe$ sudo tcpdump host privaterepo.com 
11:49:54.090209 IP 192.168.1.111.50297 > privaterepo.com.ssh: Flags[S], seq 463745812, win 65535
11:49:54.178706 IP privaterepo.com.ssh > 192.168.1.111.50297: Flags [S.], seq 2202259056, ack 463745813, win 65535
11:49:54.178760 IP 192.168.1.111.50297 > privaterepo.com.ssh: Flags [.], ack 1, win 4117

也等待 15 分钟。如果尝试失败的次数过多,一些 repo 将会在短时间内阻止源 IP,可能是在设置新密钥等时。

当然,可以尝试 ssh -v privaterepo.com 看看它是否可以解释诸如密钥错误之类的问题。

相关内容