Firewalld--01 防火墙安全、基本指令、区域配置

目录

  • Firewalld防火墙安全、基本指令、区域配置

    • 1. 防火墙安全基本概述
    • 2. 防火墙使用区域管理
    • 3. 防火墙基本指令参数
    • 4.防火墙区域配置策略

Firewalld防火墙安全、基本指令、区域配置

安全

1.按OSI七层模型
物理层
数据链路层
网络层
传输层
会话层
表示层
应用层

安全公司:
安全狗
知道创宇
牛盾云

物理环境:

物理环境:
硬件安全 机柜上锁,避免电源被拔(UPS, 可以双电源),网线被拔(打标签) 温度,硬件检查
网络安全 (硬件防火墙(防DOS),软件防火墙 (iptables/firewalld/selinux (仅允许公司的IP地址能连接服务器的22端口))做规则限制
服务安全 更新有漏洞的版本 nginx mysql redis... 所有主机都没有公网ip,大大的降低被攻击的风险
系统安全 没有公网ip,ssh安全(修改ssh默认端口号),权限控制(禁用root远程登录)。
web nginx,apache必须对外,除了80/443端口,其他都不要对外

waf防火墙 防DDOS攻击 漏洞注入 SQL注入

云环境

硬件 无需关心
网络 硬件防火墙 --> 高防DDOS 软件防火墙---->安全组
系统 SSH安全、权限控制、更新补丁、安骑士、堡垒机
web SSL、阿里云提供WAF、云安全中心
数据 备份 敏感数据保护

安全公司:

安全狗 www.safe.dog

牛盾云www.newdefend.com

知道创宇

牛盾云

知道创宇

安全狗

1. 防火墙安全基本概述

? RHEL/CentOS 7系统中集成了多款防火墙管理工具,其中Firewalld(Dynamic Firewall Manager of Linux systems, Linux系统的动态防火墙管理器)服务是默认的防火墙配置管理工具,它拥有基于CLI(命令行界面)和基于GUI(图形用户界面)的两种管理方式。

? 那么相较于传统的Iptables防火墙,Firewalld支持动态更新,并加入了区域zone的概念。简单来说,区域就是Firewalld预先准备了几套防火墙策略集合(策略模板),用户可以根据生产场景的不同而选择合适的策略集合,从而实现防火墙策略之间的快速切换。

Firewalld规则配置,从外访问服务器内部如果没有添加规则默认是阻止,从服务器内部访问服务器外部默认是允许

需要注意的是Firewalld中的区域与接口.

一个网卡仅能绑定一个区域,但一个区域可以绑定多个网卡。还可以根据来源的地址设定不同的规则。

比如:所有人能访问80端口,但只有公司的IP才可以访问22端口。

2. 防火墙使用区域管理

划分不同的区域,制定出不同区域之间的访问控制策略来控制不同程序区域间传送的数据流。

区域 默认规则策略
trusted 允许所有的数据包流入与流出
home 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、mdns、ipp-client、amba-client与dhcpv6-client服务相关,则允许流量
internal 等同于home区域
work 拒绝流入的流量,除非与流出的流量数相关;而如果流量与ssh、ipp-client与dhcpv6-client服务相关,则允许流量
public 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、dhcpv6-client服务相关,则允许流量
external 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
dmz 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
block 拒绝流入的流量,除非与流出的流量相关
drop 拒绝流入的流量,除非与流出的流量相关

3. 防火墙基本指令参数

Firewall-cmd命令分类列表

参数 作用
zone区域相关指令
--get-default-zone 查询默认的区域名称
--set-default-zone= 设置默认的区域,使其永久生效
--get-active-zones 显示当前正在使用的区域与网卡名称
--get-zones 显示总共可用的区域
--new-zone= 新增区域
--delete-zone= 删除区域
services服务相关指令
--get-services 显示预先定义的服务
--add-service= 设置默认区域允许该服务的流量
--remove-service= 设置默认区域不再允许该服务的流量
--list-services 显示默认区域允许的服务
Port端口相关指令
--add-port= 设置默认区域允许该端口的流量
--remove-port= 设置默认区域不再允许该端口的流量
--list-port 显示默认区域允许的端口
Interface网卡相关指令
--get-zone-of-interface= 查看接口在哪个区域
--add-interface= 将源自该网卡的所有流量都导向某个指定区域
--remove-interface= 删除接口
--change-interface= 将接口与区域进行关联
地址源相关命令
--add-source= 添加来源地址
--remove-source= 移除来源地址
其他相关指令
--list-all 显示当前区域的网卡配置参数、资源、端口以及服务等信息
--reload 让"永久生效"的配置规则立即生效,并覆盖当前的配置规则
--panic-on 阻断一切网络连接
--panic-off 恢复网络连接

4.防火墙区域配置策略

1). 为了能正常使用Firwalld服务和相关工具去管理防火墙,必须启Firewalld服务,同时关闭以前旧防火墙相关服务,同时需要注意Firewalld的规则分两种状态:

runtime运行时: 修改规则马上生效,但是是临时生效 [不建议]

permanent持久配置: 修改后需要reload重载才会生效 [强烈推荐]

