2.8. JBoss Web 服务器的 SELinux 策略


您可以使用 Security-Enhanced Linux (SELinux)策略来定义 JBoss Web 服务器的访问控制。这些策略是一组规则,用于决定产品的访问权限。

2.8.1. jws6-tomcat的 SELinux 策略信息

SELinux 安全模型由内核实施,并确保应用程序对资源(如文件系统位置和端口)具有有限的访问权限。SELinux 策略可确保任何被破坏或配置不当的进程都被限制或阻止运行。

JBoss Web 服务器安装中的 jws6-tomcat-selinux 软件包提供了一个 jws6_tomcat 策略。下表包含有关提供的 SELinux 策略的信息。

Expand
表 2.1. RPM 和默认 SELinux 策略
Name端口信息策略信息

jws6_tomcat

http_port_t 中的四个端口(TCP 端口 8080800580098443)以允许 tomcat 进程使用它们

已安装 jws6_tomcat 策略,它会在 Tomcat 执行时为进程设置适当的 SELinux 域。它还设置适当的上下文,以允许 Tomcat 写入以下目录:

  • /var/opt/rh/jws6/lib/tomcat
  • /var/opt/rh/jws6/log/tomcat
  • /var/opt/rh/jws6/cache/tomcat
  • /var/opt/rh/jws6/run/tomcat.pid

在这个发行版本中,归档软件包提供 SELinux 策略。jws-6.1.0-application-server- <platform>- <architecture>.zip 归档的 tomcat 文件夹包括 .postinstall.selinux 文件。如果需要,您可以运行 .postinstall.selinux 脚本。

步骤

  1. 安装 selinux-policy-devel 软件包:

    dnf install -y selinux-policy-devel
    Copy to Clipboard Toggle word wrap
  2. 运行 .postinstall.selinux 脚本:

    cd <JWS_home>/tomcat/
    sh .postinstall.selinux
    Copy to Clipboard Toggle word wrap
  3. 为 JBoss Web 服务器所需的端口添加访问权限:

    semanage port -a -t http_port_t -p tcp <port>
    Copy to Clipboard Toggle word wrap
    注意

    JBoss Web 服务器有权访问 Red Hat Enterprise Linux 系统上的端口 80808009、884438005

    当 JBoss Web 服务器需要额外的端口时,请使用前面的 semanage 命令提供所需的权限,并将 < port&gt; 替换为所需的端口。

  4. 启动 Tomcat :

    <JWS_home>/tomcat/bin/startup.sh
    Copy to Clipboard Toggle word wrap
  5. 检查希望 jws6_tomcat 的正在运行的进程的上下文:

    ps -eo pid,user,label,args | grep jws6_tomcat | head -n1
    Copy to Clipboard Toggle word wrap
  6. 验证 Tomcat 目录的上下文。例如:

    ls -lZ <JWS_home>/tomcat/logs/
    Copy to Clipboard Toggle word wrap
注意

默认情况下,JBoss Web 服务器提供的 SElinux 策略不是活跃的,Tomcat 进程在 unconfined_java_t 域中运行。这个域不会限制进程。

如果您选择不启用提供的 SELinux 策略,您可以执行以下操作:

  • 限制 tomcat 用户的文件访问权限,以便 tomcat 用户只能访问 JBoss Web 服务器运行时所需的文件和目录。
  • 不要以 root 用户身份运行 Tomcat。
注意

从存档文件安装 JBoss Web 服务器时,红帽不正式支持使用网络文件共享(NFS)。如果您希望 JBoss Web 服务器安装使用 NFS 挂载的文件系统,您需要确保正确修改 SELinux 策略来支持此类部署。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat