30

我正在尝试通过 ssh 连接到远程服务器,但连接超时。

我运行了以下命令

ssh testkamer@test.dommainname.com

并得到以下结果

ssh:连接到主机 testkamer@test.dommainname.com 端口 22:连接超时

但如果尝试连接另一台远程服务器,那么我可以成功登录。

所以我认为ssh没有问题,其他人尝试使用相同的登录名和密码登录,他可以成功登录服务器。

请帮助我
谢谢。

4

19 回答 19

12

以下是可能会阻止您连接到 Linode 实例的几件事:

  1. DNS 问题:如果您用来连接远程服务器的计算机没有正确解析test.kameronderdehamer.nl,那么您将无法访问您的主机。尝试使用分配给您的 Linode 的公共 IP 地址进行连接,看看它是否有效(例如 ssh user@123.123.123.123)。如果您可以使用公共 IP 但不能使用主机名进行连接,这将确认您在域名解析方面遇到了问题。

  2. 网络问题:可能有一些网络问题阻止您与服务器建立连接。例如,您和主机之间的路径中可能存在配置错误的路由器,或者您可能遇到数据包丢失。虽然这种情况并不常见,但我在 Linode 上已经发生过好几次了,而且非常烦人。以防万一,检查一下可能是个好主意。您可以查看使用 MTR 诊断网络问题(来自 Linode 库)。

于 2012-09-03T21:46:47.007 回答
7

该错误消息意味着您正在连接的服务器没有回复端口 22 上的 SSH 连接尝试。这可能有以下三个原因:

  1. 您没有在机器上运行 SSH 服务器。您需要安装它才能通过 ssh 访问它。

  2. 您正在该机器上运行 SSH 服务器,但在不同的端口上。您需要弄清楚它在哪个端口上运行;假设它在端口 1234 上,然后运行 ​​ssh -p 1234 主机名。

  3. 您正在该机器上运行 SSH 服务器,它确实使用了您尝试连接的端口,但该机器有防火墙,不允许您连接到它。您需要弄清楚如何更改防火墙,或者您可能需要从不同的主机 ssh 才能被允许进入。

编辑:正如(正确地)在评论中指出的那样,第三个肯定是这样;另外两个将导致服务器在客户端尝试连接时发送回 TCP“重置”包,从而导致“连接被拒绝”错误消息,而不是您得到的超时。其他两个也可能是这种情况,但是您需要先修复第三个,然后才能继续。

于 2020-03-19T20:42:18.063 回答
6

我收到此错误,发现我的 SSH 端口(非标准号)未在配置服务器防火墙中列入白名单。

于 2014-11-13T00:08:22.227 回答
3

只是在这里添加它,因为它对我有用。在不更改任何设置(据我所知)的情况下,我不再能够通过以下方式访问我的 AWS EC2 实例:ssh -i /path/to/key/key_name.pem admin@ecx-x-x-xxx-xx.eu-west-2.compute.amazonaws.com

事实证明,我需要为入站 SSH 流量添加一条规则,正如AWS在此处解释的那样。对于Port range 22,我添加了0.0.0.0/0,它允许所有IPv4 地址使用 SSH 访问实例。

请注意,让所有 IPv4 地址都可以访问该实例存在安全风险;在测试环境中短时间内是可以接受的,但您可能需要更长期的解决方案。

于 2021-11-22T07:58:35.863 回答
2

如果您在公共网络上,防火墙将默认阻止所有传入连接。检查您的防火墙设置或使用专用网络进行 SSL

于 2018-10-22T12:36:47.260 回答
1

我的 VPN 连接未启用。我一直在尝试所有可能的方法来打开 Firwall 和端口,直到我意识到,我在家工作并且我的 VPN 连接断开了。但是,是的,防火墙和 ssh 配置可能是一个原因。

于 2020-05-08T07:10:57.133 回答
1

这种失败可能有很多可能的原因。

上面列出了一些。我遇到了同样的问题,很难找到失败的根本原因。

我会建议您从 ssh_config 文件中检查 shh 的会话超时。尝试增加会话超时,看看是否再次失败

于 2016-10-27T12:58:40.343 回答
1

我在尝试从我的 Mac 连接到本地 nextcloud 服务器时遇到了这个问题。

我一次 ssh-ing 没有问题,但如果我尝试有多个并发连接,它会挂起直到超时。

注意,我是 sshing 到我的 user@public-ip-address。

当我在同一个网络(即我的家庭网络)上尝试 ssh 进入第二个连接时,我才意识到第二个连接不起作用

此外,当我尝试ssh user@server-domain它的工作!

最终解决方法是使用ssh user@server-domain而不是ssh user@public-ip

于 2021-03-21T20:01:33.393 回答
0

尝试通过 bash 终端从我的 MBP SSH 到我的 Raspberry pi 时出现此错误。我的 RPI 通过 wifi/wlan0 连接到网络,并且这个 IP 在我的路由器 DHCP 重新启动时已更改。

