firewalld防火墙

实验材料及环境如下

看不懂的注意看我下面的图片

一台centos7是内网web服务器 ip :192.168.100.103 : vm1

一台win7是内网测试机 ip: 192.168.1.10 : vm2

再开一台centos7是网关服务器三块网卡,应该到虚拟机里依次为 ens33 ens37 ens38
依次上到下,从原来到第三块分别是 vm1 vm2 vm3

对应ip为如下
(IP 192.168.100.102) : ( IP 192.168.1.1) : (IP 100.1.1.10 )

一台winXP是外网测试机 IP :100.1.1.20 : vm3

一台centos7是外网web服务器 IP :100.1.1.30 : vm3
如下
各个主机网关这里我说一下,
win7 是 192.168.1.1 ,内网web 是 192.168.100.102 , 中间的是总网关不用配置网关
winxp 是 100.1.1.10 , 外网web主机 是 100.1.1.10

如果你不会配置中间大网关的网卡,可以参考我下面这篇博客的前一部分
https://blog.csdn.net/weixin_45308292/article/details/100524408
注意ip要按照本章来

注意服务器网卡的配置IP和指向网关后完后一定要重启网卡,然后内网web主机和外网web主机一定要指网关

systemctl restart network :重启网卡
route -n :查看指网关操作配置是否生效

一定要重启网卡


基本配置

1.在网关服务器上开启路由转发

[root@CentOS7-02 ~]# vim /etc/sysctl.conf (添加如下)
net.ipv4.ip_forward = 1
[root@CentOS7-02 ~]# sysctl -p


2.测试联通性

首先关闭所有主机上的防火墙,包括win7 ,winxp

各个服务器也是,使用这个命令关闭
systemctl stop firewalld

在内网测试机win7中 ping 100.1.1.20(外网测试机xpIP) ,ping 100.1.1.30 (外网web主机IP)
在外网测试机winxp中 ping 192.168.1.10(内网测试机IP) , ping 192.168.100.103 (内网web主机ip)
如果ping不通内外网web主机,就是内外网web主机没有指定网关的问题


3.内外网网站服务器搭建

内外网web主机配置方式都是一样的,挂上光盘,yum安装httpd,注意页面要区分开
进到内网web,外网web 中
[root@centos7-03 ~]# yum -y install httpd
[root@centos7-03 ~]# systemctl start httpd

内网页面 在192.168.100.103
[root@centos7-03 ~]# vim /var/www/html/index.html
这是内网

外网页面 在 100.1.1.30
[root@centos7-04 ~]# vim /var/www/html/index.html
这是外网

在win7中使用http访问内网外网web主机页面看能否成功,成功即可


4.在内网web服务器上配置Firewalld防火墙

1)修改SSH的监听端口,并安装SSL软件包
[root@centos7-03 ~]# vim /etc/ssh/sshd_config

[root@centos7-03 ~]# systemctl restart sshd
[root@centos7-03 ~]# yum -y install mod_ssl
[root@centos7-03 ~]# systemctl restart httpd (重启httpd服务,支持https)
上面这个包是支持https访问的包,安装即可

2)设置默认区域为dmz区域
[root@centos7-03 ~]# systemctl start firewalld
[root@centos7-03 ~]# firewall-cmd --set-default-zone=dmz
success

3)为dmz区域打开https服务及TCP的12345端口
[root@centos7-03 ~]# firewall-cmd --zone=dmz --add-service=https --permanent
success
[root@centos7-03 ~]# firewall-cmd --zone=dmz --add-port=12345/tcp --permanent
success

4)禁止ping
[root@centos7-03 ~]# firewall-cmd --add-icmp-block=echo-request --zone=dmz --permanent
success

5)因为预定义的SSH服务已经更改默认的端口,所以将预定义SSH服务移除
[root@centos7-03 ~]# firewall-cmd --zone=dmz --remove-service=ssh --permanent
success

6)重新加载Firewalld配置,并查看之前的配置
[root@centos7-03 ~]# firewall-cmd --reload (必须重新加载,要不然不会生效,重载后会成为永久配置,系统重启也会存在
success
查看
[root@centos7-03 ~]# firewall-cmd --list-all --zone=dmz
这里解释一下为什么是dmz区域,因为上面的所有操作,都是对dmz区域做的,命令里都有dmz区域
里面的东西要和我下面一样才行


5.在网关服务器上配置Firewalld防火墙,就是那个有三块网卡的服务器

1)设置默认区域为external区域,并查看配置结果
[root@CentOS7-02 ~]# systemctl start firewalld
[root@CentOS7-02 ~]# firewall-cmd --set-default-zone=external

2)将ens37网卡配置到trusted区域,将ens33配置dmz区域
[root@CentOS7-02 ~]# firewall-cmd --change-interface=ens37 --zone=trusted
The interface is under control of NetworkManager, setting zone to 'trusted'. success
[root@CentOS7-02 ~]# firewall-cmd --change-interface=ens33 --zone=dmz
The interface is under control of NetworkManager, setting zone to 'dmz'. success

