iptables

一、在服务器上打开 22、80、9011端口:

iptables -A INPUT -p tcp --dport 9011 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 9011 -j ACCEPT

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT

 

二:关闭所有其他的端口:

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

 

三:查看iptables:

iptables -L -n --line-number 

---------------------------------

num target prot opt source destination
1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:9011
2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:22
3 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:80

 

四:删除第三条规则:

 iptables -D INPUT 3

iptables -D  OUTPUT 3

 

五: iptables配置顺序

如下: 想要增加 9021 端口, 执行 

iptables -A INPUT -p tcp --dport 9021 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 9021 -j ACCEPT

后发现 9021 端口还是不通。查看 配置的规则, 因为 第六条规则   reject-with icmp-host-prohibited 拒绝了所有的请求,在这条规则后面的 允许9021 、9020 的 都没有生效。

[root@localhost nginx]# iptables -L -n --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
5    REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited
6    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:9020
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
8    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:9020
9    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:9021
10   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:9021

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:9020
2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:9021

要想允许访问 9021 端口,需要执行:

iptables -I INPUT 3 -p tcp --dport 9021 -j ACCEPT

把 允许 9021 的规则插入到   icmp-host-prohibited 前面。

[root@localhost nginx]# iptables -L -n --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
3    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:9021
4    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
5    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
6    REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:9020
8    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
9    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:9020
10   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:9021
11   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:9021

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:9020
2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:9021

这样 telnet 该机器的 9021 端口才能通。

 

posted @ 2016-09-13 17:50  zhoudingzhao  阅读(370)  评论(0编辑  收藏  举报