博客
关于我
firewalld防火墙(一)
阅读量:515 次
发布时间:2019-03-07

本文共 2441 字,大约阅读时间需要 8 分钟。

基于区域、服务、端口的访问控制实验

实验环境

某公司的Web服务器和网关服务器均采用Linux CentOS 7.3操作系统。为了增强网络访问安全性,需熟悉Firewall防火墙规则编写,制定有效的主机防护策略。

实验拓扑

采用网络架构图(附图),详细描述网络设备分布和区域划分。

需求描述

  • 网关服务器

    • ens33网卡配置为trusted(信任)区域
    • ens34网卡配置为external(外部)区域
    • ens35网卡配置为dmz(非军事)区域
  • 网站服务器

    • SSH默认端口改为12345
      -开启HTTPS服务,过滤未加密的HTTP流量,且拒绝ping请求

实验步骤

Step 1:基本环境配置

  • 配置主机名及网卡地址

    • 网关服务器
      # 设定主机名为trusted[root@Centos ~]# hostnamectl set-hostname trusted
    • 企业内网测试机
      [root@trusted ~]# hostnamectl set-hostname trusted
    • 外部测试用机
      [root@externsl ~]# hostnamectl set-hostname externsl
    • 网站服务器
      [root@dmz ~]# hostnamectl set-hostname dmz
  • 更改SSH监听端口

    • 网关服务器
      [root@gateway ~]# vim /etc/ssh/sshd_config
    • 网站服务器
      [root@dmz ~]# vim /etc/ssh/sshd_config
    • 重新启动SSH服务:
      [root@gateway ~]# systemctl restart sshd
  • 开启网关服务器的路由转发功能

    [root@gateway ~]# vim /etc/sysctl.conf
  • Step 2:部署Web站点

  • 安装必要软件包

    [root@dmz ~]# yum -y install httpd mod_ssl
  • 启用并启动HTTPD服务

    [root@dmz ~]# systemctl start httpd
    [root@dmz ~]# systemctl enable httpd
  • 创建测试页面

    [root@dmz ~]# echo "this is a test web" > /var/www/html/index.html
  • Step 3:编写Firewalld防火墙规则

    关于网站服务器的规则
  • 启动Firewalld并设置默认区域

    [root@dmz ~]# systemctl start firewalld
    [root@dmz ~]# systemctl enable firewalld
    [root@dmz ~]# firewall-cmd --set-default-zone=dmz
  • 添加HTTPS和TCP12345端口

    [root@dmz ~]# firewall-cmd --zone=dmz --add-service=https --permanent
    [root@dmz ~]# firewall-cmd --zone=dmz --add-port=12345/tcp --permanent
  • 禁止ping请求

    [root@dmz ~]# firewall-cmd --add-icmp-block=echo-request --zone=dmz --permanent
  • 移除预定义SSH服务

    [root@dmz ~]# firewall-cmd --zone=dmz --remove-service=ssh --permanent
  • 重新加载Firewalld规则

    [root@dmz ~]# firewall-cmd --reload
  • 关于网关服务器的规则
  • 启动并设置默认区域

    [root@gateway ~]# systemctl start firewalld
    [root@gateway ~]# systemctl enable firewalld
    [root@gateway ~]# firewall-cmd --set-default-zone=external
  • 将ens32网卡设置为trusted区域,ens35设置为dmz区域

    [root@gateway ~]# firewall-cmd --change-interface=ens32 --zone=trusted
    [root@gateway ~]# firewall-cmd --change-interface=ens35 --zone=dmz
  • 添加external区域的TCP12345端口

    [root@gateway ~]# firewall-cmd --zone=external --add-port=12345/tcp --permanent
  • 移除SSH服务并禁止ping请求

    [root@gateway ~]# firewall-cmd --zone=external --remove-service=ssh --permanent
    [root@gateway ~]# firewall-cmd --zone=external --add-icmp-block=echo-request --permanent
  • 重新加载防火墙规则

    [root@gateway ~]# firewall-cmd --reload
  • 验证

  • 互联网测试计算机通过SSH登录外部接口12345端口

    [root@externsl ~]# ssh -p 12345 192.168.200.20
  • 企业内网测试计算机通过SSH登录网站服务器12345端口

    [root@trusted ~]# ssh -p 12345 192.168.10.10
  • 企业内网测试机访问网站服务器

    [图片描述:测试访问网站服务器]

  • 转载地址:http://wbbnz.baihongyu.com/

    你可能感兴趣的文章
    NPM 2FA双重认证的设置方法
    查看>>
    npm build报错Cannot find module ‘webpack/lib/rules/BasicEffectRulePlugin‘解决方法
    查看>>
    npm build报错Cannot find module ‘webpack‘解决方法
    查看>>
    npm ERR! ERESOLVE could not resolve报错
    查看>>
    npm ERR! fatal: unable to connect to github.com:
    查看>>
    npm ERR! Unexpected end of JSON input while parsing near '...on":"0.10.3","direc to'
    查看>>
    npm ERR! Unexpected end of JSON input while parsing near ‘...“:“^1.2.0“,“vue-html-‘ npm ERR! A comp
    查看>>
    npm error Missing script: “server“npm errornpm error Did you mean this?npm error npm run serve
    查看>>
    npm error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装
    查看>>
    npm install CERT_HAS_EXPIRED解决方法
    查看>>
    npm install digital envelope routines::unsupported解决方法
    查看>>
    npm install 卡着不动的解决方法
    查看>>
    npm install 报错 EEXIST File exists 的解决方法
    查看>>
    npm install 报错 ERR_SOCKET_TIMEOUT 的解决方法
    查看>>
    npm install 报错 Failed to connect to github.com port 443 的解决方法
    查看>>
    npm install 报错 fatal: unable to connect to github.com 的解决方法
    查看>>
    npm install 报错 no such file or directory 的解决方法
    查看>>
    npm install 权限问题
    查看>>
    npm install报错,证书验证失败unable to get local issuer certificate
    查看>>
    npm install无法生成node_modules的解决方法
    查看>>