firewalld浅谈使用

举报
Aion 发表于 2022/09/18 19:43:51 2022/09/18
【摘要】 防火墙技术的功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。

引言

1 概述

防火墙技术是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术。

防火墙技术的功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。


注意⚠️:当前执行操作类都是在管理员命令下操作,如果非管理员用户下,会提示如下权限信息,firewalld本身并不是防火墙,而是一种防火墙管理工具,通过定义防火墙规则最终交由内核的netfilter进行包过滤实现防火墙功能

Authorization failed.
    Make sure polkit agent is running or run the application as superuser.

当然如果是查询状态这种命令,就无需要管理员权限。


2 整体架构

firewalld由d-bus层和core层构成。d-bus层提供api,其它程序(如firewall-cmd、firewall-config、firewall-applet、甚至是你自己编写的程序或守护进程)通过调用api可定义防火墙规则或查询防火墙状态等等。core层为d-bus层提供服务,负责和后端交互。架构图如下:

image.png

备注:firewalld提供的firewall-offline-cmd不调用d-bus层,而是直接调用core层中的IO来修改防火墙规则。


3 安装和配置

firewall官方网址:https://firewalld.org/

firewall官方下载地址:https://firewalld.org/download/all.html


firewall支持两种配置,系统默认配置统特殊配置

系统默认配置

默认配置的配置路径在/usr/lib/firewalld


统特殊配置

特殊配制的路径在/etc/firewalld。


如果特殊配制路径不存在,那么在启动时,系统会自动查找系统默认配置,配置文件则是firewalld.conf


实战


1、防火墙系统服务命令

防火墙启动命令:

systemctl start firewalld

防火墙停止:

systemctl disable firewalld

防火墙禁用:

systemctl stop firewalld

防火墙状态:

systemctl status firewalld

执行上述命令之后,可以查看输出信息中有active (running),这表示我们的防火墙已经开启:

image.png


2、设置开放端口

  • 设置单个端口开放访问
firewall-cmd --zone=public --add-port=12345/tcp --permanent
firewall-cmd --zone=public --add-port=8080/tcp --permanent

执行上述命令之后,可以看到输出success信息,这个表示我们已经成功设置了端口12345对外可以访问:

image.png


  • 设置多个连续个端口开放访问
firewall-cmd --zone=public --add-port=8081-8088/tcp --permanent

同样的,如果我们要设置连续端口对外开放访问,那么执行上述命令之后,也是会输出success信息,这里的连续端口8081-8088是指8081、8082、8083、8084、8085、8086、8087、8088

image.png


3、查看端口防火墙状态

firewall-cmd --zone=public --query-port=80/tcp


4、删除指定端口防火墙

firewall-cmd --zone=public --remove-port=12345/tcp --permanent  
firewall-cmd --zone=public --remove-port=8081-8088/tcp --permanent

删除端口对外访问原理同新增端口对外访问一致,执行后的结果如下image


5、更新防火墙规则(重新加载)

这个命令主要是让已经设置的防火墙端口生效

firewall-cmd --reload


6、查看所有规则

firewall-cmd --list-all

执行上述命令之后,可以查看输出信息中有ports,这个便是我们已经开启防火墙状态下且只对外访问的端口:

image.png


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。