Red Hat Training

A Red Hat training course is available for RHEL 8

6.9. MLS でのセキュアな端末の定義

SELinux ポリシーは、ユーザーが接続している端末のタイプをチェックし、特定の SELinux アプリケーション (newrole など) の実行を安全な端末からのみ許可します。セキュアでない端末からこれを試みると、次のエラーが発生します。Error: you are not allowed to change levels on a non secure terminal;

/etc/selinux/mls/contexts/securetty_types ファイルは、MLS (Multi-Level Security) ポリシーのセキュアな端末を定義します。

ファイルのデフォルトコンテンツ:

console_device_t
sysadm_tty_device_t
user_tty_device_t
staff_tty_device_t
auditadm_tty_device_t
secureadm_tty_device_t
警告

端末タイプをセキュアな端末一覧に追加すると、システムがセキュリティーリスクにさらされる可能性があります。

前提条件

  • SELinux ポリシーが mls に設定されている。
  • すでにセキュアな端末から接続しているか、SELinux が Permissive モードである。
  • セキュリティー管理者権限が割り当てられている。以下のいずれかに割り当てます。

    • secadm_r ロール。
    • sysadm_secadm モジュールが有効になっている場合は、sysadm_r ロール。sysadm_secadm モジュールはデフォルトで有効になっています。
  • policycoreutils-python-utils パッケージがインストールされている。

手順

  1. 現在の端末タイプを確認します。

    # ls -Z `tty`
    root:object_r:user_devpts_t:s0 /dev/pts/0

    この出力例では、user_devpts_t が現在の端末タイプです。

  2. /etc/selinux/mls/contexts/securetty_types ファイルの新しい行に、関連する SELinux タイプを追加します。
  3. オプション: SELinux を強制モードに切り替えます。

    # setenforce 1

検証

  • /etc/selinux/mls/contexts/securetty_types ファイルに追加した、以前はセキュアでなかった端末からログインします。

関連情報

  • securetty_types (5) man ページ