HTTPS 443 端口:netstat 显示通配符,但 curl --insecure 仅适用于本地主机

HTTPS 443 端口:netstat 显示通配符,但 curl --insecure 仅适用于本地主机

我有一台具有公共 IP 地址的远程计算机121.x.y.z,安装了 Gitlab(软件并不重要,这里不需要 Gitlab 知识)(使用 nginx 作为其 Web 界面)并设置了 HTTPS。但是我的情况是,我只能使用 localhost 通过 HTTPS 进行访问,而不能使用其他 IP 地址。

当我netstat -an | grep 443在远程机器上执行此操作时,我得到了

[user@machine ~]$ netstat -an | grep 443
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN  

当我curl --insecure https://127.0.0.1在远程机器上执行此操作时,我得到了

[user@machine ~]$ curl --insecure https://127.0.0.1
<html><body>You are being <a href="https://127.0.0.1/users/sign_in">redirected</a>.</body></html>

重定向的消息是Gitlab默认的正确消息。

但是当我curl --insecure https://121.x.y.z在远程机器上执行此操作时,除了无限的等待时间之外什么也没得到(似乎它实际上并没有在监听)。但 netstat 结果似乎表明它正在监听所有 ip 地址,而不仅仅是本地主机。

如果我放弃 HTTPS 设置并返回 HTTP,Gitlab Web 界面即可正常工作。

我甚至不知道如何继续调试这个问题,几乎陷入了困境。我能做些什么来弄清楚为什么它只监听 localhost,而 netstat 显示它监听所有内容?

编辑:系统是 CentOS7,并且firewalld 似乎也没有激活。

[user@machine ~]$ sudo systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

Aug 14 10:55:45 xxxxxx systemd[1]: firewalld.service: Unit cannot be reloaded because it is inactive.

相关内容