#禁用旧版防火墙服务
[[email protected] ~]# systemctl mask iptables
[[email protected] ~]# systemctl mask ip6tables

#启动firewalld防火墙, 并加入开机自启动服务
[[email protected] ~]# systemctl start firewalld
[[email protected] ~]# systemctl enable firewalld

2). Firewalld启动后,我们需要知道使用的是什么区域,区域的规则明细又有哪些?

#默认当前使用的zone
[[email protected] ~]# firewall-cmd --get-default-zone
public

#查看当前区域的规则有哪些
[[email protected] ~]# firewall-cmd --list-all
public
target: default
icmp-block-inversion: no
interfaces:
sources:
services: ssh dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
#显示所有的zone
[[email protected] ~]# firewall-cmd  --get-zones
block dmz drop external home internal public trusted work
#详细的显示所有zone的默认规则
[[email protected] ~]# firewall-cmd  --list-all-zones
block
  target: %%REJECT%%
  icmp-block-inversion: no
  interfaces:
  sources:
  services:
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules: 

设置zone

#设置默认的区域
[[email protected] ~]# firewall-cmd   --set-default-zone=trusted
success
#查看默认的区域
[[email protected] ~]# firewall-cmd   --get-default-zone
trusted
#显示当前活动的区域及接口
[[email protected] ~]# firewall-cmd   --get-active-zone
public
  interfaces: eth0 eth1
#添加一个新的zone
[[email protected] ~]# firewall-cmd  --new-zone=test  --permanent
success
#查看所有的zone
[[email protected] ~]# firewall-cmd   --get-zones
block dmz drop external home internal public trusted work

#重启firewalld的设置规则
[[email protected] ~]# firewall-cmd  --reload
success

#查看所有的zone
[[email protected] ~]# firewall-cmd   --get-zones
block dmz drop external home internal public test trusted work

#删除zone
[[email protected] ~]# firewall-cmd  --delete-zone=test --permanent
success
[[email protected] ~]# firewall-cmd   --get-zones
block dmz drop external home internal public test trusted work
#重启才会生效
[[email protected] ~]# firewall-cmd   --reload
success
[[email protected] ~]# firewall-cmd   --get-zones
block dmz drop external home internal public trusted work

3).使用Firewalld中各个区域规则结合,当前默认区域拒绝所有的流量,但如果来源IP是10.0.0.0/24网段则允许。

#1.临时移除策略
[[email protected] ~]# firewall-cmd --remove-service=ssh --remove-service=dhcpv6-client
success
#或者:
[[email protected] ~]# firewall-cmd   --remove-service={ssh,dhcpv6-client}
success

#2.添加来源是10.0.0.0/24网段,将其加入白名单
[[email protected] ~]# firewall-cmd --add-source=10.0.0.0/24 --zone=trusted
success

#3.检查当前活动的区域及接口
[[email protected] ~]# firewall-cmd   --get-active-zone
public
  interfaces: eth0 eth1
trusted
  sources: 10.0.0.0/24

[[email protected] ~]# firewall-cmd  --reload      #重启服务之后,临时生效的失效
success
[[email protected] ~]# firewall-cmd   --get-active-zone
public
  interfaces: eth0 eth1

拒绝10.0.0.0/24网段的所有服务

[[email protected] ~]# firewall-cmd   --add-source=10.0.0.0/24   --zone=drop
success
[[email protected] ~]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0 eth1
  sources:
  services: ssh dhcpv6-client
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules: 

[[email protected] ~]# firewall-cmd  --get-active-zone
drop
  sources: 10.0.0.0/24
public
  interfaces: eth0 eth1

添加多个服务

#添加多个服务
[[email protected] ~]# firewall-cmd  --add-service={https,mysql,redis}
success

[[email protected] ~]# firewall-cmd  --list-services
ssh http https mysql redis

移除多个服务

[[email protected] ~]# firewall-cmd  --remove-service={http,https,mysql,redis}
success

[[email protected] ~]# firewall-cmd  --list-services
ssh

4). 查询public区域yi是否允许请求SSH、HTTPS协议的流量

[[email protected] ~]# firewall-cmd --zone=public --query-service=ssh
no
[[email protected] ~]# firewall-cmd --zone=public --query-service=https
no

5). 开启public区域服务的流量

[[email protected] ~]# firewall-cmd --zone=public --add-service=ssh
success
[[email protected] ~]# firewall-cmd --zone=public --query-service=ssh
yes
[[email protected] ~]# firewall-cmd --zone=public --remove-service=ssh
success
[[email protected] ~]# firewall-cmd --zone=public --query-service=ssh
no

6). 修改其他区域的服务流量限制

[[email protected] ~]# firewall-cmd --zone=trusted --query-service=ssh
no
[[email protected] ~]# firewall-cmd --zone=trusted --add-service=ssh
success
[[email protected] ~]# firewall-cmd --zone=trusted --query-service=ssh
yes

7). 最后将配置恢复至默认规则,--reload参数仅能恢复临时添加的规则策略

