iptables相关管理命令

1.基础

1)基本参数

参数 功能
-t 指定表名称
-n 不作解析
-L 列出指定表中的策略
-A 增加策略
–dport 端口
-s 数据来源
-j 动作
ACCEPT 允许
REJECT 拒绝
DPOR 丢弃
-N 增加链
-E 修改链名称
-X 删除链
-D 删除指定策略
-I 插入
-R 修改策略
-p 网络协议
-P 修改默认策略

2)iptables火墙策略执行生效规则

<1>策略即改即生效

<2>iptables -nL 是从上到下短路规则查看权限,匹配了就直接通过,后面就不看了

2.基本命令操作与实验

1)基本命令演示

systemctl stop firewalld
systemctl start iptables.service

iptables -nL 		##列出指定表中的策略,并对来源地址进行反向解析

在这里插入图片描述

iptables -t filter -L	##查看filter表中的策略,不做解析

在这里插入图片描述

iptables -t filter -nL		##查看filter表中的策略,并做解析

在这里插入图片描述

service iptables save			##保存当前策略

在这里插入图片描述

iptable  -F			#刷掉filter表中的所有策略,当没有用-t指定表名称时,默认为表filter

在这里插入图片描述

iptables -A INPUT -i lo -j ACCEPT	#允许lo

在这里插入图片描述

iptables -A INPUT -p tcp --dport 22 -j ACCEPT	##允许访问22端口

在这里插入图片描述

iptables -A INPUT -s 172.25.254.250 -j ACCEPT		##允许250主机访问本机所有端口

在这里插入图片描述

iptables -A INPUT -j REJECT 			##拒绝所有主机的数据来源

在这里插入图片描述

iptables -N redhat	##增加链redhat

在这里插入图片描述

iptables -E redhat westos	##改变链名称

在这里插入图片描述

iptables -X westos	##删除westos链

在这里插入图片描述

iptables -D INPUT 1	##删除INPUT链中的第一条策略

在这里插入图片描述

iptables -I INPUT  2 -p tcp --dport 80  -j REJECT	##插入策略到INPUT中的第二条(不写插入位置。默认第一条)

在这里插入图片描述

iptables -R INPUT 4 -p tcp --dport 80 -j ACCEPT	##修改第四条策略

在这里插入图片描述

iptables -P INPUT DROP		##把INPUT表中的默认策略改为drop

在这里插入图片描述

2)利用以上命令进行实验

实验一:利用iptables火墙策略实现火墙地址伪装功能

双网卡(172.25.6.106/1.1.1.106)主机作为服务端,相关配置如下:

iptables -F	##刷掉原有的火墙策略

在这里插入图片描述
保证能ping通250主机
在这里插入图片描述

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 172.25.254.106
iptables -nL -t nat

–to-source: POSTROUTING:可以在这里定义进行源NAT的规 则,系统在决定了数据包的路由以后在执行该链中的规则。

在这里插入图片描述
客户端(1.1.1.206)测试:
在这里插入图片描述

实验二:利用iptables火墙策略实现转接功能

在服务端添加新策略:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 22 -j DNAT --to-dest 1.1.1.221	##添加转接功能

–to-dest:
PREROUTING:(外部访问内部)可以在这里定义进行 目的NAT的规则,因为路由器进行路由时只检查数据包的目的ip地址,所以为了使数据包得以正确路由,我们必须在路由之前就进行目的NAT

在这里插入图片描述

测试:在172.25.6.250上做

在这里插入图片描述

3.火墙策略优化

iptables -F				##刷掉所有策略

之前连接过本机、与正在连接的机子向他们开放所有服务

iptables -A INPUT -m state --state RELATED,ESTABLISHED  -j ACCEPT

新连接的主机如是通过回环接口,即可允许

iptables -A INPUT -i lo -m state --state NEW -j ACCEPT 

新连接的机子若是通过22/tcp 接口进入的被允许

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT

新连接的机子若是通过80/tcp 接口进入的被允许

iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT

新连接的机子若是通过443/tcp 接口进入的被允许

iptables -A INPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT

新连接的机子若是通过53/tcp 接口进入的被允许

iptables -A INPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT

通过其他接口进入的新主机都将被禁止

iptables -A INPUT -m state --state NEW -j REJECT

常用端口号对应的服务或协议

139、455——SMB
860——ISCSI
22——SSH
80——HTTP
443——HTTPS
53——DNS

猜你喜欢

转载自blog.csdn.net/meltsnow/article/details/88431117