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.安装

Linux火墙策略iptables

关闭firewalld服务,开启iptables服务

Linux火墙策略iptables

#2.基本参数

Linux火墙策略iptables

1)查看iptable列表

Linux火墙策略iptables

2)iptables -F 刷掉filter表中的策略,没加-t指定表时,默认为filter

service iptables save 保存当前策略

Linux火墙策略iptables

用ssh登陆时,iptables -A INPUT -j REJECT 拒绝所有会导致无法输入

Linux火墙策略iptables

//iptables -I INPUT n 插入到INPUT链中的第n条

Linux火墙策略iptables

3)允许172.25.254.70访问22端口

Linux火墙策略iptables

测试:

Linux火墙策略iptables

//成功登陆

4)允许访问80端口

Linux火墙策略iptables


测试:

Linux火墙策略iptables


5)iptables -D INPUT 3 删除INPUT链中第3条策略

Linux火墙策略iptables

6)iptables -D INPUT -p tcp 80 -j REJECT删除允许80端口的策略

Linux火墙策略iptables

7)iptables -R INPUT 1 -s 172.25.254.70 -p tcp --dport 80 -j ACCEPT 修改第一条策略

Linux火墙策略iptables

8)增加链WESTOS

Linux火墙策略iptables

9)改变链的名字,删除链

Linux火墙策略iptables

#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通过

Linux火墙策略iptables

//NEW的策略通过后变为RELATED或ESTABLISHED ,此后访问直接通过iptables加快访问速度

#4.iptables 的伪装

环境配置

服务器xwdzds双网卡:eth0:172.25.254.100

          eth1:172.25.70.100

客户端handsome172.25.70.44

真机xwd-test172.25.254.70

##源地址转换

客户端到真机

1)清空iptables

 Linux火墙策略iptables

2)设置从客户端到从服务端eth0出去的数据伪装称源数据为172.25.254.100

Linux火墙策略iptables

3)配置客户端网关为172.25.70.100

 Linux火墙策略iptables

 Linux火墙策略iptables

4)启动内核路由转发

 Linux火墙策略iptables

 Linux火墙策略iptables

5)测试数据伪装

 Linux火墙策略iptables

//可以ping通真机

6)ssh连接真机

 Linux火墙策略iptables

//显示从172.25.70.44连接的真机

##目的地址转换

真机到客户端

 Linux火墙策略iptables

 Linux火墙策略iptables

//连接172.25.254.100会自动跳转到172.25.254.44