在CentOS 7中配置防火墙

Anonim

在CentOS 7中配置防火墙

安装在操作系统中的防火墙用于防止计算机网络之间未经授权的流量。手动或自动为防火墙创建特殊规则,这些规则负责访问控制。在OS中,在Linux内核上开发的CentOS 7有一个内置防火墙,它由防火墙控制。涉及默认的防火墙,我们今天想谈谈它。

在CentOS 7中自定义防火墙

如上所述,CentOS 7中的标准防火墙被分配了防火墙实用程序。这就是为什么将在此工具的示例上考虑防火墙设置。您可以使用相同的Iptables设置过滤规则,但它略有不同。我们建议您通过单击以下链接熟悉所提到的实用程序的配置,并且我们将开始拆卸防火墙。

如果您暂时或永久禁用防火墙,我们建议您使用以下链接使用其他文章中呈现的指令。

阅读更多:禁用Centos 7中的防火墙

查看默认规则和经济实惠的区域

即使是常规防火墙也有自己的确定规则和可访问的区域。在开始政治家编辑之前,我们建议您熟悉当前配置。这是使用简单命令完成的:

  1. 默认区域将确定防火墙-cmd - 默认区域命令。
  2. 查看CentOS 7中的默认防火墙区域

  3. 激活后,您将看到将显示所需参数的新字符串。例如,在下面的屏幕截图中考虑“公共”区域。
  4. 在CentOS 7中显示默认防火墙区域

  5. 然而,几个区域可以立即激活,除此之外,它们与单独的接口相关联。通过防火墙-cmd - active-zones查找此信息。
  6. 查看CentOS 7中的所有活动咽地区

  7. 防火墙-cmd --list-all命令将显示为默认区域设置的规则。注意下面的屏幕截图。您可以看到活动区域“public”分配了“默认”规则 - 默认函数,ENP0S3接口和添加两个服务。
  8. 通过CentOS 7中的终端查看活动咽地区的规则

  9. 如果您需要了解所有可用的防火墙区域,请输入防火墙-CMD - 凝聚区域。
  10. 通过CentOS 7中的终端获取所有可用防火墙区域的列表

  11. 特定区域的参数通过防火墙-cmd --zone = name - 所有列表定义,其中名称是区域的名称。
  12. 通过CentOS 7中的终端显示指定的防火墙区域的规则

确定所需参数后,您可以转移到更改并添加。让我们详细分析几个最流行的配置。

设置接口区域

根据您从上面的信息知道,您的默认区域是为每个接口定义的。它将在其中,直到设置更改用户或以编程方式更改。可以手动将接口传输到每个会话区域,并且通过激活sudo防火墙-cmd --zone = home命令--change-interface = eth0来执行它。结果“成功”表明转移成功。回想一下,重新启动防火墙后,此类设置会立即重置。

为Centos 7中的防火墙区域分配特定界面

通过参数的这种变化,应该考虑到服务的操作可以重置。其中一些不支持某些区域的运作,让我们说,SSH虽然在“家”中可以访问,但在用户或特殊服务将解决。通过输入防火墙-Cmd - active-zones,请确保接口已成功与新分支相关联。

在CentOS 7中查看活动Phaervola区域及其接口

如果要重置以前进行的设置,只需运行防火墙的重新启动:sudo systemctl重新启动firewalld.service。

在更改CentOS 7后重新启动防火墙

有时,在一个会话中更改接口区域并不总是方便。在这种情况下,您需要编辑配置文件,以便将所有设置永久搪瓷。为此,我们建议您使用纳米文本编辑器,该编辑器从Sudo Yum安装Nano的官方存储安装。接下来仍然是这样的行动:

  1. 通过输入sudo nano / etc / sysconfig / network-scripts / ifcfg-eth0,通过编辑器打开配置文件,其中eth0是所需接口的名称。
  2. 在CentOS 7中打开Firevol接口配置文件

  3. 确认您的帐户身份验证以执行进一步的操作。
  4. 输入密码以在CentOS 7中打开接口的配置文件

  5. 布局“区域”参数并将其值更改为所需的值,例如,公共或家庭。
  6. 通过CentOS 7中的配置文件更改接口区域

  7. 按住Ctrl + O键以保存更改。
  8. 录制文本编辑器CentOS 7的更改

  9. 请勿更改文件名,但只需单击“终端”。
  10. 分配文件以记录CentOS 7文本编辑器中的更改

  11. 通过Ctrl + X退出文本编辑器。
  12. 在CentOS 7更改后退出文本编辑器

现在,接口区域将是您指定的那个,直到下一个编辑配置文件。有关更新的参数,请运行sudo systemctl重新启动network.service和sudo systemctl重新启动firewalld.service。

设置默认区域

上面,我们已经演示了一个团队,允许您学习默认区域。它也可以通过将参数设置为您的选择来更改。为此,在控制台中,它足以注册sudoirewall-cmd -set-default-zone = name,其中name是所需区域的名称。

Centos 7中默认防火墙区域的目的

命令的成功将通过单独的线路中的铭文“成功”证明。之后,如果在配置文件中未指定另一个,则所有当前接口将生出到指定区域。

Centos 7中默认区域的成功目的地

为程序和实用程序创建规则

在这篇文章的开始,我们谈到了每个区域的动作。在此类分支中定义服务,实用程序和程序将允许为每个用户请求中的每一个应用各个参数。首先,我们建议您熟悉目前可用的全部服务列表:防火墙-CMD - 植物服务。

在CentOS 7服务系统中查看的命令

结果将直接显示在控制台中。每个服务器都被空格划分,您可以轻松找到您感兴趣的工具。如果缺少所需的服务,则应另外安装它。在安装规则上,阅读官方软件文档。

CentOS中的可用服务列表7

