ssh 挂起然后超时

ssh 挂起然后超时

我是 Linux 上的 ssh 新手。我有两台计算机连接在交换机上。第一个是 192.168.1.2,第二个是 192.168.1.3。当我使用该ping命令时,我得到了回复,一切都很好,但是当我从第一台计算机使用 ssh 时,它给了我,ssh -v [email protected]

OpenSSH_5.8p1 Debian-1ubuntu3, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.1.2 [192.168.1.2] port 22.
debug1: connect to address 192.168.1.2 port 22: Connection timed out

我在两台机器上都安装了 ssh。关于如何解决这个问题有什么想法吗?

答案1

故障排除提示:

  • 可以ssh localhost上服务器吗?
  • 用户是否被允许? (AllowUsers环境)
  • 是否绑定到外部网卡? (寻找ListenAddress 0.0.0.0ListenAddress ::
  • 你在端口22上运行吗? ( Port)

    • 基本上检查一下/etc/ssh/sshd_config
  • 添加:您可以用来netstat -tlpn | grep 22找出哪些程序(如果有)正在侦听端口 22(以 root 身份运行以查看进程名称)。

另外,考虑使用显式端口连接而不是 ping (例如,nmap -PN remote -p22甚至只是telnet remote 22

答案2

我知道,问题是关于专用网络的,但是当我尝试通过互联网访问设备时,我得到了类似的输出。谷歌搜索后,我发现了这个问题;因此,尽管它可能无法回答问题,但其他人可能会发现我的答案很有帮助。就我而言,事实证明我的 ISP 阻止了端口 22/TCP。

如果您尝试通过互联网访问设备,基本上有五种可能性:

  1. 计算机之间可能无法建立网络连接。尝试 ping 服务器计算机的 IP 地址。如果您无法接收任何数据包,请尝试检查两台计算机上的网络连接。
  2. SSH 服务器可能配置错误。尝试通过以下方式在本地通过 SSH 连接到设备(从同一设备和用户到同一设备和用户):

    ssh localhost
    
  3. 如果服务器计算机通过路由器连接到 Internet,则端口转发可能未正确配置。因此,请检查路由器上的端口转发配置。

  4. 服务器计算机上的本地防火墙可能会过滤掉传入连接。尝试在防火墙规则中允许 22/TCP 端口上的传入连接或暂时完全禁用防火墙。
  5. 一个或两个 ISP 可能会过滤掉该连接。尝试更改服务器上的端口类似于 2222,重新启动 SSH 服务器,并使用新端口进行 SSH。您可以通过-p命令中的选项指定客户端计算机上的端口,如下所示:

    ssh USER@HOST -p PORT
    

答案3

如果 openssh-server 已安装,可能会被防火墙阻止...假设您已启用 ufw。

如果您要从计算机 192.168.1.2 前往目标计算机 192.168.1.3。在目标机器上执行... Sudo ufw 允许来自 192.168.1.2。反之亦然会很方便

答案4

检查这些事情:

  • 端口 22 打开并可以接收连接
  • 确保服务器上正在运行 OpenSSH 或其他 SSH 进程
  • 确保 SSH 配置文件被赋予适当的值

相关内容