Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

6.3. 기존 Linux 사용자 제한: semanage login

Linux 사용자가 SELinux unconfined_u 사용자(기본 동작)에 매핑되고 매핑된 SELinux 사용자를 변경하려는 경우 semanage login 명령을 사용합니다. 다음 예제에서는 newuser 라는 새 Linux 사용자를 생성한 다음 해당 Linux 사용자를 SELinux user_u 사용자에게 매핑합니다.

절차 6.2. SELinux 사용자에게 Linux 사용자 매핑

  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 사용자로 로그인합니다. 새 사용자의 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       *