13.3. 布尔值
SELinux 基于服务运行所需的最低访问权限级别。服务可以以多种方式运行;因此,您需要指定如何运行您的服务。这可以通过布尔值来实现,这些布尔值允许在运行时更改 SELinux 策略的部分,而无需了解 SELinux 策略的编写。这允许更改,例如允许服务访问 NFS 卷,而无需重新加载或重新编译 SELinux 策略。
要修改布尔值的状态,请使用 setsebool 命令。例如,要启用
httpd_anon_write 布尔值,请以 root 用户身份输入以下命令:
setsebool -P httpd_anon_write on
~]# setsebool -P httpd_anon_write on
要禁用布尔值,请使用同一示例,只需在命令中更改为 off,如下所示:
setsebool -P httpd_anon_write off
~]# setsebool -P httpd_anon_write off
注意
如果您不希望 setsebool 更改在重启后保留,请不要使用 the
-P 选项。
以下是
httpd 运行方式的通用布尔值的描述:
httpd_anon_write- 禁用后,此布尔值仅允许
httpd对标有public_content_rw_t类型的文件具有读取权限。启用此布尔值可让httpd写入标有public_content_rw_t类型的文件,如包含公共文件传输服务的文件的公共目录。 httpd_mod_auth_ntlm_winbind- 启用此布尔值允许使用
httpd中的mod_auth_ntlm_winbind模块访问 NTLM 和 Winbind 身份验证机制。 httpd_mod_auth_pam- 启用此布尔值允许使用
httpd中的mod_auth_pam模块访问 PAM 身份验证机制。 httpd_sys_script_anon_write- 此布尔值定义是否允许 HTTP 脚本写入使用
public_content_rw_t类型标记的文件,如公共文件传输服务中使用的。 httpd_builtin_scripting- 此布尔值定义了对
httpd脚本的访问。PHP 内容通常需要启用此布尔值。 httpd_can_network_connect- 禁用后,这个布尔值可防止 HTTP 脚本和模块启动与网络或远程端口的连接。启用此布尔值以允许此访问。
httpd_can_network_connect_db- 禁用后,此布尔值可防止 HTTP 脚本和模块启动与数据库服务器的连接。启用此布尔值以允许此访问。
httpd_can_network_relay- 当
httpd用作正向或反向代理时,启用此布尔值。 httpd_can_sendmail- 禁用后,此布尔值可防止 HTTP 模块发送邮件。这可以防止垃圾邮件攻击应该可以在
httpd中找到。启用此布尔值以允许 HTTP 模块发送邮件。 httpd_dbus_avahi- 禁用后,此布尔值拒绝通过
D-Bus对avahi服务的httpd访问。启用此布尔值以允许此访问。 httpd_enable_cgi- 禁用后,此布尔值会阻止
httpd执行 CGI 脚本。启用此布尔值以允许httpd执行 CGI 脚本(CGI 脚本必须使用httpd_sys_script_exec_t类型进行标记)。 httpd_enable_ftp_server- 启用此布尔值可让
httpd侦听 FTP 端口并充当 FTP 服务器。 httpd_enable_homedirs- 禁用后,此布尔值将阻止
httpd访问用户主目录。启用此布尔值以允许httpd访问用户主目录;例如,/homepassphrase/ 中的内容。 httpd_execmem- 启用后,此布尔值允许
httpd执行需要可执行和可写的内存地址的程序。不建议从安全角度启用此布尔值,因为它可减少对缓冲区溢出的保护,但某些模块和应用程序(如 Java 和 Mono 应用)需要此特权。 httpd_ssi_exec- 此布尔值定义服务器端是否可以在网页中包含(SSI)元素。
httpd_tty_comm- 此布尔值定义是否允许
httpd访问控制终端。通常不需要这种访问,但在配置 SSL 证书文件等情形中,需要进行终端访问来显示和处理密码提示符。 httpd_unified- 启用后,此布尔值允许
httpd_t完全访问所有httpd类型(即执行、读取或写入 sys_content_t)。禁用后,将区分只读、可写入或可执行的 Web 内容。禁用此布尔值可确保额外的安全级别,但增加了管理开销,即必须根据每个布尔值应具有的文件访问权限单独标记脚本和其他 Web 内容。 httpd_use_cifs- 启用此布尔值,以允许
httpd访问使用cifs_t类型标记的 CIFS 卷上的文件,如使用 Samba 挂载的文件系统。 httpd_use_nfs- 启用此布尔值以允许
httpd访问使用nfs_t类型标记的 NFS 卷中的文件,如使用 NFS 挂载的文件系统。
注意
由于 SELinux 策略的持续开发,以上列表可能不包含与 服务相关的所有布尔值。要列出它们,请输入以下命令:
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
输入以下命令查看特定布尔值的描述:
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
请注意,需要提供
getsebool -a | grep service_name
~]$ getsebool -a | grep service_name
sepolicy booleans -b boolean_name
~]$ sepolicy booleans -b boolean_name
sepolicy 工具的额外 policycoreutils-devel 软件包才能使这个命令正常工作。