6.3. 既存 Linux ユーザーの制限: semanage login

Linux ユーザーが SELinux unconfined_u ユーザーにマッピングされ (デフォルトの動作)、マッピング先の SELinux ユーザーを変更したい場合は、semanage login コマンドを使います。以下の例では、newuser という名前の新規 Linux ユーザーが作成され、SELinux user_u ユーザーにマッピングされます。

手順6.2 Linux ユーザーを SELinux ユーザーにマッピングする

  1. root 権限で、ユーザー名が newuser の新規 Linux ユーザーを作成します。このユーザーはデフォルトマッピングを使用しているため、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 newuseruser_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       *

このページには機械翻訳が使用されている場合があります (詳細はこちら)。