无法从远程服务器外部访问 ssh / autossh

无法从远程服务器外部访问 ssh / autossh

我的 autossh 设置有问题:

  • OpenWRT 路由器配置了autossh sshtunnel 以连接到我拥有的 OVH 服务器并在 5922 上设置远程端口:

    openWrt$ ssh -R *:5922:localhost:22 user@my_ovh_server

在此输入图像描述

  • 我可以看到 OVH 服务器上打开的端口,并且可以从 OVH 服务器内部连接:

    ovh$ ssh localhost -p 5922 -l gui13 # works!

  • 不能从 OVH 服务器外部连接到该端口:

    MyOwnOPC$ ssh my_ovh_server_ip -p 5922 -l gui13 # timeout :/

现在,我知道 sshGatewayPort并在 OVH 服务器上启用。

从 OVH 服务器我可以看到该端口正在侦听“*”:

在此输入图像描述

但如果我尝试连接 OVH 服务器的公共 IP,则无法进行任何操作。

我在 IPTables 上看不到任何可疑的东西(fail2bans 匹配,但没有自我规则,并且标准端口已经可以访问)。

这是 sshd 配置:

PermitRootLogin no

ChallengeResponseAuthentication no

UsePAM yes

GatewayPorts yes
X11Forwarding yes
PrintMotd no

AcceptEnv LANG LC_*

Subsystem   sftp    /usr/lib/openssh/sftp-server
 
PasswordAuthentication yes

关于如何继续查找问题有什么想法吗?

答案1

为了能够从外部访问它,您需要为出站连接打开反向隧道:

ssh -R *:5922:localhost:22 user@my_ovh_server

如果我没记错的话..用于连接openwrt路由器的用户是root默认的。这是从外部连接时需要的用户:

ssh root@my_ovh_server_ip -p 5922 ...

作为保持反向隧道永久存在的改进:我鼓励您用于autossh此目的。

相关内容