HCRM博客

CentOS 7防火墙配置,如何有效管理与优化?

CentOS 7 Firewall 防火墙详解

CentOS 7 默认使用firewalld 作为其防火墙管理工具,相较于传统的iPTAblesfirewalld 提供了更加直观和灵活的配置方式,本文将详细介绍如何在 CentOS 7 上使用firewalld 进行防火墙规则的设置和管理,以确保系统的安全性。

CentOS 7防火墙配置,如何有效管理与优化?-图1
(图片来源网络,侵权删除)

基本配置结构

1、区域(Zones):区域是firewalld 的核心概念,用于定义络接口和源 IP 地址的组合,通过将接口和源地址绑定到特定的区域,可以对该区域定义特定的安全规则,默认情况下,有一个名为public 的区域。

2、服务(Services):服务是预定义的网络流量过滤规则,用于允许或拒绝某个网络端口或协议的访问。httphttps 是常见的服务。

3、端口(Ports):端口是网络通信的端点,用于标识特定的应用程序或服务,HTTP 使用 TCP 80 端口。

4、规则(Rules):规则是定义在区域、服务或端口上的条件语句,用于指定在满足特定条件时执行的操作。

基本规则指令

开放端口:要允许某个端口的流量通过防火墙,可以使用以下命令:

  firewallcmd permanent addport=80/tcp zone=public
  firewallcmd reload

要永久允许 TCP 80 端口的流量通过public 区域,可以执行上述命令。

CentOS 7防火墙配置,如何有效管理与优化?-图2
(图片来源网络,侵权删除)

关闭端口:要禁止某个端口的流量通过防火墙,可以使用以下命令:

  firewallcmd permanent removeport=443/tcp zone=public
  firewallcmd reload

要永久禁止 TCP 443 端口的流量通过public 区域,可以执行上述命令。

允许 IP 访问:要允许特定 IP 地址的流量通过防火墙,可以使用以下命令:

  firewallcmd permanent addsource=192.168.1.100 zone=public
  firewallcmd reload

要永久允许 IP 地址为192.168.1.100 的流量通过public 区域,可以执行上述命令。

拒绝 IP 访问:要拒绝特定 IP 地址的流量通过防火墙,可以使用以下命令:

  firewallcmd permanent removesource=192.168.1.100 zone=public
  firewallcmd reload

要永久拒绝 IP 地址为192.168.1.100 的流量通过public 区域,可以执行上述命令。

CentOS 7防火墙配置,如何有效管理与优化?-图3
(图片来源网络,侵权删除)

高级配置

定义新的区域:可以通过以下命令创建一个名为myzone 的新区域:

  firewallcmd permanent newzone=myzone

将接口添加到新的区域:要将eth1 接口添加到myzone 区域,可以使用以下命令:

  firewallcmd zone=myzone addinterface=eth1 permanent

允许特定源地址访问:要允许192.168.1.0/24 网段的源地址访问myzone 区域,可以使用以下命令:

  firewallcmd zone=myzone addsource=192.168.1.0/24 permanent

删除规则:要从myzone 区域中移除eth1 接口,可以使用以下命令:

  firewallcmd zone=myzone removeinterface=eth1 permanent

防火墙日志和高级设置

启用防火墙日志:要启用所有拒绝的连接的日志记录,可以使用以下命令:

  firewallcmd setlogdenied=all

日志将保存在/var/log/firewalld 目录下。

高级规则设置firewalld 支持更复杂的规则设置,包括限制连接的数量、使用 rich rules 等,要限制每秒钟只允许一个连接,最多允许 5 个突发连接,可以使用以下命令:

  firewallcmd direct addrule ipv4 filter INPUT 0 p tcp syn source 0/0 destination 0/0 limit 1/s limitburst 5 j ACCEPT

通过本文的介绍,您应该已经了解了如何在 CentOS 7 中使用firewalld 设置强大而灵活的防火墙规则,合理配置防火墙规则是保护服务器安全的重要一环,希望本文对您有所帮助。

FAQs

Q1: 如何查看当前活动的防火墙区域?

A1: 可以使用以下命令查看当前活动的区域列表:

firewallcmd getactivezones

通常默认是public

Q2: 如何更改默认的防火墙区域?

A2: 可以使用以下命令查看或修改默认的防火墙区域:

查看默认区域:firewallcmd getdefaultzone

修改默认区域:firewallcmd setdefaultzone=<新区域名>

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/17891.html

分享:
扫描分享到社交APP
上一篇
下一篇