在Kubernetes(K8S)环境中,有时候我们需要关闭CentOS 7防火墙上的特定端口,以便让K8S集群中的应用程序能够正常通信。在本篇文章中,我将向大家展示如何在CentOS 7上关闭防火墙端口的步骤,以及每一步需要执行的具体命令和其作用。

### 整体流程

下面是关闭CentOS 7防火墙端口的整体流程:

| 步骤 | 说明 |
| ------------------ | -------------------------------------------- |
| 1. 查看当前防火墙规则 | 查看当前CentOS 7防火墙规则 |
| 2. 关闭指定端口 | 使用firewall-cmd关闭指定端口 |
| 3. 永久关闭端口 | 使用firewall-cmd永久关闭指定端口并保存规则 |
| 4. 重新加载防火墙 | 重新加载防火墙规则使更改生效 |

### 详细步骤及代码示例

#### 步骤1:查看当前防火墙规则

在执行任何更改之前,首先查看当前的防火墙规则,确认要关闭的端口是否已经开放。

```bash
sudo firewall-cmd --list-all
```

这条命令将显示当前防火墙的所有规则,您可以查看其中是否包含您想要关闭的端口。

#### 步骤2:关闭指定端口

使用以下命令关闭特定端口,例如关闭端口80:

```bash
sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent
```

这条命令将从公共区域(public)中永久性地移除TCP端口80的规则,即关闭该端口。

#### 步骤3:永久关闭端口

执行以下命令将上一步中的更改永久保存,防止系统重启后规则失效:

```bash
sudo firewall-cmd --reload
```

这条命令将重新加载防火墙规则,使更改生效。

#### 步骤4:重新加载防火墙

最后,再次执行以下命令查看当前的防火墙规则,确保端口已经关闭:

```bash
sudo firewall-cmd --list-all
```

### 总结

通过以上步骤,您可以轻松在CentOS 7防火墙上关闭指定端口,以满足K8S环境中应用程序的需要。记得在执行任何防火墙更改前,务必谨慎查看当前规则,以避免不必要的问题出现。希望这篇指南对您有所帮助,祝您顺利完成关闭防火墙端口的操作!