====== 第十章:Proxmox VE防火墙 ======
原文链接:https://pve.proxmox.com/pve-docs/chapter-firewall.html
最后更新:2026-02-25
===== 概述 =====
Proxmox VE防火墙提供了强大的网络安全功能,允许您在节点、虚拟机和容器级别实施网络访问控制。
===== 防火墙架构 =====
=== 层级 ===
* Datacenter级别 - 全局规则
* Node级别 - 节点规则
* VM/CT级别 - 虚拟机/容器规则
=== 规则方向 ===
* IN - 入站
* OUT - 出站
===== 启用防火墙 =====
=== 全局启用 ===
在Web界面:
1. 数据中心 → 防火墙
2. 启用防火墙
3. 保存
=== 每节点启用 ===
# /etc/pve/firewall/cluster.fw
[OPTIONS]
enable: 1
===== 规则配置 =====
=== 基本规则 ===
* 操作 - ACCEPT/DROP/REJECT
* 协议 - TCP/UDP/ICMP
* 源/目标端口
* 源/目标IP
=== 创建规则 ===
通过Web界面:
1. 选择防火墙选项卡
2. 点击"添加"
3. 配置规则
4. 保存
=== 命令行 ===
pvesh create /cluster/firewall/rules -pos 1 -action ACCEPT -protocol TCP -dport 22 -comment "SSH"
===== 安全组 =====
=== 创建安全组 ===
pvesh create /cluster/firewall/groups -group web-servers
=== 添加规则到组 ===
pvesh create /cluster/firewall/rules -group web-servers -pos 1 -action ACCEPT -protocol TCP -dport 80
=== 使用安全组 ===
将安全组应用到VM:
qm set 100 -firewall 1 -net0 virtio,bridge=vmbr0,firewall=1
===== 常用规则示例 =====
=== 允许SSH ===
IN ACCEPT -p tcp --dport 22 -log nolog
=== 允许HTTP/HTTPS ===
IN ACCEPT -p tcp --dport 80
IN ACCEPT -p tcp --dport 443
=== 拒绝Ping ===
IN DROP -p icmp --icmp-type echo-request
=== 限制SSH ===
IN ACCEPT -p tcp --dport 22 -s 10.0.0.0/8
IN DROP -p tcp --dport 22
===== IPv6支持 =====
=== 启用IPv6 ===
# /etc/pve/firewall/cluster.fw
[OPTIONS]
enable: 1
ipv6: 1
=== IPv6规则 ===
与IPv4类似,支持:
* TCP/UDP/ICMPv6
* 源/目标地址
* 扩展规则
===== 日志 =====
=== 日志级别 ===
* nolog - 不记录
* log - 记录
* reject - 记录并拒绝
* drop - 记录并丢弃
=== 查看日志 ===
tail -f /var/log/pve-firewall.log
===== 自动化规则 =====
=== Proxmox内置 ===
* 集群通信 - UDP端口 5404, 5405
* 迁移 - TCP端口 60000-60010
* VNC - 端口 5900-5999
===== 防护 =====
=== DDoS防护 ===
* 连接限制
* 速率限制
* SYN cookies
=== 恶意流量 ===
* 端口扫描检测
* 异常流量检测
===== 高级配置 =====
=== MAC地址过滤 ===
IN ACCEPT -mac XX:XX:XX:XX:XX:XX
=== 连接跟踪 ===
* 状态跟踪
* RELATED/ESTABLISHED
* 允许已建立连接
===== 故障排除 =====
=== 常见问题 ===
* 规则不生效
* 无法连接
* 性能下降
=== 诊断 ===
# 查看规则
iptables -L -n -v
# 测试连接
telnet host port
# 查看日志
tail -f /var/log/pve-firewall.log
===== 最佳实践 =====
1. 默认拒绝所有
2. 最小权限原则
3. 记录重要操作
4. 定期审计规则
===== 配置示例 =====
=== 数据中心规则 ===
# /etc/pve/firewall/cluster.fw
[OPTIONS]
enable: 1
ebtables: 1
[RULES]
IN ACCEPT -p tcp -dport 8006 -s 192.168.1.0/24
=== 虚拟机规则 ===
# /etc/pve/qemu-server/100.fw
[INPUT]
IN ACCEPT -p tcp -dport 22
IN ACCEPT -p tcp -dport 80
IN ACCEPT -p tcp -dport 443
[FORWARD]
IN DROP -log nolog
OUT ACCEPT -log nolog