Ubuntu 服务器端口 443 已关闭,Docker 应用程序在本地网络中无法访问

Ubuntu 服务器端口 443 已关闭,Docker 应用程序在本地网络中无法访问

我在我的家庭实验室 (esx Server) 中使用 Ubuntu Server Ubuntu 22.04.2 LTS 来测试一些 docker 应用程序。首先,我测试了 Bitwarden,一个基于 Web 的密码管理器。没有任何成功。我无法在本地网络中访问 bitwarden 页面。然后我安装了一个全新的 ubuntu 服务器来测试 Keeweb,也是一个基于 Web 的密码管理器。也安装了 docker,一切都有教程。但我无法通过我的网络访问 keeweb 页面。nc -zv 192.168.0.137 443 Connection to 192.168.0.137 443 port [tcp/https] succeeded!我可以看到端口 443 是开放的。但是当我尝试https://192.168.0.137从我本地网络中的任何其他系统都无法正常工作。我不认为我的本地网络存在任何问题,因为我还运行带有 PRTG 监控系统的 Windows VM,并且我可以通过我的本地网络访问该网页。

Powershell 提示端口 443 和 80 未打开。UFW 最初处于禁用状态,但为了测试目的,我启用了它并设置了一些允许所有内容的规则:

To                         Action      From
--                         ------      ----
80                         ALLOW IN    Anywhere
443                        ALLOW IN    Anywhere
Anywhere                   ALLOW IN    Anywhere
80 (v6)                    ALLOW IN    Anywhere (v6)
443 (v6)                   ALLOW IN    Anywhere (v6)
Anywhere (v6)              ALLOW IN    Anywhere (v6)

Anywhere                   ALLOW OUT   Anywhere
Anywhere (v6)              ALLOW OUT   Anywhere (v6)

我的docker容器也正在运行:

CONTAINER ID   IMAGE            COMMAND                  CREATED             STATUS             PORTS                                                  NAMES
625e33e7d24d   antelle/keeweb   "/opt/entrypoint.sh …"   About an hour ago   Up About an hour   192.168.0.137:80->80/tcp, 192.168.0.137:443->443/tcp   keeweb

并由以下人员运行:

sudo docker run --name keeweb  -d -p 192.168.0.137:443:443 -p 192.168.0.137:80:80 antelle/keeweb

第一次尝试时,我没有设置 192.168.0.137,只是设置端口。

这是 iptables 输出:

sudo iptables -L -t nat
# Warning: iptables-legacy tables present, use iptables-legacy to see them
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
DOCKER     all  --  anywhere             anywhere             ADDRTYPE match dst-type LOCAL

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
DOCKER     all  --  anywhere            !localhost/8          ADDRTYPE match dst-type LOCAL

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
MASQUERADE  all  --  172.17.0.0/16        anywhere
MASQUERADE  tcp  --  172.17.0.2           172.17.0.2           tcp dpt:https
MASQUERADE  tcp  --  172.17.0.2           172.17.0.2           tcp dpt:http

Chain DOCKER (2 references)
target     prot opt source               destination
RETURN     all  --  anywhere             anywhere
DNAT       tcp  --  anywhere             bitwarden-2          tcp dpt:https to:172.17.0.2:443
DNAT       tcp  --  anywhere             bitwarden-2          tcp dpt:http to:172.17.0.2:80

相关内容