上面的命令只演示了服务的名称。通过路径/ usr / lib / firewalld / services上的各个文件获取它们的详细信息。此类文档具有XML格式,例如SSH的路径如下所示:/usr/lib/firewalld/services/ssh.xml,并且该文档具有以下内容:

ssh。

Secure Shell(SSH)是用于登录和执行远程计算机上的命令的协议。它提供安全的加密通信。如果您计划通过SSH通过防火墙接口访问计算机RemotEnet,请启用此选项。您需要安装OpenSsh-Server软件包以使此选项有用。

服务支持在手动中在特定区域中激活。在终端中,您应该设置sudo firewall-cmd --zone = public --dd-service = http命令,其中--zone = public是一个激活区域,--dd-service = http - 服务名称。请注意,此类更改只会在一个会话中有效。

向特定的STEAVOL区域CentOS添加服务7

永久添加通过sudo防火墙-cmd --zone = public -permanent --dd-service = http,结果“成功”表示成功完成操作。

永久为Firevola CentOS 7添加服务7

您可以通过在控制台的单独行中显示列表来查看特定区域的完整列表:sudo防火墙-cmd --zone = public -permanent -list-services。

查看永久防火墙服务中心列表7

缺乏访问服务的决策问题

标准防火墙规则是由允许的最流行和最安全的服务表示的,但它块的一些标准或第三方应用程序。在这种情况下,用户手动需要更改设置以解决访问问题。您可以用两种不同的方法执行此操作。

港口港口

如您所知,所有网络服务都使用特定端口。它由防火墙容易地检测,并且可以执行块。要从防火墙避免此类操作,您需要打开所需的sudo防火墙-cmd --zone = public - portd-port = 0000 / tcp,其中--zone = public是一个端口区域, - 端口= 0000 / TCP - 端口号和协议。防火墙-cmd --list-ports选项将显示打开端口列表。

在某个防火墙区CentOS中的港口打开7

如果需要打开该范围内的端口,请使用sudo防火墙-cmd字符串--zone = public --dd-port = 0000-9999 / UDP,其中--add-port = 0000-9999 / UDP - 端口范围及其协议。

在特定的Firevola区CentOS中打开端口范围7

上述命令仅允许您测试类似参数的使用。如果它已成功传递,则应添加相同的端口到常量设置,这是通过输入sudo防火墙-cmd --zone = public -perment --add-port = 0000 / TCP或Sudo防火墙-CMD - ZONE = PUBLIC -PERMANENT - ADD-PORT = 0000-9999 / UDP。打开的永久端口列表如下:sudo防火墙-cmd --zone = public -permanent -list-ports。

服务定义

正如您所看到的,添加端口不会导致任何困难,但是当应用程序使用大量时,程序很复杂。要追踪所有使用的端口都变得困难,因此服务确定将更正确选项:

  1. 通过编写sudo cp /usr/lib/firewalld/services/service.xml /etc/firewalld/services/example.xml来复制配置文件,其中service.xml是服务文件的名称,example.xml是其副本的名称。
  2. 将文件文件服务文件复制到CentOS 7中

  3. 打开副本以通过任何文本编辑器更改,例如sudo nano /etc/firewalld/services/example.xml。
  4. 启动复制的CentOS 7服务文件

  5. 例如,我们创建了一个HTTP服务的副本。在文档中,您基本上看到各种元数据,例如,短名称和描述。它影响服务器仅工作端口号和协议的更改。在字符串上方“”应该添加以打开端口。 TCP - 二手协议,0000 - 端口号。
  6. 服务文件的修改为Centos 7中的港口

  7. 保存所有更改(Ctrl + O),关闭文件(Ctrl + x),然后重新启动防火墙以通过sudo firewall-cmd - 中加载应用参数。之后,该服务将出现在可用列表中,可以通过防火墙-cmd -get-et服务查看。
  8. 在CentOS 7中重新启动Firevol服务

您只需要为服务问题选择最合适的解决方案,并对服务进行执行并执行所提供的说明。如您所见,所有操作都非常容易执行,并且应该没有困难。

创建自定义区域

您已经知道,在Firewalld中最初在具有具有定义规则的大量具有定义规则的不同区域中。但是,系统管理员需要创建用户区域(例如已安装的Web Server或“PrivateNS”)的用户区域时出现情况 - 对于DNS服务器。在这两个例子上,我们将分析增加分支机构:

  1. 由sudo firewall-cmd -permanent创建两个新的永久区域 - new-zone = publicebyb和sudo firewall-cmd -permanent --new-zone = privatens。
  2. 添加新的用户ZoneVola区CentOS 7

  3. 重新启动sudo防火墙-cmd - 中加入工具后,它们将可用。要显示永久区域,请输入sudo firewall-cmd -permanent -get-zones。
  4. 查看Centos 7中实惠的防火墙

  5. 将它们分配必要的服务,例如“ssh”,“http”和“https”。这些是由sudo防火墙-cmd --zone = publicebl -add-service = ssh,sudo防火墙-cmd --zone = publyweb - do-service = publickeb --do防火墙-cmd - priceweb - priceweb - Add-service = https,其中--zone = publiceby是要添加的区域的名称。您可以通过挂起防火墙-cmd --zone查看服务的活动= publiceble -list -lis-all。
  6. 将服务添加到CentOS 7用户区域

从本文中,您学习了如何创建自定义区域并向它们添加服务。我们已经告诉他们默认和在上面分配界面,只能指定正确的名称。在进行任何永久性变更后,不要忘记重新启动防火墙。

如您所见,Firewalld防火墙是一个相当容量的工具,允许您做出防火墙最灵活的配置。它仍然是为了确保使用系统的实用程序和指定的规则立即开始工作。使用sudo systemctl启用firewalld命令。

阅读更多