linux iptables 的一个问题

发布于 2021-11-24 22:58:54 字数 1241 浏览 911 评论 4

这是我的配置

:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A OUTPUT -m state --state NEW -m tcp -p tcp --sport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2021 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9989 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 30001:30010 -j ACCEPT
-A OUTPUT -m state --state NEW -m tcp -p tcp --sport 30001:30010 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

标红的地方,我在linux发布了一个java web工程,通过80端口访问,我现在在其他电脑上访问这个web工程一切正常,不过,我觉得很奇怪,我觉得应该不能正常访问。

按照我的理解,有了标红的那一句,应该表示客户端可以正常进入linux的80端口访问,但是,访问后,需要web工程把数据推送给客户端,应该还要加

-A OUTPUT -m state --state NEW -m tcp -p tcp --sport 80-j ACCEPT

请问为什么不需要加这一句呢?

 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

你曾走过我的故事 2021-11-26 10:34:15

喔,修改文件后要reload 或者重启才生效的。/etc/init.d/iptables restart 直接输入命令后下次重启会失效的,

尐偏执 2021-11-26 10:32:21

:INPUT ACCEPT [0:0] 

:FORWARD ACCEPT [0:0] 

:OUTPUT ACCEPT [0:0]这个是你iptables 默认的配置,所有都允许了,只input后面有拒绝了其他的,而output还是默认全部允许! 

少女净妖师 2021-11-26 10:22:18

INPUT OUTPUT FORWARD 不设置的话默认是ACCEPT,所以你下面写那么多也是多此一举,因为不写本来那些端口都已经是ACCEPT了。

应该一开始最先设置 iptables -P INPUT  DROP,然后再在下面配置那些input的端口开启来。

至于OUTPUT我觉得让他默认ACCEPT就行了。

勿忘初心 2021-11-26 01:40:59

:INPUT ACCEPT [0:0] 

:FORWARD ACCEPT [0:0] 

:OUTPUT ACCEPT [0:0]这个是你iptables 默认的配置,所有都允许了,只input后面有拒绝了其他的,而output还是默认全部允许! 

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文