centos

centos context对网络有何要求

小樊
32
2025-12-31 08:11:29
栏目: 智能运维

CentOS 中 Context 对网络的要求

概念澄清CentOS 中,所谓的 context 通常指 SELinux 安全上下文(包含用户、角色、类型、级别),用于实施强制访问控制。它决定进程(主体)能否以何种方式访问文件、端口、套接字等对象(客体)。SELinux 有三种模式:Enforcing(强制)、Permissive(宽容)、Disabled(禁用);CentOS/RHEL 默认启用并常用 targeted 策略,重点约束网络服务等目标进程。需要注意,SELinux 是 MAC 机制,并非网络防火墙或 ACL 的替代,通常与 firewalld 等一起使用。

对网络的具体要求

常见网络场景与检查要点

场景 必须满足的 SELinux 要求 快速检查与修复要点
Web 服务(httpd/nginx)监听 80/443 进程域为 httpd_t;端口类型为 http_port_t;文档根目录为 httpd_sys_content_t 查看进程/端口:ps -Z -C httpd、`semanage port -l
自定义端口运行服务 将端口加入对应服务的端口类型(如 semanage port -a -t http_port_t -p tcp 8080)或改用已允许端口 若端口未标记正确类型,服务绑定会被拒绝(AVC 拒绝)
反向代理/数据库连接 进程域需被允许发起网络连接(如 httpd_can_network_connect_db 以布尔值放开:setsebool -P httpd_can_network_connect_db on
DNS 服务(named) 进程域 named_t;数据/日志目录为 named_var_run_t / named_log_t 检查目录上下文:ls -Z /var/named /var/log/named;必要时 restorecon 或调整策略
FTP 服务 进程域 ftpd_t;被动端口范围需被标记为 ftp_port_t 配置被动端口范围并标记:semanage port -a -t ftp_port_t -p tcp 10090-10100
以上要点基于 SELinux 对进程域、端口类型、文件上下文及布尔值的约束与放行机制,配合 semanagerestoreconsetsebool 等工具完成配置与修复。

排错与验证步骤

0
看了该问题的人还看了