要删除 firewalld 中自定义创建的 zone,可以按照以下步骤操作:
1. 首先查看当前所有 zone
sudo firewall-cmd --get-zones
2. 确认要删除的 zone 没有被任何接口使用
sudo firewall-cmd --get-active-zones
如果该 zone 仍被使用,需要先将接口分配到其他 zone:
sudo firewall-cmd --zone=其他zone --change-interface=接口名
3. 删除 zone
永久删除 zone(重启后生效)
sudo firewall-cmd --permanent --delete-zone=zone名称
立即删除并重新加载配置
sudo firewall-cmd --reload
4. 验证 zone 是否已删除
sudo firewall-cmd --get-zones
注意事项
- 不能删除 firewalld 的默认 zone(如 public、block、dmz、drop、external、internal、trusted、work 等)
- 删除 zone 前确保没有网络接口或服务在使用该 zone
- 删除操作需要管理员权限(使用 sudo)
如果需要删除的是默认 zone 之一,建议改为修改其配置而不是删除,因为系统可能需要这些默认 zone。