防火墙是由上而下的顺序来读取配置的策略规则,策略规则的设置有两种:通(放行)、堵(阻止)。当默认策略设置为通时,就要设置拒绝规则,当默认策略为堵时,则要设置允许规则。
iptables服务把用于处理或过滤流量的策略条目称为规则,多条规则组成一个规则链,规则连依据数据包处理位置的不同进行分类。
在进行路由选择前处理数据包:PREROUTING
处理流入的数据包:INPUT(此规则使用最多,可增加外网入侵的难度)
处理流出的数据包:OUTPUT
处理转发的数据包:FORWARD
在进行路由选择后处理数据包:POSTROUTING
对应的动作,ACCEPT(允许流量通过)、REJECT(j拒绝流量通过)、LOG(记录日志信息)、DROP(丢弃,不响应,发送方无法判断是被拒绝),规则链的默认拒接动作只能是DROP
一、iptables常用参数
-P(大写):设置默认规则
-F:清空规则链
-L:查看规则链
-A:在规则连末尾加入新规则
-I:在规则链头部加入新规则
-D num:删除某一条规则
-j:匹配相对应的动作
-s:匹配来源地址IP/MASK,加" ! "表示除这个IP外
-d:匹配目标地址
-i 网卡名称:匹配从这块网卡流入的数据
-o 网卡名称:匹配从这块网卡流入的数据
-p:匹配协议,如TCP、UDP、ICMP
--dport num:匹配目标端口号
--sport num:匹配来源端口号
二、iptables常用命令:
-
iptables -F 清除预设表filter中的所有规则链的规则 ---慎用
-
iptables -L 查看规则链
-
iptables -F 清除规则链,只剩默认策略 ---慎用
-
iptables -P 设置默认策略
iptables -P INPUT DROP (设置INPUT的默认策略为DROP)
-
iptables -D num 删除策略
-
service iptables save 保存iptables(配置完之后记得保存)
7.service iptables restart 重启iptables(每次配完保存之后重启生效)
8.启动和关闭防火墙的命令
- 重启后生效开
开启: chkconfig iptables on
关闭: chkconfig iptables off
- 即时生效,重启后失效
开启: service iptables start
关闭: service iptables stop
三、iptables用法示例(均以入网INPUT链做示范,每条规则顺序不能错)
1.查看规则链( iptables -L)
2.清除规则链( iptables -F),只剩默认策略。
3.设置默认策略( iptables -P INPUT DROP),设置INPUT的默认策略为DROP,之前的是ACCEPT。
4.配置允许所有IP访问本机22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
5.配置允许某一网段访问本机所有端口
iptables -A INPUT -s 192.168.1.0/24 -p tcp -j ACCEPT
6.配置禁止某个ip访问本机的50070端口
iptables -I INPUT -s 192.168.1.123 -p tcp --dport 50070 -j DROP
7.删除某个规则
iptablD INPUT -s 192.168.1.123 -p tcp --dport 50070 -j DROP
8.使配置防火墙策略永久生效,执行保存命令,不然的话重启后会失效
service iptables save