我正在使用一个带有自己的 SELinux 类型标签的 Java 应用程序。 Java 将其作为unconfined_t
而不是标记类型来执行。
Java 标记为bin_t
( ls -Z /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64/jre/bin/java
)
但是ps -efZ | grep java
显示它运行为unconfined_t
.
我怎样才能让java运行为bin_t
?如何让 java 应用程序在正确的上下文中运行?
目标是让应用程序在其自己的上下文中运行,或者至少像bin_t
Java 启动时一样运行。
发行版是 CentOS 7。
答案1
bin_t
是文件类型,而不是进程域。进程通过以下方式进入受限域入口点,通常是标有入口点文件类型的可执行文件,例如httpd_exec_t
httpd 守护程序。
切入点在策略中定义。如果您有定义进程域的策略,它可能也定义了入口点。使用正确的入口点标签来标记用于启动应用程序的可执行文件(脚本等)。