33. linux中firewalld防火墙的地址伪装与地址转发

Lesson33 linux中firewalld防火墙的地址伪装与地址转发

1. 实验:拒绝ip为172.25.254.250主机访问我的desktopfirewalld火墙服务器

实验目的:拒绝ip为172.25.254.250主机访问我的desktopfirewalld火墙服务器,desktop火墙服务器的ip为172.25.254.114
说明:因为172.25.254.250是别人主机的ip,为了验证实验现象,我先完成拒绝自己的真机(ip为172.25.254.14)访问desktop防火墙服务器

实验步骤:
在desktop服务器端

firewall-cmd --permanent --add-service=ssh  #给火墙永久添加ssh服务
firewall-cmd --reload  #重新加载使其生效
firewall-cmd --list-all  #查看火墙信息列表,查看ssh服务是否已经成功添加

在这里插入图片描述

firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -s 172.25.254.250 -p tcp --dport 22 -j REJECT #永久添加规则,指定ipv4的filter表的INPUT 1链,数据来源为172.25.254.250的,传输协议为tcp,到达22端口(ssh服务的端口)的动作为拒绝

各参数说明:
–direct 规则
–add-rule 添加规则
指定ipv4的filter表
INPUT-s 数据来源
-p 访问采用的协议
–dport 目的地端口 distnation port
-j 行为动作 REJECT(拒绝有回显)| ACCPET(接受)| DROP(拒绝无回显)

拒绝172.25.254.14访问desktop的firewalld服务器
在这里插入图片描述

在真机进行测试
ssh root@172.25.254114 #查看真机是否能够使用ssh服务连接desktop虚拟机

在这里插入图片描述可以看到,无法连接至172.25.254.114主机,22端口访问被拒绝
移除拒绝172.25.254.14访问的策略
在这里插入图片描述
在这里插入图片描述
可以看到,此时真机端已经可以通过ssh服务访问desktop服务器端

2. firewalld的源地址伪装(postrouting路由之后)与目的地址转换(prerouting路由之前)

在desktop服务器端必须首先开启防火墙的地址伪装功能和路由功能ip_forward=1
在这里插入图片描述

vim /etc/sysctl.conf #编辑/etc/sysctl.conf文件
 net.ipv4.ip_forward=1  #写入内容使ip_forward=1,开启路由功能
sysctl -p  #刷新使其生效
2.1 源地址伪装(SNAT postrouting路由之后,例如上网)
内部地址要访问公网上的服务时(如web访问),内部地址会主动发起连接,由路由器或者防火墙上的网关对内部地址做个地址转换,将内部地址的私有IP转换为公网的公有IP,网关的这个地址转换称为SNAT,主要用于内部共享IP访问外部。

源地址转换SNAT即内网地址向外访问时,发起访问的内网ip地址转换为指定的ip地址(可指定具体的服务以及相应的端口或端口范围),这可以使内网中使用保留ip地址的主机访问外部网络,即内网的多部主机可以通过一个有效的公网ip地址访问外部网络。
将内网地址转换成公网址(一般是网关的外部地址),所以大家经常会看到为了让内网用户上公网,我们必须在routeros的firewall中设置snat,俗称IP地址欺骗或伪装(masquerade)

在server端测试
在server端(ip为192.168.0.214)添加网关为192.168.0.114,若不添加,则ping不通172.25.254.14
在这里插入图片描述
在这里插入图片描述重启网络
在这里插入图片描述
route -n #查看网关是否成功添加
在这里插入图片描述

在desktop服务器端:
从22端口进来的数据都转到172.25.254.15这台主机上去
在这里插入图片描述
在server端测试
ssh root@172.25.254.15 #连接172.25.254.15,登陆上去之后,使用w -i查看登陆过15这台主机的ip
在这里插入图片描述
可以看到,虽然登陆172.25.254.15这台主机的ip为192.168.0.214,实际上却是172.25.254.114,说明地址伪装成功

2.2 目的地址转换(DNAT,prerouting路由之前,例如发布网站)
当内部需要提供对外服务时(如对外发布web网站),外部地址发起主动连接,由路由器或者防火墙上的网关接收这个连接,然后将连接转换到内部,此过程是由带有公网IP的网关替代内部服务来接收外部的连接,然后在内部做地址转换,此转换称为DNAT,主要用于内部服务对外发布。

为了不受上一个地址伪装的实验的影响,将172.25.254.15这台主机从desktop服务器端移除
在这里插入图片描述
重新添加172.25.254.14(真机ip)允许访问desktop服务器端,查看列表可以看到forward-ports中成功添加了172.25.254.14, 意思是从22端口进来的数据都转到172.25.254.14这台主机上去
在这里插入图片描述
在真机端进行测试
在真机上ssh root@172.25.254.114
在这里插入图片描述
这里需要注意,虽然显示的是要求输入172.25.254.114的密码,实际上需要输入真机(172.25.254.14)的密码,这里验证了连接确实会被转到172.25.254.14去
可以看到,能够成功访问desktop服务器
ifconfig br0 #查看真机ip为172.25.14.250
在这里插入图片描述
使用w -i可以看到,172.25.254.114登陆了真机
在这里插入图片描述
做完地址转换的实验,firewalld防火墙实验就暂停了,下边要学习iptables防火墙,因此关掉firewalld服务,设置为不开机自启动,以免对iptables实验造成影响
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值