我有一台 12.04.4 的服务器,我启用了 ufw,并尝试阻止端口8080
。但是,它仍然打开。
$ sudo ufw deny 8080
Rule added
Rule added (v6)
$ sudo ufw status numbered
Status: active
To Action From
-- ------ ----
[ 1] 22 ALLOW IN Anywhere
[ 2] 80 ALLOW IN Anywhere
[ 3] 8080 DENY IN Anywhere
[ 4] 22 ALLOW IN Anywhere (v6)
[ 5] 80 ALLOW IN Anywhere (v6)
[ 6] 8080 DENY IN Anywhere (v6)
有什么想法吗?我仍然可以访问 8080 上的网站。我已多次重启系统。IP 地址是通过静态分配处理的,但我找不到任何迹象表明这是问题所在。
但是我尝试阻止的服务位于 Docker 实例上这个问题没有帮助。
答案1
Docker 模板我在用适用于 Discourse。我通过编辑文件containers/app.yml
以将其包含在“expose”部分下解决了此问题:
- "127.0.0.1:20080:80"
这意味着它将 127.0.0.1 上的端口 20080 路由到 docker 实例上的端口 80,从而完全不需要 ufw 规则。
答案2
我测试了一下。
当我输入命令:时sudo ufw deny 80
,我可以连接到我自己,但其他主机则无法连接。
我建议您尝试从任何其他人进行连接。
答案3
iptables docker 规则如下评估在 ufw 之后。我想限制除一个(VPN 服务器)之外的所有 IP,我在 docker 中找到了更好的解决方案文档