温馨提示×

centos虚拟机中如何配置防火墙

小樊
46
2025-09-15 16:57:13
栏目: 云计算

CentOS虚拟机默认使用firewalld管理防火墙,配置步骤如下:

  1. 安装与启动

    • 安装(若未安装):sudo yum install firewalld(CentOS 7/8)
    • 启动并开机自启:
      sudo systemctl start firewalld sudo systemctl enable firewalld 
  2. 查看状态

    sudo systemctl status firewalld # 查看服务状态  sudo firewall-cmd --state # 查看防火墙是否运行  sudo firewall-cmd --list-all # 查看当前规则  
  3. 配置端口规则

    • 开放端口(如HTTP 80端口):
      sudo firewall-cmd --zone=public --add-port=80/tcp --permanent # 永久生效  sudo firewall-cmd --reload # 重新加载规则  
    • 关闭端口
      sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent sudo firewall-cmd --reload 
  4. 配置服务规则

    • 开放服务(如SSH、HTTPS):
      sudo firewall-cmd --zone=public --add-service=ssh --permanent sudo firewall-cmd --zone=public --add-service=https --permanent 
    • 删除服务
      sudo firewall-cmd --zone=public --remove-service=http --permanent 
  5. 区域管理

    • 查看默认区域:sudo firewall-cmd --get-default-zone
    • 修改默认区域(如设为“trusted”):
      sudo firewall-cmd --set-default-zone=trusted 
    • 为接口指定区域(如eth0设为public):
      sudo firewall-cmd --permanent --zone=public --add-interface=eth0 
  6. IP访问控制

    • 允许特定IP访问(如192.168.1.100):
      sudo firewall-cmd --permanent --add-rich-rule='rule source address="192.168.1.100" accept' 
    • 拒绝IP段访问(如10.0.0.0/24):
      sudo firewall-cmd --permanent --add-rich-rule='rule source address="10.0.0.0/24" reject' 
  7. 高级操作

    • 查看防火墙日志:sudo journalctl -u firewalld -f
    • 临时禁用防火墙(不推荐生产环境):
      sudo systemctl stop firewalld sudo systemctl disable firewalld 

注意:所有配置需通过--permanent参数保存为永久规则,修改后需执行firewall-cmd --reload生效。

参考来源:[1,3,5,7,8,9,11,12,13,14]

0