当前位置:   article > 正文

Nginx 实战:Firewalld防火墙

Nginx 实战:Firewalld防火墙

在使用Nginx的同时,往往还需要配合防火墙设置来确保服务器的安全性。Firewalld是Linux系统中的一款动态防火墙管理工具,在Linux发行版如RHEL/CentOS 7及其之后的版本中作为默认防火墙守护程序。以下是利用Firewalld防火墙管理与Nginx相关的端口和服务的一些实战操作:

1. 开启并启动Firewalld服务

sudo systemctl start firewalld
sudo systemctl enable firewalld
  • 1
  • 2

2. 添加Nginx服务到Firewalld

Firewalld自带了一些预定义的服务,包括http和https,它们已经包含了Nginx所需的端口(80和443)。

  • 允许HTTP访问:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
  • 1
  • 2
  • 允许HTTPS访问:
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
  • 1
  • 2

3. 手动开放特定端口

如果你需要为Nginx开放除标准HTTP/HTTPS端口之外的端口,可以直接打开指定端口,例如开放8080端口:

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
  • 1
  • 2

4. 查看已开放的端口和服务

sudo firewall-cmd --list-all
  • 1

5. 将Nginx所在服务器加入特定区域

Firewalld使用区域(Zone)的概念,可以将接口分配到不同的区域,例如设置为public区域:

sudo firewall-cmd --zone=public --change-interface=<interface-name>
  • 1

6. 查看Nginx在哪个区域下的默认规则

sudo firewall-cmd --get-active-zones
  • 1

7. 设置临时或永久规则

上述命令中的--permanent参数用于设置持久化的规则,重启机器后仍然有效。如果没有此参数,则只会临时生效,直到下次重启firewalld或系统为止。

8. 更高级别的控制

对于更复杂的规则,你可能需要直接编辑XML配置文件或者使用firewall-cmd的更多功能来精细化控制访问策略,例如针对特定IP范围的访问控制等。

注意:

  • 当更改防火墙规则时,一定要确保不会阻断必要的服务或影响现有应用的正常运行。
  • 使用--permanent参数是为了保证规则在系统重启后仍能保留,否则更改会在系统重启后丢失。每次更改后都要执行--reload命令来应用新规则。

通过以上步骤,你可以有效地将Firewalld防火墙配置与Nginx服务相结合,以保障服务器的安全性和可控的网络访问策略。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/311450
推荐阅读
相关标签
  

闽ICP备14008679号