2、firewalld防火墙

一、firewalld防火墙介绍

iptables是自2.4内核以来,linux自带的防火墙软件。但在centos7里,又出现了一个叫firewalld的防火墙软件,它和iptables一样都是通过内核的netfilter来实现的。也就是说iptables和firewalld都是用于维护规则,只不过使用方式有所不同。在centos7里iptables,firewalld都可以使用,但不要用混乱了。
在这里插入图片描述

二、firewalld防火墙配置文件介绍

firewalld文件作用

  • 人性化管理规则
  • 通过服务组织端口分组更加高效,如果一个服务使用若干网络端口,则服务的配置文件就相当于提供了到这些端口的规则管理的批量操作快捷方式。

路径: /usr/lib/firewalld/services

说明: firewalld服务默认在此目录下定义了127种服务,可以直接使用。

路径: /usr/lib/firewalld/zones

说明: 区域配置文件

路径: /etc/firewalld/zones:

说明: 默认区域配置文件,配置文件中指定了编写完成的规则

三、firewalld zones介绍

Zone: 简单来说就是防火墙方案,就是一套规则集, 你可以配置多套规则集, 按需求切换使用.

# firewall-cmd --get-zones
work drop internal external trusted home dmz public block
zone说明
drop拒绝所有外部连接请求
block拒绝所有外部连接,允许内部发起的连接
public适用公共环境,拒绝所有外部连接请求,但指定外部连接可以进入
external特别适用路由器启用了伪装功能的外部网。拒绝所有外部连接请求,只能接收经过选择的连接。
dmz用于您的非军事区内的电脑,此区域内可公开访问,可以有限地进入您的内部网络,仅仅接收经过选择的连接。(受限制的公共连接可以进入)
work适用于工作网络环境,概念和workgoup一样,也是指定的外部连接允许用于工作区
home类似家庭组,用于家庭网络。您可以基本信任网络内的其他计算机不会危害您的计算机。仅仅接收经过选择的连接。
internal用于内部网络。您可以基本上信任网络内的其他计算机不会威胁您的计算机。仅仅接受经过选择的连接
trusted可接受所有的网络连接

查看当前使用的zone

# firewall-cmd --get-default-zone 
public

修改当前使用的zone

# firewall-cmd --set-default-zone=work
# firewall-cmd --set-default-zone=public

查看当前使用的zone的规则

# firewall-cmd --list-all

指定查看work这个zone的规则

# firewall-cmd --zone=work --list-all
注意:只要没有使用--zone=指定的zone,都代表默认zone

小结: 默认zone是public,规则默认只允许ssh和ping进来,其它都拒绝。出去访问别的服务器,本机的firewalld是允许的。

四、firewall-cmd命令介绍

1、命令语法

firewall-cmd [--zone=zone] 动作 [--permanent]

如果不指定–zone选项,则为当前所在的默认区域,–permanent选项为是否将改动写入到区域配置文件中

2、Firewalld状态查询及规则重载

[root@localhost ~]# firewall-cmd --state
running
#查看状态

[root@localhost ~]# firewall-cmd --reload
success
#重新加载防火墙,中断用户连接,临时配置清除掉,加载配置文件中的永久配置

[root@localhost ~]# firewall-cmd --complete-reload
success
#重新加载防火墙,不中断用户的连接(防火墙出严重故障时使用)

[root@localhost ~]# firewall-cmd --panic-on
#紧急模式,强制关闭所有网络连接

3、FireWalld命令中的动作

3.1 获取操作

[root@localhost ~]# firewall-cmd  xxx
--get-icmptypes      ##查看支持的所有ICMP类型
--get-zones          ##查看所有区域
--get-default-zone   ##查看当前的默认区域
--get-active-zones   ##查看当前正在使用的区域
--get-services       ##查看当前区域支持的服务
--list-services      ##查看当前区域开放的服务列表
--list-services --zone=home  ##查看指定域开放的服务列表
--list-all           ##查看默认区域内的所有配置,类似与iptables -L -n
--list-all-zones     ##查看所有区域所有配置

3.2 更改区域操作

[root@localhost ~]# firewall-cmd  xxx
--set-default-zone=work ##更改默认的区域

3.3 新建规则

[root@localhost ~]# firewall-cmd  xxx
--add-interface=eth0 ##将网络接口添加到默认的区域内
--add-port=12222/tcp --permanent ##添加端口到区域开放列表中
--add-port=5000-10000/tcp --permanent ##将端口范围添加到开放列表中;
--add-service=ftp --permanent ##添加服务到区域开放列表中(注意服务的名称需要与此区域支持的服务列表中的名称一致)
--add-source=192.168.1.1 ##添加源地址的流量到指定区域
--add-masquerade ##开启SNAT(源地址转换)

3.4 删除规则

[root@localhost ~]# firewall-cmd  xxx
--remove-service=http ##在home区域内将http服务删除在开放列表中删除
--remove-interface=eth0 ##将网络接口在默认的区域内删除
--remove-source=192.168.1.1 ##删除源地址的流量到指定区域

五、firewalld放行WEB服务策略配置

1、WEB服务准备

# yum  -y install httpd
# echo "web page" > /var/www/html/index.html
# systemctl enable httpd
# systemctl start httpd

2、WEB服务访问放行规则

# firewall-cmd --get-default-zone 
public

# firewall-cmd --list-all

# firewall-cmd  --add-port=80/tcp --permanent# firewall-cmd  --add-service=http --permanent

# firewall-cmd --reload
  • 16
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值