目录
一、iptables保存规则
使用iptables命令定义的规则,都是临时性的,其生效期限为kernel存活期限,一旦系统重启,之前定义的规则都会丢失。
1、持久保存 iptables规则
iptables-save > 文件
将设置的规则重定向放置到一个备份文件中,文件名和路径自定义
2、加载规则
iptables-restore < 文件
将备份文件中的规则重定向导入
3、开机自动重载规则
将加载规则写入 /etc/rc.d/rc.local 的配置文件中,可以让系统重启即可生效。注意要给文件执行权限!
二、自定义链
自定义链类似于函数,将类型相同的规则放入一个自定义链中,然后再调用整个规则
1、创建自定义链
iptables -N 链名
2、修改自定义链名
iptables -E 旧链名 新链名
3、创建规则
创建好自定义链后在链中创建规则,但自定义链中的规则并不可以可以直接使用,因为自定义链中没有对应的钩子函数,所以需要把自定义链放到系统自带的五个链中使用。
4、删除自定义链
删除自定义链需要先使用iptables -F清空规则,再使用iptables -X +自定义链名删除
三、NAT表
NAT表的作用是地址转换规则表,可以修改数据包中的源、目标ip或端口,支持PREROUTING,INPUT,OUTPUT,POSTROUTING四个链,分为SNAT和DNAT。
1、SNAT
SNAT的作用是让内网设备可以访问外网。私网地址不能在Internet中正常路由,通过SNAT将私网源地址转换为公网ip,从而访问公网上的设备。
SNAT转换前提条件:
①局域网各主机已正确设置IP地址、子网掩码、默认网关地址
②Linux网关开启IP路由转发
SNAT实验:
①关闭三台设备的firewalld和安全机制 ,在test1外网服务器上yum安装httpd软件
②开启网关服务器test2的路由转发功能
③给网关服务器test2添加网卡,并更改网卡的配置文件,重启网络服务
④配置内网服务器test3的网卡,重启网络服务
⑤配置外网服务器test1的网卡,重启网络服务
⑥在网关服务器test2上设置SNAT
⑦在内网服务器test3上使用curl检测
2、DNAT
DNAT的作用是让外网设备访问到内网的机器,改变目的地址,保证了内网服务器的安全,通常被叫做目的映谢。
DNAT转换前提条件:
①局域网的服务器能够访问Internet
②网关的外网地址有正确的DNS解析记录
③ Linux网关开启IP路由转发
DNAT实验:
①关闭三台设备的firewalld和安全机制 ,在test3内网服务器上yum安装httpd软件
②开启网关服务器test2的路由转发功能
③给网关服务器test2添加网卡,并更改网卡的配置文件,重启网络服务
④配置内网服务器test3的网卡,重启网络服务
⑤配置外网服务器test1的网卡,重启网络服务
⑥在网关服务器test2上设置DNAT
⑦在外网服务器test1上使用curl检测