[[email protected] ~]# firewall-cmd --reload
success
[[email protected] ~]# firewall-cmd --zone=public --list-all
public
target: default
icmp-block-inversion: no
interfaces:
sources:
services: ssh dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

原文地址:https://www.cnblogs.com/gongjingyun123--/p/12015901.html

时间: 2024-11-01 19:11:17

Firewalld--01 防火墙安全、基本指令、区域配置的相关文章

centos7 firewall-cmd 理解多区域配置中的 firewalld 防火墙

原文:https://www.linuxidc.com/Linux/2017-11/148795.htm 现在的新闻里充斥着服务器被攻击和数据失窃事件.对于一个阅读过安全公告博客的人来说,通过访问错误配置的服务器,利用最新暴露的安全漏洞或通过窃取的密码来获得系统控制权,并不是件多困难的事情.在一个典型的 Linux 服务器上的任何互联网服务都可能存在漏洞,允许未经授权的系统访问. 因为在应用程序层面上强化系统以防范任何可能的威胁是不可能做到的事情,而防火墙可以通过限制对系统的访问提供了安全保证.

配置Cisco的ASA防火墙(三个区域)

配置Cisco的ASA防火墙(三个区域),布布扣,bubuko.com

centos7 && centos6.5部KVM使用NAT联网并为虚拟机配置firewalld && iptables防火墙端口转发

centos7 && centos6.5 部KVM使用NAT联网并为虚拟机配置firewalld && iptables防火墙端口转发 一.准备工作: 1: 检查kvm是否支持a: grep '(vmx|svm)' /proc/cpuinfo vmx是intel cpu支持的svm是AMD cpu支持的如果flags: 里有vmx 或者svm就说明支持VT:如果没有任何的输出,说明你的cpu不支持,将无法使用KVM虚拟机. b: 确保BIOS里开启VT: Intel(R)

OSPF多区域配置

![](http://i2.51cto.com/images/blog/201802/01/cb71bba70a8828fdc454a228f77bb7db.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk实验需求: 普通区域与完全末节区域互通实验思路: 1. 首先配置普通区域路由端

华为防火墙实现双机热备配置详解

一提到防火墙,一般都会想到企业的边界设备,是内网用户与互联网的必经之路.防火墙承载了非常多的功能,比如:安全规则.IPS.文件类型过滤.内容过滤.应用层过滤等.也正是因为防火墙如此的重要,如果防火墙一旦出现问题,所有对外通信的服务都将中断,所以企业中首先要考虑的就是防火墙的优化及高可用性. 博文大纲:一.双机热备工作原理二.VRRP协议(1)VRRP协议概述(2)VRRP的角色(3)VRRP的状态机(4)VRRP的工作原理三.VGMP协议(1)VGMP的工作原理(2)VGMP的报文封装(3)双机

企业级防火墙算法原理与基本配置

企业级防火墙算法原理与基本配置多安全区域DMZ区域的概念和作用DMZ(demilitarzed zone)隔离区也称"非军事化区":位于企业内部网络和外部网络之间的一个网络区域安全级别位于inside和outside之间访问默认规则:高安全级允许访问低安全级,低安全级禁止访问高安全级Tips:应用的表示任何一个应用,在数据包层面而言,都是通过套接字(传输层协议+端口号)表示在表示应用的过程中,如果仅仅提到一个端口,那么该端口是目标端口,源端口就是随机端口如果一个应用通过2个端口表示,则

Linux 防火墙设置常用指令

查看防火墙状态命令: service firewalld status systemctl status firewalld 结果: 其中:   enabled:开机启动(开机不启动是disabled): active(running):已经启动(未启动是inactive). 启动防火墙命令:service firewalld start(或者systemctl start firewalld) 关闭防火墙命令:service firewalld stop(或者systemctl stop fi

网络设备-华三-防火墙F1020-IRF虚拟化实战终结配置篇

此篇h3c-IRF的实战配置,同样与前面华为的堆叠一样路子,我们先聊聊为啥要做这个?为什么不玩双机,要玩IRF.其实弄懂这一点,对于售前来讲,在外面做方案也是思路相当清晰的一点. 以前我们常规的双机方案如下图: 架构特点: 1.全网无单点故障,完整的解决因为单电源或者单一设备故障引起的业务不可用. 2.核心交换区-使用华为stack堆叠(前面有文章单独介绍) 3.防火墙HA(Juniper-NSRP协议,不懂度娘)(可能大家会问题,防火墙到华为交换机为什么没做lacp或者aggregate,大家

Apache、Web软件、Apache安装、常用配置项、区域配置、日志分析

Apache 安装 具体步骤: 1.准备工作 为了避免发生端口冲突.程序冲突等现象,建议将使用rpm方式安装的httpd及相关依赖包(如果有的话)卸载.如图所示: 2.源码编译及安装 插入安装光盘并挂载,进入到光盘目录中,将httpd源码包释放到/usr/src/目录下,并且切换到展开后的源码目录中. 根据服务器的实际应用需要,可以灵活设置不同的定制选项. 上述配置命令中,各选项的含义如下: --prefix:指定将httpd服务程序安装到哪个目录. --enable-so:启用动态加载模块支持