getsebool是SELinux中用于查询策略布尔值状态的命令,支持-a选项列出全部开关(on/off或1/0),也可指定名称如getsebool httpd_can_network_connect快速查看单个功能状态。

SELinux 的布尔值是策略中控制功能开关的核心机制,比如是否允许 Web 服务访问网络、能否读取用户家目录等。查看和修改它们不依赖图形界面,全靠命令行工具,关键在于用对命令、理解状态含义、注意持久化设置。
查看当前所有布尔值及其状态
运行 getsebool -a 可列出全部布尔值及当前值(on/off 或 1/0)。输出较长,常用 grep 过滤特定服务:
-
getsebool -a | grep httpd — 查看所有与 Apache 相关的开关,如
httpd_can_network_connect、httpd_read_user_content - getsebool -a | grep ftp — 查看 vsftpd 相关配置
- getsebool -a | grep samba — 查看 Samba 服务相关权限
快速检查单个布尔值
不需要翻完整列表,直接查指定项更高效:
-
getsebool httpd_can_network_connect — 输出类似
httpd_can_network_connect --> off - getsebool samba_export_all_ro — 看只读共享是否启用
结果中的 off 表示该功能被 SELinux 策略禁止,即使文件权限允许、服务也在运行,访问仍可能被拒绝。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
修改布尔值:临时生效与永久生效
使用 setsebool 命令修改,但必须区分是否要重启后保留:
- setsebool httpd_can_network_connect on — 仅当前会话有效,重启或重载策略后恢复原值
-
setsebool -P httpd_can_network_connect on — 加
-P(persistent)参数写入策略数据库,重启后依然生效 -
setsebool samba_export_all_rw off — 关闭某项权限,同样支持
-P
注意:-P 需要策略支持写入,默认 targetted 策略下通常可用;若提示权限错误,请确认以 root 执行。
验证修改是否真正起作用
改完别急着测试服务,先确认值已更新:
- 再次运行 getsebool httpd_can_network_connect,确认显示
--> on - 若仍为
off,可能是没加-P或执行权限不足 - 配合 sesearch -b httpd_can_network_connect 可查看该布尔值实际启用哪些规则,帮助理解它影响什么
服务级验证建议结合 ausearch -m avc -ts recent 或检查 /var/log/audit/audit.log,看是否还有对应 AVC 拒绝记录。

















