linux

如何配置Linux虚拟机的防火墙

小樊
56
2025-08-09 05:16:43
栏目: 云计算

Linux虚拟机常用防火墙工具为ufw(Ubuntu/Debian)和firewalld(CentOS/RHEL),以下是具体配置方法:

一、ufw(Ubuntu/Debian默认工具)

  1. 安装与启用

    sudo apt update && sudo apt install ufw  # 安装
    sudo ufw enable                          # 启用(默认拒绝非规则流量)
    sudo ufw status                          # 查看状态
    
  2. 添加规则

    • 允许SSH(端口22):
      sudo ufw allow ssh
      
    • 允许HTTP/HTTPS(端口80/443):
      sudo ufw allow http
      sudo ufw allow https
      
    • 拒绝特定IP访问:
      sudo ufw deny from 192.168.1.100
      
  3. 删除规则与关闭

    • 删除允许SSH的规则:
      sudo ufw delete allow ssh
      
    • 关闭ufw:
      sudo ufw disable
      

二、firewalld(CentOS/RHEL默认工具)

  1. 安装与启动

    sudo yum install firewalld  # 安装
    sudo systemctl start firewalld  # 启动
    sudo systemctl enable firewalld  # 开机自启
    
  2. 基础规则配置

    • 查看默认区域:
      sudo firewall-cmd --get-default-zone
      
    • 开放端口(如8080):
      sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent  # 永久生效需加--permanent
      sudo firewall-cmd --reload  # 重新加载规则
      
    • 允许服务(如SSH):
      sudo firewall-cmd --zone=public --add-service=ssh --permanent
      
  3. 高级功能

    • 限制IP访问(仅允许192.168.1.0/24访问SSH):
      sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule source address="192.168.1.0/24" service name="ssh" accept'
      
    • 端口转发(将80端口转发至8080):
      sudo firewall-cmd --permanent --zone=public --add-forward-port=port=80:proto=tcp:toport=8080
      

三、注意事项

根据实际需求选择工具,配置后可通过ufw statusfirewall-cmd --list-all验证规则是否生效。

0
看了该问题的人还看了