3.2. SELinux ユーザー機能

以下の表は、Red Hat Enterprise Linux における Linux ユーザーの基本的な制限のあるドメインの例です。

表3.1 SELinux ユーザー機能

ユーザーロールドメインX Window Systemsu または sudoホームディレクトリーおよび /tmp (デフォルト) での実行ネットワーク

sysadm_u

sysadm_r

sysadm_t

はい

su および sudo

はい

はい

staff_u

staff_r

staff_t

はい

sudo のみ

はい

はい

user_u

user_r

user_t

はい

いいえ

はい

はい

guest_u

guest_r

guest_t

いいえ

いいえ

はい

いいえ

xguest_u

xguest_r

xguest_t

はい

いいえ

はい

Firefox のみ

  • user_t ドメイン、guest_t ドメイン、および xguest_t ドメイン内の Linux ユーザーは、SELinux ポリシーが許可した場合 (passwd など)、設定したユーザー ID (setuid) アプリケーションのみを実行できます。これらのユーザーは、su および sudo setuid アプリケーションを実行できないため、これらのアプリケーションを使用して root にすることはできません。
  • sysadm_t ドメイン、staff_t ドメイン、user_t ドメイン、および xguest_t ドメインの Linux ユーザーは、X Window System およびターミナルを使用してログインできます。
  • デフォルトでは、staff_t ドメイン、user_t ドメイン、guest_t ドメイン、および xguest_t ドメインの Linux ユーザーは、ホームディレクトリーと /tmp でアプリケーションを実行できます。

    ユーザーのパーミッションを継承するアプリケーションの実行を防ぐには、guest_exec_content および xguest_exec_content ブール値を off に設定します。これにより、不具合のあるアプリケーションや悪意のあるアプリケーションがユーザーのファイルを変更できなくなります。

  • xguest_t ドメインの Linux ユーザーにアクセスできる唯一のネットワークアクセスは、Web ページに接続する Firefox です。
  • sysadm_u ユーザーは、SSH を使用して直接ログインできません。sysadm_u の SSH ログインを有効にするには、ssh_sysadm_login ブール値を on に設定します。

    # setsebool -P ssh_sysadm_login on

system_u は、システムプロセスおよびオブジェクトに対する特別なユーザー ID であることに注意してください。Linux ユーザーに関連付けることはできません。また、unconfined_u および root は制限のないユーザーです。このような理由により、SELinux ユーザー機能の以前の表には含まれていません。

上記の SELinux ユーザーとともに、semanage user コマンドを使用して、これらのユーザーにマップできる特別なロールがあります。これらのロールは、SELinux でユーザーに許可するものを決定します。

  • webadm_r は、Apache HTTP Server に関連する SELinux タイプの処理のみが可能です。
  • dm_r は、MariaDB データベースおよび PostgreSQL データベース管理システムに関連する SELinux タイプの処理のみが可能です。
  • logadm_r は、syslog および auditlog プロセスに関連する SELinux タイプの処理のみが可能です。
  • secadm_r は SELinux の処理のみが可能です。
  • auditadm_r は、Audit サブシステムに関連するプロセスのみを管理できます。

利用可能なロールの一覧を表示するには、seinfo -r コマンドを実行します。

seinfo -r
Roles: 14
   auditadm_r
   dbadm_r
   guest_r
   logadm_r
   nx_server_r
   object_r
   secadm_r
   staff_r
   sysadm_r
   system_r
   unconfined_r
   user_r
   webadm_r
   xguest_r

seinfo コマンドは、setools-console パッケージにより提供されることに注意してください。デフォルトではインストールされません。

関連情報

  • 詳細は、man ページの seinfo(1)semanage-login(8)、および xguest_selinux(8) を参照してください。

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