6.9. 在 MLS 中定义安全终端


SELinux 策略会检查用户从中连接的终端类型,并允许运行某些 SELinux 应用程序,例如 newrole,只从安全终端检查。从非安全终端尝试此操作会产生错误:Error: you are not allowed to change levels on a non secure terminal;

/etc/selinux/mls/contexts/securetty_types 文件定义了 MLS 策略的安全终端。

该文件的默认内容:

console_device_t
sysadm_tty_device_t
user_tty_device_t
staff_tty_device_t
auditadm_tty_device_t
secureadm_tty_device_t
警告

将终端类型添加到安全终端列表中,可使您的系统暴露于安全风险。

前提条件

  • SELinux 策略设置为 mls
  • 您从安全的终端进行连接,或者 SELinux 处于 permissive 模式。
  • 您有安全管理权限,这意味着您要分配给其中之一:

    • secadm_r 角色。
    • 如果启用了 sysadm_secadm 模块,进入 sysadm_r 角色。sysadm_secadm 模块默认启用。
  • 已安装 policycoreutils-python-utils 软件包。

流程

  1. 确定当前的终端类型:

    # ls -Z `tty`
    root:object_r:user_devpts_t:s0 /dev/pts/0

    在本例中,user_devpts_t 是当前的终端类型。

  2. /etc/selinux/mls/contexts/securetty_types 文件中的新行中添加相关的 SELinux 类型。
  3. 可选:将 SELinux 切换到 enforcing 模式:

    # setenforce 1

验证

  • 从之前不安全的终端中登录到 /etc/selinux/mls/contexts/securetty_types 文件。

其他资源

  • 您系统上的 securetty_types (5) 手册页
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.