如何开启或关闭SELinux

本文围绕CentOS系统中SELinux的设置与状态检查展开。可通过修改 /etc/sysconfig/selinux 文件将 SELINUX 设为 disable 来停止,也能在核心参数后加 selinux=0 或 1 控制开关。还可通过 /boot/grub/menu.lst 文件设置,使用 getenforce 检查状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CentOS /etc/sysconfig/selinux

修改档案/etc/sysconfig/selinux:

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=enforcing

# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.

SELINUXTYPE=targeted

把 SELINUX设定为disable, 下次启动系统后将会停止SElinux。

 

Linux核心参数(Kernel Parameter)

或者可以在核心参数后加上: selinux=0 (停止) 或 selinux=1 (开启)参数

档案/boot/grub/menu.lst

title Fedora Core (2.6.18-1.2798.fc6)
root (hd0,0)
kernel /vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/ rhgb quiet  selinux=0
initrd /initrd-2.6.18-1.2798.fc6.img

检查SELinux现时况态

要知到你现在是否使用 SELinux:

# getenforce
Enforcing

 

注:setenforce是切换SELinux的模式(Enforcing和Permissive,都是在开启状态),而不能设置SELinux是开启还是关闭。

### 关闭 SELinux 以解决 Zabbix 数据库相关问题 #### 理解问题 用户希望关闭 SELinux 来解决 Zabbix 数据库表不存在的问题。SELinux 是一种安全模块,可能会限制某些操作,导致 Zabbix Server 无法正常访问数据库执行其他任务[^5]。 #### 配置 SELinux 可以通过以下方法临时永久关闭 SELinux: 1. **临时关闭 SELinux**: 使用以下命令可以立即关闭 SELinux,但此更改在系统重启后会失效: ```bash setenforce 0 ``` 2. **永久关闭 SELinux**: 编辑 `/etc/selinux/config` 文件并修改 `SELINUX` 参数为 `disabled`: ```plaintext SELINUX=disabled ``` 保存文件后,需要重启系统以使更改生效[^5]。 #### 验证 SELinux 状态 使用以下命令检查当前 SELinux 的状态: ```bash getenforce ``` 如果输出为 `Enforcing`,表示 SELinux 正在强制执行安全策略;如果输出为 `Permissive` `Disabled`,则表示 SELinux 已被禁用处于宽容模式[^5]。 #### 注意事项 关闭 SELinux 可能会降低系统的安全性,因此建议仅在开发测试环境中使用此方法。在生产环境中,应配置适当的 SELinux 策略以允许 Zabbix Server 正常运行,而不是完全禁用 SELinux[^5]。 #### 验证 Zabbix 数据库表 确保数据库表已正确导入。登录到 MySQL 并检查 `users` 表是否存在: ```sql USE zabbix; SHOW TABLES LIKE 'users'; ``` 如果表不存在,请重新导入 Zabbix 数据库结构[^3]: ```bash zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix ``` --- ### 示例代码:验证 SELinux 状态 以下脚本可以用来检查和关闭 SELinux: ```bash #!/bin/bash # 检查当前 SELinux 状态 echo "当前 SELinux 状态:" getenforce # 如果状态为 Enforcing,则关闭 SELinux if [ "$(getenforce)" == "Enforcing" ]; then echo "临时关闭 SELinux..." setenforce 0 echo "SELinux 已临时关闭。" else echo "SELinux关闭处于宽容模式。" fi ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值