SELinux 端口“在策略中定义,无法删除”

spr*_*aff 8 selinux

我对这个问题的答案并不满意:

$> sudo semanage port -d -p tcp -t foo...
ValueError: Port foo is defined in policy, cannot be deleted
Run Code Online (Sandbox Code Playgroud)

接受的答案是

SELinux 策略包括端口的定义...无需删除它们。

无需删除它们。好吧,但我还是想删除它们——我希望端口的 SELinux 可用性与端口的实际可用性相匹配,只是为了保持一致性。

如何获取semanage port -d策略中定义的端口?(在我的例子中,ssh。)

daw*_*wud 3

您的选择是构建您自己的 SSH 策略模块,删除标记端口的部分。

由于您现在可以加载指定优先级的策略模块,因此您的自定义模块将具有更高的优先级。检查手册页-X,--priority=PRIORITY中的标志semodule以获取详细信息。

根据记录,我同意 Michael Hampton 的观点,即无需从策略中删除该端口。它根本不会增加系统的安全性,因为有多种方法可以增加或放松 SSH 服务器的安全性(如 SELinux 相关的)管理,即:首先删除 OpenSSH 服务器,标记流量,或者,从另一个方向,将 SSH 服务器置于许可域中