CachyOS 配置 ufw 防火墙允许 QEMU 虚拟机联网

CachyOS 中使用的防火墙是 UFW(Uncomplicated Firewall),这是官方从 2024 年中后期(约 6 月更新开始)就改成预设的防火墙工具,取代了之前的 firewalld。

ufw 默认规则下,QEMU 虚拟机安装好系统之后(例如 Windows 10/11)无法联网,需要通过 ufw 命令创建防火墙规则来允许 QEMU 虚拟机与宿主机网络接口通讯,网络联接上网。

# 查看目前状态(最常用)
sudo ufw status verbose

# 查看 VM 网络接口 virbr0 的名称

ip route show default
#(看 via 后面的介面,例如 enp3s0 或 wlp4s0)

# 假设你的外部介面是 enp3s0(有线)或 wlan0(无线),后面会用到。

# 允许 virbr0 的转发流量(route allow)这是关键步骤,让 VM 的流量可以「出去」:

sudo ufw route allow in on virbr0 out on enp3s0

# 允许 virbr0 上的 inbound/outbound(基本开放 VM <-> host 通讯) 

sudo ufw allow in on virbr0
sudo ufw allow out on virbr0

# 重新载入 UFW 让规则生效 
sudo ufw reload

# 确认 libvirt default 网络运行 
virsh net-list --all
virsh net-start default   # 如果是 inactive

# 自动启动 default 网络
virsh net-autostart default

# 重启 libvirtd 服务
sudo systemctl restart libvirtd