检查用于通过 SSH 登录的 IP 是否正确。重新检查被 SSH 连接到的设备的 IP(在我的情况下是 RPI),可以使用hostname -I

确认/修改“访客”设备(在我的情况下为 MBP)上的 SSH 登录凭据,它在我的尝试中运行良好。

于 2020-03-28T20:34:16.353 回答
0

我的主机是windows 10,我有CEntOS 7 VBox
在你的主机中搜索“known_hosts”
,通常在“ user/.ssh/known_host ”中的windows中的known_host位置使用记事本打开它, 然后
删除你的centos vbox ip所在的行
尝试在您的终端

中以 mac os 用户连接,您可以在“ ~/.ssh/known_hosts ”中找到 known_hosts

于 2021-07-17T03:57:52.603 回答
0

检查您是否在创建自己的 vpc 和子网时意外删除了默认 vpc 或默认子网。我在创建 vpc 时犯了这个错误,因此在通过 ssh 连接时出现了这个错误。

还检查您是否已将 IGW 附加到公共子网。

于 2021-03-12T10:53:20.087 回答
0

如果未正确设置动态主机配置协议,也会导致此问题。

要解决这个问题,首先检查您的 IP 地址是否使用 ping ipaddress配置,如果没有丢包并且 IP 地址工作正常,请尝试任何其他解决方案。如果没有响应并且您有 100% 的数据包丢失,则意味着您的 IP 地址不起作用且未配置。

现在使用配置您的 IP 地址,

sudo dhclient -v设备名

要检查您的设备,您可以使用“ip a”命令,例如。我的设备是 usb0,因为我通过 USB 连接了设备

这将自动配置 IP 地址,您甚至可以查看配置了哪个 IP 地址。您可以再次使用“ip a”命令进行确认。

于 2021-11-06T21:17:07.467 回答
0

如果可能,请尝试连接到 vpn。这就是我面临问题的原因。提示:如果您使用的是 ec2 机器,请尝试重新启动它。前几天这对我有用:)

于 2021-01-13T05:46:40.120 回答
0

可能是,您的服务器/系统上可能未启用 SSH。

  1. 检查sudo systemctl status ssh是否处于活动状态。
  2. 如果它不活跃,请尝试在这些命令的帮助下安装

sudo apt 更新

sudo apt install openssh-server

现在尝试使用以下命令访问服务器/系统

ssh 用户名@ip_address

于 2019-01-29T07:52:42.003 回答
0

请务必让管理员授权您的设备。

在 Linux 上运行: sudo zerotier-cli listnetworks

如果它返回状态ACCESS DENIED请求管理员授权您的节点。这里提到了这一点。 https://discuss.zerotier.com/t/solved-cant-join-network/1919

于 2021-09-10T20:19:54.210 回答
0

在使用“sudo ufw allow ssh”启用端口 22 后,这发生在我身上。在此之前,当我从另一台机器使用 ssh 进入时,我的机器遭到拒绝。启用它后,我认为它会起作用,但它显示了“连接超时”的消息。由于我刚刚安装了带有安装基本功能选项的 Ubuntu,因此我使用命令 sudo apt list --installed | 检查了是否有 openssh-server。grep openssh 服务器。事实证明,Ubuntu 已经通过缺陷安装了 openssh-client。我卸载了它并按照基本命令安装了 openssh-server:

sudo apt-get purge openssh-client sudo apt update sudo apt install openssh-server

之后,一个简单的“sudo ufw allow ssh”完美运行,我终于能够使用 ssh 命令访问机器。

于 2021-11-16T13:42:43.857 回答
0

我遇到了类似的问题。我检查了以下内容:

  1. 如果你的机器上没有安装 ssh,你必须先安装它。(您将收到一条消息说 ssh 未被识别为命令)。
  2. 端口 22 在您尝试 ssh 的服务器上打开或未打开。
  3. 如果远程服务器的控制权在您手中并且您有权限,请尝试禁用其上的防火墙。
  4. 再次尝试 ssh。

如果端口不是问题,那么您必须检查防火墙设置,因为它是阻止您的连接的设置。

对我来说,这也是我的机器和远程服务器之间的防火墙问题。我禁用了远程服务器上的防火墙,并且能够使用 ssh 建立连接。

于 2020-07-03T08:32:20.393 回答
-1

这可能是针对特定情况的,并且仅在某些情况下有效,但请检查您之前是否通过某些 VPN 软件/应用程序进行连接。

尝试再次连接到 VPN。在我的情况下工作。

于 2021-11-11T09:49:20.710 回答
-3

更新该实例的安全组。您的本地 IP 必须已更新。每次都是IP翻转。您将不得不去更新安全组。

于 2020-10-17T14:59:51.240 回答