端口转发到本地端口使用 aws ec2 返回 ERR_CONNECTION_REFUSED

端口转发到本地端口使用 aws ec2 返回 ERR_CONNECTION_REFUSED

我正在尝试使用我的 aws ec2 机器的公共地址进行端口转发以访问我的本地机器端口 8888。(xxxx.compute.amazonaws.com:8888)

我尝试了这个:

ssh -R 8888:localhost:8888 [email protected]

我没有收到任何错误消息,但是它就是不起作用。

netstat -antssh 端口转发之前:

Active Internet connections (servers and established)                                                                                                                                                                                         
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN                                             
tcp        0      0 172.31.xxx.xxx:22        124.122.xxx.xxx:12902   ESTABLISHED                                        
tcp6       0      0 :::22                   :::*                    LISTEN

netstat -antssh 端口转发之后:

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:8888          0.0.0.0:*               LISTEN     
tcp        0      0 172.31.xxx.xxx:22        209.141.xxx.xxx:53296    TIME_WAIT  
tcp        0    368 172.31.xxx.xxx:22        124.122.xxx.xxx:1095    ESTABLISHED
tcp6       0      0 :::22                   :::*                    LISTEN     
tcp6       0      0 ::1:8888                :::*                    LISTEN

但浏览器中一直出现此问题ERR_CONNECTION_REFUSED。即使在我的简单 apache2 服务器上执行此操作也不起作用:ssh -R 8888:localhost:80

我在 aws ec2 上也有这些入站规则:8888 TCP 0.0.0.0/0我甚至添加了8888 TCP ::/08888 UDP ::/08888 UDP 0.0.0.0/0问题是一样的。

答案1

远程服务器仅在本地主机上监听 8888,因此您无法从外部浏览器连接到该服务器。我尝试时也是这种情况 - 但我将 EC2 上的 /etc/ssh/sshd_config 更改为 set GatewayPorts yes,重新启动 sshd,现在它对我来说工作正常。

相关内容