linux-防火墙iptables

防火墙网络


主机型防火墙(本身保护本身)ssh

网络型防御墙(保护某个网络)tcp


实现方式分  硬件防火墙   软件防火墙ide

                                     iptables工具



172.40.55.10  (要使用iptables保护本身)接口

[root@ca ~]# rpm -q  iptablesip

iptables-1.4.7-16.el6.x86_64路由

[root@ca ~]#get


内核态  filter   (功能)it

用户态  iptables  (管理工具)


4张表(功能)

raw  作状态跟踪

mangle   打标签

nat         作地址或端口转换

filter      默认表, 对ip包作过滤   (3条链   INPUT   OUTPUT  FORWARD)


5条链(ip包传输的方向)

INPUT         处理进入防火墙本机的ip包

OUTPUT     处理从防火墙本机出去的ip包

FORWARD  处理从防火墙本机通过的ip包

POSTROUTING   路由后处理

PREROUTING      路由前处理


管理选项

查看   -L

清空全部规则   -F

给表中的链设置默认规则  -P

给表中的链添加新规则

-A          新规则在已有规则的末尾

-I            新规则添加在已有规则的上方

-I  编号    新规则添加指定规则的上方

-D           删除某条规则


匹配条件

-s   指定ip包中的源地址    172.40.55.10        172.40.55.0/24

-d   指定ip包中的目标地址    172.40.55.10        172.40.55.0/24


-p  数据传输协议  tcp  udp    icmp

--dport   目标端口

--sport    源端口

-i               指定ip包进入的网络接口

-o              指定ip包出去的网络接口


处理动做

ACCEPT

DROP

REJECT


编写防火墙规则 

iptables    -t   表名   管理选项    链名  匹配条件  -j  处理动做



iptables  -t  filter   -P   INPUT   DROP

iptables  -t  filter   -A  INPUT   -s  172.40.55.10  -j   ACCEPT

iptables  -t  filter   -L  INPUT



[root@ca ~]# iptables -t filter --line-numbers -nL  INPUT 

Chain INPUT (policy ACCEPT)

num  target     prot opt source               destination         

1    ACCEPT     all  --  172.40.55.10         0.0.0.0/0           

[root@ca ~]# 



iptables    -I   INPUT   -s  172.40.55.190  -p tcp  --dport  22   -j  ACCEPT



iptables    -I   INPUT   2   -s  172.40.55.103  -p tcp  --dport  22   -j  ACCEPT



iptables  -t  filter   -D  INPUT   2


iptables  -F   INPUT


iptables  -F 




只容许本身Ping别人  不容许ping本身

iptables  -t  filter   -P  INPUT  DROP

iptables  -t  filter   -P  OUTPUT  DROP

iptables  -F


iptables  -t  filter  -A  OUTPUT  -p  icmp  --help 



iptables  -t  filter  -A  OUTPUT  -p  icmp --icmp-type  echo-request   -j  ACCEPT


iptables  -t  filter  -A  INPUT  -p  icmp   --icmp-type  echo-reply  -j  ACCEPT


++++++++++++++++++++++++++++++

iptables  -t  filter   -P  INPUT  ACCEPT

iptables  -t  filter   -P  OUTPUT  ACCEPT

iptables  -F


iptables  -t  filter  -A  INPUT  -p  icmp --icmp-type  echo-request   -j  REJECT


iptables  -t  filter   -A  OUTPUT  -d  172.40.55.10  -p tcp --dport  22  -j  DROP


ssh  root@172.40.55.10

++++++++++++++++++++++++++++++++++++++++

[root@svr5 ~]# iptables  -A  INPUT  -s 192.168.4.120  -j  DROP

[root@svr5 ~]# iptables  -A  INPUT   -s  10.0.10.0/24  -j  DROP


[root@svr5 ~]# iptables  -A  FORWARD  -s 192.168.0.0/16  -i eth1  -j  DROP

[root@svr5 ~]# iptables  -A  FORWARD  -s 172.16.0.0/16  -i eth1  -j  DROP




iptables   -t  filter   -P  INPUT   DROP

iptables  -t   filter   -A  INPUT   -s  172.40.55.0/24  -j  ACCEPT

iptables  -t   filter   -I  INPUT   -s  172.40.55.10  -j  DROP


 

[root@svr5 ~]# iptables  -A  FORWARD  -s 192.168.0.0/16  -i eth1  -j  DROP

[root@svr5 ~]# iptables  -A  FORWARD  -s 172.16.0.0/16  -i eth1  -j  DROP



[root@svr5 ~]# iptables  -A  INPUT  -s  192.168.168.0/24  \

  -p  tcp  --dport  22  -j ACCEPT



[root@svr5 ~]# iptables  -A INPUT  -s  220.181.78.0/24  -p  tcp  --dport  22  -j  ACCEPT



[root@svr5 ~]# iptables  -A  INPUT  -p  tcp  --dport  22  -j  DROP


[root@svr5 ~]# iptables -A INPUT  ! -s 192.168.168.0/24 -p  tcp  --dport  20:21  -j  DROP



[root@svr5 ~]# iptables  -A  INPUT  -p icmp  --icmp-type \

   echo-request  -j  DROP

[root@svr5 ~]# iptables  -A  INPUT  -p icmp  !  --icmp-type \

   echo-request  -j  ACCEPT


[root@svr5 ~]# iptables  -A  OUTPUT  -p icmp  --icmp-type \

   echo-request  -j  ACCEPT

[root@svr5 ~]# iptables -A OUTPUT -p icmp ! --icmp-type \

   echo-request  -j  DROP


扩展匹配条件

相关文章
相关标签/搜索