hzqim
V2EX  ›  问与答

为什么 Nginx 能反代的 IP:端口,浏览器却打不开?

  •  
  •   hzqim · Dec 12, 2014 · 4042 views
    This topic created in 4244 days ago, the information mentioned may be changed or developed.
    用家里的 Debian 7 通过 SSH 反向链接远程 VPS, 建立隧道;
    按照网友的说法,把本地的端口映射到了 VPS 的端口上:

    ssh -NfR 服务器端口:192.168.1.2:本地端口 root@服务器IP
    ssh -NfR 服务器IP:服务器端口:192.168.1.2:本地端口 root@服务器IP
    ssh -NfR 服务器域名:服务器端口:192.168.1.2:本地端口 root@服务器IP
    ssh -NfR 0.0.0.0:服务器端口:192.168.1.2:本地端口 root@服务器IP

    无论是上面的那个命令,在 VPS 上的 SSH 都是监听为:

    127.0.0.1:服务器端口

    在浏览器上访问 VPS IP 地址/域名:端口,都没法访问!



    在 VPS 上用 Nginx 反代 127.0.0.1:服务器端口,再用 浏览器访问就可以打开!!!

    疑问:为什么浏览器不能打开?是因为只监听 127.0.0.1 的原因吗?还是 127.0.0.1:服务器端口不是标准 WEB 协议,需用 Nginx 来转换?

    谢谢指点!
    Supplement 1  ·  Dec 12, 2014
    VPS 修改 sshd_config,添加 GatewayPorts yes 并重启,重新连接 VPS 反向链接就可以监听 0.0.0.0 了,浏览器终于可以直接访问了。
    2 replies    2014-12-12 21:59:54 +08:00
    vibbow
        1
    vibbow  
       Dec 12, 2014   ❤️ 1
    监听 127.0.0.1 的意思就是只能在本地访问

    Nginx再反代一次的话,Nginx本身监听的应该是0.0.0.0,所以所有IP都可以访问到Nginx。
    Nginx和你端口转发服务本身也在一个服务器上,所以127.0.0.1能访问到转发的端口。
    hzqim
        2
    hzqim  
    OP
       Dec 12, 2014   ❤️ 1
    @vibbow 谢谢,你的说法是正确的。
    在 VPS 修改 sshd_config,添加 GatewayPorts yes 并重启,重新连接 VPS 反向链接就可以监听 0.0.0.0 了,浏览器终于可以直接访问了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5397 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 09:04 · PVG 17:04 · LAX 02:04 · JFK 05:04
    ♥ Do have faith in what you're doing.