Menu Close

Red Hat Training

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

6.3. 既存の Linux ユーザーの制限: semanage ログイン

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 ユーザーとしてログインします。次のコマンドを実行すると、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       *