在 firewalld 中删除自建 zone 的方法

要删除 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

注意事项

  1. 不能删除 firewalld 的默认 zone(如 public、block、dmz、drop、external、internal、trusted、work 等)
  2. 删除 zone 前确保没有网络接口或服务在使用该 zone
  3. 删除操作需要管理员权限(使用 sudo)

如果需要删除的是默认 zone 之一,建议改为修改其配置而不是删除,因为系统可能需要这些默认 zone。

### 安装 Firewalld 为了在 Ubuntu 中安装 `firewalld` 防火墙,需先更新系统软件包列表并安装该工具。具体命令如下: ```bash sudo apt update && sudo apt upgrade -y sudo apt-get install firewalld -y ``` 完成上述操作后,可以启动 `firewalld` 并将其设置为开机自启[^1]。 ### 启动与启用 Firewalld 启动服务以及设定其随操作系统启动的方法如下所示: ```bash sudo systemctl start firewalld sudo systemctl enable firewalld ``` 确认 `firewalld` 正常运行可使用状态查询指令: ```bash sudo firewall-cmd --state ``` 如果返回结果为 running,则表示防火墙已成功激活[^2]。 ### 基本配置 对于初次使用者来说,了解一些基本概念非常重要。`firewalld` 使用区域(zone)的概念来定义不同级别的访问控制策略,默认情况下会有一个公共区(public zone),适用于大多数场景下的网络接口连接。可以通过下面这条命令查看当前活动的区域及其关联的网卡设备: ```bash sudo firewall-cmd --get-active-zones ``` 要更改默认使用的区域,比如切换至内部网络专用的安全级别更高的 home 或 work 区域之一,可以用此命令实现指定变更: ```bash sudo firewall-cmd --set-default-zone=home ``` 针对特定 IP 地址开放端口的操作也很简单,假设想要允许来自任意位置对本地 SSH (TCP/22) 的请求,那么应该这样写入规则: ```bash sudo firewall-cmd --add-service=ssh --permanent sudo firewall-cmd --reload ``` 这里需要注意的是每次修改永久性的配置之后都需要重新加载配置文件才能使改动生效。 ### 解决常见问题 当首次尝试部署 `firewalld` 时可能会遇到某些挑战,例如有报告指出部分用户在刚完成安装过程期间遭遇到了意外断开 SSH 连接的情况。这可能是由于新的防火墙规则阻止了现有的会话继续通信所致。为了避免这种情况发生,在调整任何可能影响现有连接安全属性之前应当谨慎行事,并考虑临时禁用防火墙直到能够验证所有必要的例外情况都已被正确添加进去[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值