首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iptables和Docker -只允许特定的端口映射

iptables和Docker -只允许特定的端口映射
EN

Server Fault用户
提问于 2018-02-06 08:21:19
回答 1查看 901关注 0票数 1

我有一台运行码头集装箱的服务器。服务器有两个ips,一个公共ip (在接口enp0s8上)和一个私有ip (在接口tun0上,它只能通过虚拟专用网访问)。我想以一种只允许通过公共接口访问端口80和443,而允许通过vpn接口访问所有端口的方式配置iptables。

确切地说,我试图做以下几件事:

  • 运行具有端口映射( 80:80,443:443 )的HAProxy容器(应该可以从公共ip访问)
  • 运行具有端口映射8080:80的PhpMyAdmin容器(只能从VPN访问)

我尝试将以下规则添加到iptables中:

代码语言:javascript
复制
iptables -I INPUT -P ACCEPT
iptables -I INPUT -i enp0s8 -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -i enp0s8 -p tcp --dport 443 -j ACCEPT
iptables -I INPUT -i enp0s8 -j DROP

但是端口8080上的phpmyadmin容器仍然可以从这两个接口到达。

EN

回答 1

Server Fault用户

发布于 2018-02-06 09:39:16

这取决于码头网络配置。通常,您只需要调整iptables -I FORWARD ...链。

iptables -I INPUT -i enp0s8只捕获出现在enp0s8上并具有与ip addr show dev enp0s8匹配的IP地址的数据包,因此不会捕获典型的停靠通信量。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/895838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档