7.4. MCS でのユーザーへのカテゴリーの割り当て
Linux ユーザーにカテゴリーを割り当てることで、ユーザー認証を定義できます。カテゴリーが割り当てられているユーザーは、ユーザーのカテゴリーのサブセットがあるファイルにアクセスして修正できます。また、ユーザーは自分が所有するファイルを、割り当てられたカテゴリーに割り当てることもできます。
Linux ユーザーは、関連する SELinux ユーザーに定義されたセキュリティー範囲外のカテゴリーに割り当てることはできません。
カテゴリーアクセスは、ログイン時に割り当てられます。そのため、ユーザーは再度ログインするまで、新しく割り当てられたカテゴリーにアクセスできません。同様に、カテゴリーへのユーザーのアクセスを取り消した場合は、ユーザーが再度ログインしないと有効になりません。
前提条件
-
SELinux モードが
Enforcing
に設定されている。 -
SELinux のポリシーは
targeted
またはmls
に設定されている。 -
policycoreutils-python-utils
パッケージがインストールされている。 Linux ユーザーが SELinux で制限されたユーザーに割り当てられている。
-
特権のないユーザーは、
user_u
に割り当てられます。 -
特権ユーザーは、
staff_u
に割り当てられます。
-
特権のないユーザーは、
手順
SELinux ユーザーのセキュリティー範囲を定義します。
# semanage user -m -rs0:c0,c1-s0:c0.c9 <user_u>
setrans.conf
ファイルで定義されているように、c0
からc1023
までのカテゴリー番号またはカテゴリーラベルを使用します。詳細は、MCS でのカテゴリーラベルの定義 を参照してください。Linux ユーザーに MCS カテゴリーを割り当てます。指定できるのは、関連する SELinux ユーザーに定義された範囲内でのみです。
# semanage login -m -rs0:c1 <Linux.user1>
注記chcat
コマンドを使用して、Linux ユーザーにカテゴリーを追加または削除できます。以下の例では、<category1>
を追加し、<Linux.user1>
および<Linux.user2>
から<category2>
を削除します。# chcat -l -- +<category1>,-<category2> <Linux.user1>,<Linux.user2>
-<category>
構文を使用する前に、コマンドラインで--
を指定する必要があります。指定しないと、chcat
コマンドは、カテゴリーの削除をコマンドオプションであると誤って解釈します。
検証
Linux ユーザーに割り当てられているカテゴリーのリストを表示します。
# chcat -L -l <Linux.user1>,<Linux.user2> <Linux.user1>: <category1>,<category2> <Linux.user2>: <category1>,<category2>
関連情報
-
システムの
chcat (8)
man ページ