操作系统:CentOS 7
这是一个与两个问题接壤的问题。我有一台docker
正在运行的机器,我最近在其中安装了 PLEX 容器linuxserver/plex
。当前的问题是我无法访问该站点来配置 PLEX https://localhost:32400/web
。在我尝试确定发生这种情况的原因时,我注意到端口32400
似乎已关闭,即使它应该在创建容器时打开,我正在使用主机网络。
我尝试查看是否可以使用访问该网站curl
curl -i http://localhost:32400
curl -i http://10.0.1.200:32400
然后我验证了开放端口NMAP
#nmap 10.0.1.200
Starting Nmap 6.40 ( http://nmap.org ) at 2019-01-18 12:52 CST
Nmap scan report for 10.0.1.200
Host is up (0.00049s latency).
Not shown: 999 closed ports
PORT STATE SERVICE
22/tcp open ssh
Nmap done: 1 IP address (1 host up) scanned in 0.10 seconds
很明显端口32400没有打开,所以我去了firewall-cmd
#sudo firewall-cmd --get-active-zones
public
interfaces: eno1
#sudo firewall-cmd --zone=public --add-port=32400/tcp --permanent
success
#sudo firewall-cmd --reload
success
我还检查了一下是否开放
#sudo firewall-cmd --zone=public --list-ports
32400/tcp
然而,NMAP仍然显示其已关闭。知道为什么firewalld会在docker主机上显示开放端口但实际上它是关闭的吗?我什至不确定这是否能让该网站在 Plex 上运行。
验证克莱默的建议,我的界面可能没有设置
# ip addr
3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 10.0.1.200/24 brd 10.0.1.255 scope global noprefixroute dynamic eno1
#firewall-cmd --zone=public --list-interfaces
eno1
答案1
确保网络接口已成功添加到区域“public”,通常只有默认网卡(即eth0)。添加带有区域的接口:
#firewall-cmd --permanent --zone=public --add-interface=<interface_name>
要了解您尝试过哪些界面:
#ipaddr
或者
#ifconfig
添加提供 IP 10.0.1.200 的接口
将来,在发布您运行的命令时,请同时发布该命令的输出,这有助于理解和调试问题。
哈:)