You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 22.04 LTS服务器SSH公网访问及多场景连接异常问题求助

Ubuntu 22.04 LTS服务器SSH公网访问及多场景连接异常问题求助

大家好,我最近在折腾Ubuntu 22.04 LTS服务器的SSH连接,碰到了几个奇怪的场景异常,实在搞不定了,来请教各位大佬。先把目前的情况和已做的操作整理清楚:

一、可以正常连接的SSH场景

  • 服务器本地通过localhost连接:ssh user@localhost
  • 服务器自身通过私有IP连接:ssh user@192.168.1.13
  • 局域网内安卓客户端通过私有IP连接:ssh user@192.168.1.13
  • 外网安卓客户端通过公网IP连接:ssh user@180.x.x.x

二、无法连接的SSH场景

  • 局域网内Windows 10客户端通过私有IP连接:ssh user@192.168.1.13
  • 服务器自身通过公网IP连接:ssh user@180.x.x.x
  • 局域网内安卓客户端通过公网IP连接:ssh user@180.x.x.x

三、已完成的相关配置

  • 防火墙设置:启用UFW并放行SSH端口,执行了以下命令:
    sudo ufw enable
    sudo ufw allow ssh
    
  • 路由器配置:已设置端口转发规则,将公网22端口映射到服务器私有IP的22端口
  • SSH服务配置:使用默认的sshd_config文件,未做任何自定义修改
  • 端口验证情况
    • 本地执行sudo ufw status确认22端口已开放
    • 通过YouGetSignal Port Forwarding Tester、PortCheckTool等工具检测,公网22端口显示为开放状态

四、异常测试的细节

在服务器本地执行ssh -vv user@180.x.x.x进行调试,得到的输出和连接一个随机无效IP的结果完全一致,关键输出片段如下:

user@comp:~$ ssh -vv user@180.x.x.x
OpenSSH_8.9p1 Ubuntu-3, OpenSSL 3.0.2 15 Mar 2022
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug2: resolve_canonicalize: hostname 180.x.x.x is address
debug1: Connecting to 180.x.x.x [180.x.x.x] port 22.

明明工具已经检测到公网22端口是开放的,但本地用公网IP连自己却没有正常连接的后续日志,和连无效IP的表现一模一样。

核心诉求

我最终的目标是让服务器SSH能被任意设备(无论局域网还是外网)通过公网IP正常访问,同时解决局域网内Windows 10客户端无法通过私有IP连接的问题,麻烦各位帮忙分析下问题出在哪,该怎么排查解决?

备注:内容来源于stack exchange,提问作者x60id

火山引擎 最新活动