标签:snat 删除 模块 模块名 转发 str tables tin 替换
1、防火墙:内核中具有包过滤体系用户态:iptables 管理工具
工作在网络层:可以对ip地址、端口、协议等信息进行处理
2、规则链:规则的集合
五种链:(必须大写)
INPUT:入站
OUTPUT:出站
FORWARD:转发
POSTROUTING:路由后转换
PREROUTING:路由前转换
3、规则表:规则链的集合
有4个表:
Raw:状态跟踪
Mangle:设置标记
Nat:地址转换
Filter:包过滤
4、规则的匹配顺序:
按顺序依次检查,匹配即停止(LOG策略除外),无匹配项,执行默认策略。
5、iptables语法:
Iptables -t 表名 命令选项 链名 条件选项 -j 控制类型
1) 不指定表名,为filter表
2) 命令选项、链名、控制类型必须大写,其他必须小写
3) 条件选项可以设置多项
6、控制类型:
1)ACCEPT:允许
2)REJECT:拒绝,返回信息
3)DROP:丢弃,无信息
4)LOG:记录日志,传给下一条规则
5)SNAT:源地址转换
6)DNAT:目标地址转换
7)MASQUERADE:ip伪装,源地址转换
8)REDIRECT:重定向
7、命令选项:
-A:追加到末尾
-I:插入(默认插入到第一条)
-L:查看
-D:删除(必须加序号)
-F:清空,但默认策略不清空
-P:默认策略,只有ACCEPT或DROP两种
-R:替换
-X:删除自定义链
-N:新建自定义链
-n:以数字方式显示
--line-number:添加序号
8、条件选项:
1)通用匹配:不依赖于任何条件可直接使用
-s:源地址 -d:目标地址
-p:协议 -i:入口
-o:出口 !:取反
2)隐含匹配:依赖指定的协议
--sport:源端口 --dport:目标端口
--tcp—flags:TCP标记
--icmp-type:icmp类型,有两种:
Echo-request(可用8代替) 请求
Echo-reply(可用0代替) 回应
开启转发功能:
永久有效:vim /etc/sysctl.conf
Net.ipv4.ip_forward=1
生效:sysctl -p
临时转发,立即生效
Sysctl -w net.ipv4.ip_forward=1
Echo “1” > /proc/sys/net/ipv4/ip_forward
4) 显示配置:依赖于指定的功能模块,必须明确指定模块名称才可以使用
多端口匹配:-m multiport --sports 源端口列表
-m multiport --dports 目的端口列表
IP范围匹配:-m iprange --src-range ip范围
MAC地址匹配:-m mac --mac-source MAC地址
状态匹配:-m state --state 连接状态
标签:snat 删除 模块 模块名 转发 str tables tin 替换
原文地址:http://blog.51cto.com/13502820/2068708