iptable--火墙的配置管理:多样的火墙服务

iptable

客户端(1.1.1.101)
之前需要在客户端配置网关,使客户端能和服务端相连
在这里插入图片描述
客户端(172.25.254.70)
除基础配置外不做其他设置

服务端(1.1.1.101)(172.25.254.101)
开启服务需要先关闭火墙

 systemctl stop firewalld.service 
 systemctl disable firewalld.service 

在这里插入图片描述
在这里插入图片描述

iptables的表与链

iptables具有Filter, NAT, Mangle, Raw四种内建表:

  1. Filter表

Filter表示iptables的默认表,因此如果你没有自定义表,那么就默认使用filter表,它具有以下三种内建链:

INPUT链 – 处理来自外部的数据。
OUTPUT链 – 处理向外发送的数据。
FORWARD链 – 将数据转发到本机的其他网卡设备上。
  1. NAT表

NAT表有三种内建链:

PREROUTING链 – 处理刚到达本机并在路由转发前的数据包。它会转换数据包中的目标IP地址(destination ip address),通常用于DNAT(destination NAT)。
POSTROUTING链 – 处理即将离开本机的数据包。它会转换数据包中的源IP地址(source ip address),通常用于SNAT(source NAT)。
OUTPUT链 – 处理本机产生的数据包。
  1. Mangle表

Mangle表用于指定如何处理数据包。它能改变TCP头中的QoS位。Mangle表具有5个内建链:

PREROUTING
OUTPUT
FORWARD
INPUT
POSTROUTING
  1. Raw表

Raw表用于处理异常,它具有2个内建链:

PREROUTING chain
OUTPUT chain

iptable

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

策略查看

iptables  -t filter -nL		#查看filter表中的策略
iptables  -F			#刷掉filter表中的所有策略,当没有用-t指定表名称时默认时filter(相当于删除)

在这里插入图片描述

策略文件

iptables -F
iptables -nL
###查看之前文件被清除

在这里插入图片描述

systemctl restart iptables.service 
iptables -nL
###重启服务后恢复

###内容存储在文件/etc/sysconfig/iptables中
vim /etc/sysconfig/iptables
###查看策略文件
service iptables save		
#保存当前策略
iptables -F
iptables -nL
###删除且不会恢复

在这里插入图片描述

权限设置

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 -D INPUT -s 172.25.254.70 -j ACCEPT
iptables -nL
iptables -D INPUT -p tcp --dport=22  -j ACCEPT

ssh连接断开
在这里插入图片描述
在这里插入图片描述
在服务端

iptables -A  INPUT -p tcp --dport 22  -j ACCEPT
iptables -nL

发现有报错,删除优先级更高的

iptables -D INPUT -j REJECT
iptables -nL

无报错

[kiosk@localhost ~]$ ssh root@172.25.254.101

连接成功

在这里插入图片描述

自定义链的管理(默认端为例)

增加链

  iptables -N redhat	##增加链redhat
    iptables -nL

在这里插入图片描述

改变链名称

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

在这里插入图片描述

删除westos链

iptables -X westos	##删除westos链
iptables -nL

在这里插入图片描述

指定链中策略的管理

iptables -I INPUT  -p tcp --dport 80  -j REJECT 
###插入策略到INPUT中的第一条(修改优先级)
iptables -nL

在这里插入图片描述

iptables -D INPUT 1	
###删除INPUT链中的第1条策略
iptables -nL
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190606000521959.png)

iptables -R INPUT 1 -p tcp --dport 80 -j ACCEPT	
###修改第一条策略
iptables -nL

在这里插入图片描述

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

在这里插入图片描述
###仅添加172.25.254.70的ssh端口开放
两种方法

1
还原

iptables -F

修改

iptables -D INPUT 3
iptables -nL
iptables -t filter -I INPUT 1 -p tcp -s 172.25.254.70 --dport 22 -j ACCEPT
         ^              ^   ^  ^      ^                   ^       ^
         表            链 第几条 协议    来源            端口    动作 (!除了)
iptables -A INPUT  -p tcp --dport 22 -j REJECT 

在这里插入图片描述
测试

ssh root@172.25.254.101

在这里插入图片描述
在这里插入图片描述
2
仅允许172.25.254.70的ssh端口开放(仅不允许拒绝)

iptables -F
iptables -nL
iptables -A INPUT ! -s 172.25.254.70 -p tcp --dport 22 -j ACCEPT 

在这里插入图片描述

测试

地址伪装与端口转发

SNAT(源地址转换)源映射

DNAT(目的地址转换) 目的映射

在这里插入图片描述
在这里插入图片描述
环境

服务端:des 
        内网:1.1.1.101
        外网:172.25.254.101
客户端:client
        ip:1.1.1.201
        网关:1.1.1.101

服务端

ip addr show 

在这里插入图片描述
客户端

ifconfig eth0

在这里插入图片描述
查看网关

route -n
ping通不同网段

在这里插入图片描述

地址伪装(SNAT)

服务端

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source=172.25.254.101
iptables -t nat -nL 
###查看nat域

-o out指输出
--to-source指转换后的ip

在这里插入图片描述
客户端
可以与处在非同网段的主机通信
登陆非同网段主机,发现地址被伪装

[kiosk@client ~]#ssh root@172.25.254.70
[kiosk@localhost ~]$ w -i

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
.端口转发(DNAT)

iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 22 -j DNAT --to-dest 1.1.1.101
###将从eth0进入连接22端口的将ip转换为1.1.1.101
iptables -t nat -nL

--to--destination  ##指定执行DNAT策略后数据包的目的IP
-i        ##指定数据包从哪一块网卡进入

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值