第一章 什么是防火墙
1. 软件防火墙
iptables免费 是开源。
2. 硬件防火墙
华为
深信服
思科
H3C
Juniper
天融信
飞塔
网康
绿盟科技
金盾
3. 防火墙工作流程
4. iptables工作流程小结
- 防火墙是一层层过滤的。实际是按照配置规则的顺序从上到下,从前到后进行过滤的。
- 如果匹配上了规则,即明确表明是阻止还是通过,此时数据包就不在向下匹配新规则了。
- 如果所有规则中没有明确表明是阻止还是通过这个数据包,也就是没有匹配上规则,向下进行匹配,直到匹配默认规则得到明确的阻止还是通过。
- 防火墙的默认规则是对应链的所有的规则执行完以后才会执行的(最后执行的规则)。
5. iptables表(tables)
表 | 功能 |
---|---|
filter | 负责主机防火墙功能 |
nat | 端口或IP映射以及共享上网功能 |
mangle | 配置路由标记ttl tos mark |
raw | 跟踪或处理数据包 |
6. iptables表对应的链
链 | 功能 |
---|---|
INPUT | 进入主机的数据包,主机防火墙(filter表的INPUT链) |
OUTPUT | 流出主机的数据包 |
FORWORD | 流经主机的数据包 |
PREROUTING | 进入服务器最先经过的链,NAT端口或IP映射 |
POSTROUTING | 在流出服务器最后经过的链,NAT共享上网,局域网共享上网(nat表的POSTROUTING链) |
7. iptables表和链工作原理图
第二章 iptables命令
命令 | 解释 | 含义 |
---|---|---|
-D | –delete | 删除链上的规则 |
-D | –delete | 根据规则号删除规则 |
-I | –insert | 插入规则到第一行 |
-L | –list | 列表链里的所有规则 |
-n | –numeric | 以数字的形式显示规则 |
-P | –policy | 指定链的默认规则 |
-F | –flush | 清除一个链或所有链上的规则 |
-Z | –zero | 链的计数器清零 |
-N | –new | 用户自定义的链 |
-X | –delete-chain | 删除用户自定义的链 |
-t | –table | 指定表 |
参数 | 含义 |
---|---|
-p | 指定过滤的协议-p(tcp、udp、icmp、all) |
–dport | 指定目标端口(用户请求的端口) |
-j | 对规则的具体处理方法(ACCEPT、DROP、REJECT、SNAT/DNAT) |
–sport | 指定源端口 |
-s | 指定数据库源IP地址 !取反 |
-d | 指定目的IP地址 |
-i | 进入的网络接口(eth0、eth1) |
-o | 出去的网络接口(eth0、eth1) |
Commands:
Either long or short options are allowed.
--append -A chain #<==把规则添加到指定的链上@@@@@
[!] --proto -p proto #<==指定过滤的协议-p(tcp,udp,icmp,all)@@@@@
[!] --source -s address[/mask][...] #<==指定源地址。@@@@@
[!] --destination -d address[/mask][...] #<==指定目的地址。@@@@@
[!] --in-interface -i input name[+] #<==进入的网络接口(eth0,eth1)。@@@@@
[!] --out-interface -o output name[+] #<==出去的网络接口(eth0,eth1)。@@@@@
--dport #<==指定目标端口。@@@@@
--sport #<==指定源端口。@@@@@
--jump -j target #<==对规则的具体处理方法(ACCEPT,DROP,REJECT,SNAT/DNAT)@@@@@
-p icmp --icmp-type 8 #<==控制ping。
例子:禁止10.0.0.7以外的ip ping服务器。
iptables -I INPUT -p icmp --icmp-type 8 -i eth0 -s ! 10.0.0.7 -j DROP
=