6.3. 限制现有 Linux 用户:semanage login


如果 Linux 用户映射到 SELinux unconfined_u 用户(默认行为),并且您要更改它们映射到的 SELinux 用户,请使用 semanage login 命令。以下示例创建一个名为 newuser 的新 Linux 用户,然后将 Linux 用户映射到 SELinux user_u 用户:

过程 6.2. 将 Linux 用户映射到 SELinux 用户

  1. 以 root 用户身份,创建一个新的 Linux 用户(newuser)。因为此用户使用默认的映射,所以它不会出现在 semanage login -l 输出中:
    ~]# useradd newuser
    ~]# semanage login -l
    
    Login Name           SELinux User         MLS/MCS Range        Service
    
    __default__          unconfined_u         s0-s0:c0.c1023       *
    root                 unconfined_u         s0-s0:c0.c1023       *
    system_u             system_u             s0-s0:c0.c1023       *
    
  2. 要将 Linux newuser 用户映射到 SELinux user_u 用户,请以 root 用户身份输入以下命令:
    ~]# semanage login -a -s user_u newuser
    a 选项 添加新记录,而 -s 选项指定要将 Linux 用户映射到的 SELinux 用户。最后的参数 newuser 是您要映射到指定 SELinux 用户的 Linux 用户。
  3. 要查看 Linux newuser 用户和 user_u 之间的映射,请再次使用 semanage 工具:
    ~]# semanage login -l
    
    Login Name           SELinux User         MLS/MCS Range        Service
    
    __default__          unconfined_u         s0-s0:c0.c1023       *
    newuser              user_u               s0                   *
    root                 unconfined_u         s0-s0:c0.c1023       *
    system_u             system_u             s0-s0:c0.c1023       *
    
  4. 以 root 用户身份,为 Linux newuser 用户分配密码:
    ~]# passwd newuser
    Changing password for user newuser.
    New password: Enter a password
    Retype new password: Enter the same password again
    passwd: all authentication tokens updated successfully.
    
  5. 从当前会话中注销,然后以 Linux newuser 用户身份登录。输入以下命令查看 newuser 的 SELinux 上下文:
    ~]$ id -Z
    user_u:user_r:user_t:s0
  6. 从 Linux newuser 的会话中注销,然后使用您的帐户重新登录。如果您不希望 Linux newuser 用户,请以 root 用户及其主目录来移除它:
    ~]# userdel -r newuser
    以 root 用户身份,删除 Linux newuser 用户和 user_u 之间的映射:
    ~]# semanage login -d newuser
    ~]# semanage login -l
    
    Login Name           SELinux User         MLS/MCS Range        Service
    
    __default__          unconfined_u         s0-s0:c0.c1023       *
    root                 unconfined_u         s0-s0:c0.c1023       *
    system_u             system_u             s0-s0:c0.c1023       *
    
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.