解决ssh: connect to host IP port 22: Connection timed out报错(scp传文件指定端口)

错误消息 ssh: connect to host IP port 22: Connection timed out 指出 SSH 客户端尝试连接到指定的 IP 地址和端口号(默认 SSH 端口是 22),但是连接超时了。这意味着客户端没有在预定时间内收到来自服务器的响应。

可能的原因

  1. SSH 服务未运行:远程主机上没有运行 SSH 服务或服务未侦听端口 22。
  2. 网络问题:本地或远程主机之间存在网络连接问题。
  3. 防火墙限制:远程主机的防火墙可能阻止了端口 22。
  4. 路由器或网关问题:路由器或网关可能没有正确地将流量转发到远程主机。
  5. SSH 服务配置:SSH 服务可能配置为侦听不同的端口或有其他配置问题。

解决方法

  1. 确定指令正确:(选项-P的位置, 尽量直接放在scp命令之后, 否则可能有错误

    scp -P port file_name user@ip:/dir_name
    

    scp             用于在本地和远程计算机之间复制文件的指令;
    -P               指定使用自定义端口 port 来连接远程主机;
    port            实际的端口号,例如 2222
                      (默认端口号为22,没改过端口号可以不用加-P port);
    file_name  要复制的本地文件的路径和名称;
    user@ip: 远程主机的用户名 user 和 IP 地址 ip;
    /dir_name  远程主机上的目标目录 dir_name。

    示例:

    scp -P 2222 example.txt username@192.168.1.100:/home
    
  2. 检查网络连接:

    要确保本地和远程主机之间的网络连接没有问题。可以PING一下对方的ip地址检查是否有回应。
    ping -c 4 <server_ip>
  3. 检查 SSH 服务状态
    • 在远程主机上使用以下命令检查 SSH 服务是否正在运行:
      sudo systemctl status ssh
    • 如果 SSH 服务正在运行,应该会看到类似于 “active (running)” 的消息。如果服务未运行,您可以尝试启动它:

      sudo systemctl start ssh
      

      如图所示就是ssh服务正常开启的状态

  4. 检查 SSH 配置文件

    • 使用命令查看ssh配置文件:
       
      sudo vim /etc/ssh/sshd_config
      
      在远程主机上检查 SSH 配置文件中的设置是否正确。特别关注 PortPermitRootLoginMaxAuthTries 等参数是否设置为预期值。
  5. 检查防火墙设置

    • 如果更改了 SSH 端口,要确保防火墙允许新端口的流量通过,可以使用以下命令查看当前允许的端口:
      sudo ufw status
      

      如图所示,我允许通过的端口为2222

    • ,确保防火墙允许新端口的流量通过非常重要,否则 SSH 连接将无法成功。在 Ubuntu 中,可以使用 ufw(Uncomplicated Firewall)来管理防火墙规则。

      使用以下命令允许新端口的流量通过防火墙:

      sudo ufw allow <new port>/tcp
      

      例如,刚刚将端口更改为 2222,则应该运行:

      sudo ufw allow 2222/tcp
      

      然后启用防火墙:

      sudo ufw enable
  6. 查看系统日志

    检查系统日志以查找与 SSH 相关的任何错误消息。系统日志通常存储在 /var/log 目录下,可以查看 /var/log/auth.log/var/log/syslog 文件。
  7. 联检查SSH配置的完整性

    检查 SSH 配置文件的语法是否正确,可以使用 sshd 命令的 -t 选项来测试配置文件的语法是否正确:
    sudo sshd -t

    如果输入命令后,没有显示任何信息,则表示配置正确。

解决这个问题通常需要检查网络连接、SSH 服务状态、防火墙设置和 SSH 配置文件。如果问题依然存在,可能需要进一步的网络诊断。

  • 15
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值