一.iptables规则的保存还原:
1.保存规则 iptables-save > 文件路径
iptables-save > 文件路径
2.还原规则 iptables-restore < 文件路径
iptables-restore < 文件路径
3.保存为默认规则
iptables-save > /etc/sysconfig/iptables
二.SNAT原理与应用
① SNAT应用环境
局域网主机共享单个公网IP地址接入Internet (私有IP不能在Internet中正常路由)
② SNAT原理
修改数据包的源地址
③ SNAT转换前提条件
1.局域网各主机已正确设置IP地址、子网掩码、默认网关地址
2.Linux网关开启IP路由转发
临时打开:
echo 1>/proc/sys/net/ipv4/ip forward
sysctl -w net.ipv4.ip forward=1
永久打开:
vim /etc/sysctl.confnet.ipv4.ip forward =1#将此行写入配置文件
sysct1l -P#读取修改后的配置
④ SNAT转换1:固定的公网IP地址:
iptables-t nat -A POSTROUTING -s 192.168.80.0/24 -0 ens33 j SNAT --to 12.0.0.1
iptables -t nat -A POSTROUTING-s 192.168.80.0/24 -0 ens33 -j SNAT --to-source 12.0.0.1-12.0.0.10
-s 内网IP
-0 出站外网网卡
source 外网IP或地址池
⑤ SNAT转换2:非固定的公网IP地址(共享动态IP地址) :
iptables -t nat -A POSTROUTING -s 192.168.80.0/24 -o ens33 -j MASQUERADE
三.DNAT原理与应用
DNAT转换前提条件:
1.局域网的服务器能够访问Internet
2.网关的外网地址有正确的DNS解析记录
3.Linux网关开启IP路由转发
vim /etc/sysctl.conf
net.ipv4.ip forward =1
sysctl -P
DNAT转换1:发布内网的Web服务
#把从ens33进来的要访问web服务的数据包目的地址转换为192.168.80.11
iptables -t nat -A PREROUTING -i ens33 -d 12.0.0.1 -p tcp --dport 80 -j DNAT--to 192.168.80.11
或者
iptables -t nat -A PREROUTING -i ens33 -d 12.0.0.1 -p tcp --dport 80-i DNAT --to-destination 192.168.80.11
i:入站外网网卡12.0.0.1:外网IP
192.168.80.11:内网服务器IP
iptables -t nat -A PREROUTING -i ens33 -p tcp --dport 80 _j DNAT--to 192.168.80.11-192.168.80.20
DNAT转换2:发布时修改目标端口
#发布局域网内部的openssH服务器,外网主机需使用250端口进行连接
iptables -t nat-A PREROUTING -i ens33 -d 12.0.0.1-p tcp --dport 250 - DNAT --to 192.168.80.11:22
#在外网环境中使用sSH测试
ssh -p 250 root@12.0.0.1
yum -y install net-tools
#若没有ifconfiq 命令可提前使用yum 进行安装
ifconfig ens33
小知识扩展:
1. 主机型防火墙主要使用INPUT、OUTPUT链,设置规则时一-般要详细的指定到端口
2.网络型防火墙主要使用FORWARD链,设置规则时很少去指定到端口,一般指定到IP地址或者到网段即可