3)查看配置结果
[root@CentOS7-02 ~]# firewall-cmd --get-active-zones (必须要和我下面一样)
dmz
interfaces: ens33
external
interfaces: ens38
trusted
interfaces: ens37

4)在企业内网win7测试机使用https访问内部网站服务器

不要使用刚刚的http测试页面刷新,会有缓存

重新打开一个浏览器页面,https访问,证书那里,选择继续浏览此网站

发现http已经不行了,因为那里没有放行http流量,https可以

5)更改SSH的侦听端口,并重启服务
[root@CentOS7-02 ~]# vim /etc/ssh/sshd_config (和刚刚上面的内网web主机方法一样
Port 12345
[root@CentOS7-02 ~]# systemctl restart sshd

6)配置external区域添加TCP的12345端口

因为刚刚的web服务器的sshd端口,改成了12345,外部主机就是(XP)如果想要连接 内部web服务器,必须允许这个端口

[root@CentOS7-02 ~]# firewall-cmd --zone=external --add-port=12345/tcp --permanent
success

7)配置external区域禁止ping
[root@CentOS7-02 ~]# firewall-cmd --zone=external --add-icmp-block=echo-request --permanent
success

8)重新加载防火墙配置
[root@CentOS7-02 ~]# firewall-cmd --reload
success

9)在外网测试机上通过SSH登陆网关外部接口的12345端口
相当于远程操纵 中间那个有三块网卡的网关服务器

需要借助软件SecureCRT
链接:https://pan.baidu.com/s/12pUU2NuSBv6udK3_PSQX_w
提取码:yykx
拖入外网xp主机中

然后连接就可以了

10)在内网测试机win7上SSH登陆内网的服务器192.168.100.103(内网web)的12345端口

和上面一样也是用那个软件,只是ip不一样是192.168.100.103,然后连接12345端口,这里就不演示了



配置ip伪装与端口转发

1.内网用户通过网关服务器共享上网

1)在内部win7测试机使用http访问外部网站(100.1.1.30)
肯定可以访问

2)在内网web主机,访问外网web主机
[root@centos7-03 ~]# curl http://100.1.1.30
这是外网

3)查看网关服务器的external区域是否开启了地址伪装
进入网关服务器

在win7主机刷新一下访问100.1.1.30的网页,内网主机多访问几次
去外网web主机100.1.1.30,查看日志,日志文件后面的是新增记录

100.1.1.10是网关服务器的外网口IP,图下前面都IP是源IP,

越往下是新增的访问ip

5)关闭external的地址伪装,

进入到网关服务器
[root@CentOS7-02 ~]# firewall-cmd --remove-masquerade --zone=external
success
再次使用win7访问外网web主机,并去外网web主机查看日志就是win7真实的ip

6)模拟真实环境,并实现限制访问外网

真实环境中的外网主机,是不可能指向自己公司的外网口,网关地址
去除外网测试机winxp的网关,并保存
去除外网web主机的网卡配置文件中的GATEWAY项(网关),并重启网卡

进入win7重新打开一个浏览器界面,http访问外网web页面发现不可以了

进入内网web主机
[root@centos7-03 ~]# curl http://100.1.1.30
curl: (7) Failed connect to 100.1.1.30:80; 没有到主机的路由

进入网关服务器,
添加富规则,允许192.168.1.0网段出去,并做转换

[root@CentOS7-02 ~]# firewall-cmd --zone=external --add-rich-rule='rule family=ipv4 source address=192.168.1.0/24 masquerade’
success

发现win7测试机已经可以http方式访问外网web了,

而内网web主机curl还是不可以访问,因为没有允许192.168.100.0网段

如下这条命令可以重新打开地址伪装,允许内部所有网段,访问外网
进入到网关服务器中
[root@CentOS7-02 ~]# firewall-cmd --add-masquerade --zone=external
success

进入到内网web中又可以访问了
[root@centos7-03 ~]# curl http://100.1.1.30
wai wang

外网web主机日志应该有,源是win7的真机IP,是那会关了地址伪装的,是外面主机没有删网关的时候访问的,类似内网了

然后就都是网关服务器外网口IP,是开了地址伪装的


2.配置端口转发实现外网用户访问内网的web主机

1)进入网关服务器配置如下
[root@CentOS7-02 ~]# firewall-cmd --zone=external --add-forward-port=port=443:proto=tcp:toaddr=192.168.100.103
success (443是https的端口号)
意思是外部区域,只要有人请求443端口就去找内部区域的192.168.100.103的443端口

2)在外网winxp主机上访问内网web主机
https://100.1.1.10/
相当与一个网关服务器做的转换,所以要访问网关服务器外网口ip
如下

3)如果需要一个专门的ip来做转换,可以参考如下

