setenforce 命令生成器
生成用于切换SELinux模式的setenforce命令
开始使用 setenforce
## 什么是 setenforce?
`setenforce` 命令可在不重启的情况下,将**正在运行**的 SELinux 模式在 `Enforcing` 和 `Permissive` 之间切换。该命令可接受数值(`1` 或 `0`)或对应的字符串(`Enforcing` / `Permissive`)。这只是运行时的更改——重启后就会失效。
## 使用方法
1. **选择模式**:选择 `1` / `Enforcing` 以强制应用策略,或选择 ⟦CODE9⟦ / `Permissive` 仅记录拒绝操作而不进行阻止。 2. **以根用户身份执行**:使用 `sudo` 或以根用户身份运行生成的命令。 3. **验证**:运行 `getenforce` 以确认新模式已生效。 4. **复制并运行**:将生成的命令复制到终端中执行。
> 若希望让此更改在重启后仍然有效,需在 `/etc/selinux/config` 中设置 `SELINUX=enforcing`(或 `permissive`)。如果系统在启动时已禁用 SELinux,`setenforce` 也无法将其重新启用。
常用选项
### `1` 或 `Enforcing` 将正在运行的 SELinux 模式更改为“强制模式”——此时策略违规行为会被阻止并记录下来。这是生产服务器的安全默认模式。
### `0` 或 `Permissive` 将运行模式更改为“宽松模式”——此时策略违规行为虽会被记录,但仍然允许发生。这种模式适用于排查被 SELinux 阻止的服务问题:先切换到宽松模式,重现问题,然后再使用 `audit2why` 查看 `/var/log/audit/audit.log` 的内容。
▶setenforce 设置在重启后还会保留吗?
▶我已将其设置为“强制”,但 `getenforce` 的显示值仍然是“禁用”——为什么?
▶我应该在什么时候暂时使用 Permissive?
如果这个工具对你有帮助的话,请考虑请我喝杯咖啡。
请给我买杯咖啡吧。