iptables配置失败

来源:5-2 配置 iptables 和 Fail2Ban 增强安全防护

newming

2017-04-13

http://szimg.mukewang.com/58ef841b0001546a11340152.jpg

http://szimg.mukewang.com/58ef842d0001ffdc13060902.jpg


写回答

5回答

Scott

2017-04-14

COMMIT 本身不会出错

应该之前的某一行出错了,我们这样排查

从 COMMIT 之前的一行,一行行倒着删除,删除一行后,就运行 sudo iptables-restore 这个命令,看这个 warning 会不会出现,直到删除到不再出现为止,然后,再逐行的回复,看看能定位到哪一行有了错误


0
3
热心网友✌
我出现了同样的问题,`-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 150 -j DROP` 这一行没有拼写错误。但是最后一行commit就是会报错,删除后就好了。
2017-04-17
共3条回复

Scott

2017-04-18

COMMIT 后面要留有一个空行,再试试看,另外对比下我这里完整的规则,应用和数据库端口部分不用完全一样,先看跟当前课程有关的这些规则。


*filter
# allow all connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# allow out traffic
-A OUTPUT -j ACCEPT
# allow http https
-A INPUT -p tcp --dport 443 -j ACCEPT
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 8081 -j ACCEPT
# allow ssh port login
-A INPUT -p tcp -m state --state NEW --dport 39999 -j ACCEPT
# ping
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
# mongodb connect
-A INPUT -s 127.0.0.1 -p tcp --destination-port 19999 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -d 127.0.0.1 -p tcp --source-port 19999 -m state --state ESTABLISHED -j ACCEPT
# website
-A INPUT -s 127.0.0.1 -p tcp --destination-port 3000 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -d 127.0.0.1 -p tcp --source-port 3000 -m state --state ESTABLISHED -j ACCEPT
# movie
-A INPUT -s 127.0.0.1 -p tcp --destination-port 3001 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -d 127.0.0.1 -p tcp --source-port 3001 -m state --state ESTABLISHED -j ACCEPT
# gougou app
-A INPUT -s 127.0.0.1 -p tcp --destination-port 3002 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -d 127.0.0.1 -p tcp --source-port 3002 -m state --state ESTABLISHED -j ACCEPT
# indust app
-A INPUT -s 127.0.0.1 -p tcp --destination-port 3003 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -d 127.0.0.1 -p tcp --source-port 3003 -m state --state ESTABLISHED -j ACCEPT
# wechat
-A INPUT -s 127.0.0.1 -p tcp --destination-port 3004 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -d 127.0.0.1 -p tcp --source-port 3004 -m state --state ESTABLISHED -j ACCEPT
# log denied calls
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied:" --log-level 7
# drop incoming sensitive connections
-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 150 -j DROP
# reject all other inbound
-A INPUT -j REJECT
-A FORWARD -j REJECT
COMMIT


0
0

macq

2017-06-06

-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 150 -j DROP

这行去掉就行了

1
0

七月有风

2017-04-18

把老师的代码复制后,也会出现 iptables-restore: line 40 failed ,难到是我其他的地方的配置错了吗?

0
2
七月有风
回复
热心网友✌
已解决,谢谢!
2017-04-18
共2条回复

newming

提问者

2017-04-13

老师,我的22行就是最后一行 COMMIT ,去掉这行它又报错说缺少这行

0
0

Node.js项目线上服务器部署与发布

阿里云部署Node.js+MongoDB+Nginx的应用项目,打通全栈

1747 学习 · 448 问题

查看课程