进入网关服务器
[root@CentOS7-02 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens38
我这里是添加一个100.1.1.15

[root@CentOS7-02 ~]# systemctl restart network
[root@CentOS7-02 ~]# ip add

已经添加上了
[root@CentOS7-02 ~]# firewall-cmd --zone=external --add-rich-rule='rule family=ipv4 destination address=100.1.1.15/24 forward-port port=443 protocol=tcp to-addr=192.168.100.103’
success
意思是外部区域,有人找100.1.1.15的443端口就转换到内部的192.168.100.103的443端口
访问测试

当然原来的100.1.1.10也可以正常使用https访问

实验完毕

cenos7 Firewalld防火墙高级配置相关推荐

  1. Firewalld,iptables概述(netfilter和Firewalld,iptables三者之间的关系,四表五链,Firewalld防火墙的配置方发,SNAT,DNAT了解)

    文章目录 Firewalld,iptables概述 Firewalld了解 iptables了解 Firewalld和iptables的关系 netfilter Firewalld.iptables ...

  2. 知了堂|iptables与firewalld 防火墙操作配置

    一.iptables 防火墙配置 (1)为 filter 表的 INPUT 链添加一条规则,规则为拒绝所有使用 ICMP 协议的数据包.★★ iptables -A INPUT -p icmp -j ...

  3. Firewalld防火墙实例配置

    文章目录 环境拓扑 需求描述 一.环境配置 二.防火墙配置 1.在网站服务器上配置防火墙 2.网关服务器配置防火墙 3.企业内网访问外网web服务器 4.外网web服务器访问企业内部网站服务器 三.总 ...

  4. linux的firewalld防火墙规则配置

    目录 一.查看firewall规则 二.配置允许访问规则 (一)配置文件添加 (二)命令行添加 1. 开通所有源IP访问http服务 2. 开通访问http服务,并限制源IP访问 三.配置禁止访问规则 ...

  5. 防火墙简介(二)——firewalld防火墙

    防火墙简介(二)--firewalld防火墙 一.firewalld防火墙简介 二.firewalld 与 iptables 的区别 三.firewalld 区域的概念 1.firewalld防火墙9 ...

  6. Firewalld 防火墙

    Centos 5.Centos 6 系统的默认防火墙是 iptables: Centos 7 默认的防火墙是 firewalld. 目录 一.Firewalld 概述 1.1 Firewalld 防火 ...

  7. Firewalld防火墙策略详解

    Firewalld防火墙策略详解 一.Firewalld firewalld防火墙是Centos7系统默认的防火墙管理工具,取代了之前的iptables防火墙,也是工作在网络层,属于包过滤防火墙. f ...

  8. 理论+实操: linux中firewalld防火墙基础讲解(转载)

    前言 firewalld概述.firewalld 中的d代表服务 firewalld 和 iptables 的关系 firewalld 网络区域 firewalld 防火墙的配置方法 firewall ...

  9. centos7 防火墙_Linux系统安全Centos 7的Firewalld防火墙基础

    一.Linux防火墙的基础 Linux的防火墙体系主要工作在网络层,针对TCP/IP数据包实时过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙).Linux系统的防火墙体系基于内核共存:fire ...

最新文章

  1. 定义一个栈(Stack)类,用于模拟一种具有后进先出(LIFO)特性的数据结构
  2. 【网络安全】 利用 EHole 进行红队快速批量打点
  3. PHP xdebug API接口优化揪出了getimagesize这个鬼
  4. 黑马程序员_java基础笔记(03)...面向对象
  5. 推荐系统之GBDT+LR
  6. Android用浏览器打开pdf文件
  7. 关于农历闰月年份的口诀
  8. Espresso环境搭建及其基本使用
  9. Linux基础与部署
  10. Linux 静态库和动态库的生成及使用
  11. 用 TensorFlow 做个聊天机器人
  12. 碳纤维复合材料加固钢筋混凝土的极化作用
  13. Linux/Ubuntu 18.04 截图软件Shutter详细教程,包括启用图片编辑Edit功能,延时截图等
  14. 电子学报 计算机科学,电子学报
  15. 选择与放弃决定着你的生命
  16. java自动化测试语言高级之文档注释
  17. 《程序员之禅》一一10.10 淡泊宁静
  18. 认识3dmax 轴心
  19. k-means算法与Python实践
  20. 微信小程序开发系列——3. 腾讯云服务器配置

热门文章

  1. 【干货】ShareSdk 使用范例,亟亟版,从头到尾让你了解怎么使用这个大众化的第三方库...
  2. 力扣LeetCode(二)T41-T80
  3. 5000字详解数据安全治理
  4. docker(11):安全
  5. 图神经网络基础——(一)图论基础
  6. 颠覆车载显示/拒绝屏幕堆砌,这家Tier1巨头给出自己的答案
  7. 等级保护测评对哪些行业是硬性要求?相关标准规范主要有哪些?│电力行业篇
  8. 2021 最新Android知识体系
  9. 数据库表设计1:用户权限管理
  10. 给yml配置文件的密码加密(SpringBoot)