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
パッケージがインストールされている。
手順
現在の端末タイプを確認します。
# ls -Z `tty` root:object_r:user_devpts_t:s0 /dev/pts/0
この出力例では、
user_devpts_t
が現在の端末タイプです。-
/etc/selinux/mls/contexts/securetty_types
ファイルの新しい行に、関連する SELinux タイプを追加します。 オプション: SELinux を強制モードに切り替えます。
# setenforce 1
検証
-
/etc/selinux/mls/contexts/securetty_types
ファイルに追加した、以前はセキュアでなかった端末からログインします。
関連情報
-
システムの
securetty_types(5)
の man ページ