Linux火墙策略iptables
##iptables##
iptables时linux内核集成的过滤防火墙系统,包含三表filter、nat、mangle
五链(INPUT,OUTPUT,FORWARD,PROEROUTING,POSTROUTING)
filter:如果没有定义任何规则,filter表为默认表,并且基于它来过滤。
它用来访问控制,规则匹配,过滤网络包。支持的链为INPUT,OUTPUT
FORWARD
nat:nat表主要用于网络地址转换,根据表中规则,修改网络包的IP,流中
的包仅遍历一次nat表。例如,如果一个通过某个接口的包被修饰(修改ip)
该流中的包将不再遍历这个表,nat支持的链为PREROUTING,POSTROUTING
OUTPUT
mangle:这个表用于校正网络包。它用来对特殊包的包头和内容(TTL,TOS,
MARK)进行标记修改,mangle表不能用于地址伪装。支持所有的链
#1.安装
关闭firewalld服务,开启iptables服务
#2.基本参数
1)查看iptable列表
2)iptables -F 刷掉filter表中的策略,没加-t指定表时,默认为filter
service iptables save 保存当前策略
用ssh登陆时,iptables -A INPUT -j REJECT 拒绝所有会导致无法输入
//iptables -I INPUT n 插入到INPUT链中的第n条
3)允许172.25.254.70访问22端口
测试:
//成功登陆
4)允许访问80端口
测试:
5)iptables -D INPUT 3 删除INPUT链中第3条策略
6)iptables -D INPUT -p tcp 80 -j REJECT删除允许80端口的策略
7)iptables -R INPUT 1 -s 172.25.254.70 -p tcp --dport 80 -j ACCEPT 修改第一条策略
8)增加链WESTOS
9)改变链的名字,删除链
#3.数据包状态策略(缓解压力,提高速度)
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 允许RELATED,ESTABLISHED状态通过
iptables -I INPUT 2 -i lo -m state --state NEW -j ACCEPT 允许回环接口状态为NEW通过
iptables -I INPUT 3 -p tcp --dport 22 -m state --state NEW -j ACCEPT 允许访问22端口状态为NEW通过
//NEW的策略通过后变为RELATED或ESTABLISHED ,此后访问直接通过iptables加快访问速度
#4.iptables 的伪装
环境配置
服务器xwdzds双网卡:eth0:172.25.254.100
eth1:172.25.70.100
客户端handsome:172.25.70.44
真机xwd-test:172.25.254.70
##源地址转换
客户端到真机
1)清空iptables
2)设置从客户端到从服务端eth0出去的数据伪装称源数据为172.25.254.100
3)配置客户端网关为172.25.70.100
4)启动内核路由转发
5)测试数据伪装
//可以ping通真机
6)ssh连接真机
//显示从172.25.70.44连接的真机
##目的地址转换
真机到客户端
//连接172.25.254.100会自动跳转到172.25.254.44