この手順では、ある Oracle Solaris リモートシステム上でホストベースの認証を有効にしたあと、そのシステムに Trusted Extensions 機能を追加します。リモートシステムは Secure Shell サーバーです。
始める前に
リモートシステムに Oracle Solaris がインストールされており、そのシステムにアクセスできます。root 役割になっている必要があります。
手順については、Oracle Solaris 11.2 での Secure Shell アクセスの管理 のホストに基づく認証を Secure Shell に設定する方法を参照してください。
この手順が完了すると、root 役割になれるユーザーアカウントが両方のシステム上に存在しています。これらのアカウントには同じ UID、GID、および役割割り当てが割り当てられています。また、生成された公開/非公開鍵ペアと共有公開鍵も存在しています。
# pfedit /etc/ssh/sshd_config ## Permit remote login by root PermitRootLogin yes
あとの手順で、root ログインを特定のシステムとユーザーに制限します。
# svcadm restart ssh
# cd # pfedit .shosts client-host username
この .shosts ファイルは、公開/非公開鍵が共有されている状態で、client-host システム上の username がサーバー上の root 役割になれるようにします。
# cp /etc/pam.d/other /etc/pam.d/other.orig
# pfedit /etc/pam.d/other ... # Default definition for Account management # Used when service name is not explicitly mentioned for account management # ... #account requisite pam_roles.so.1 # Enable remote role assumption account requisite pam_roles.so.1 allow_remote ...
このポリシーは、client-host システム上の username がサーバー上で役割になれるようにします。
# pfedit /etc/pam.d/other # Default definition for Account management # Used when service name is not explicitly mentioned for account management # ... #account requisite pam_roles.so.1 # Enable remote role assumption account requisite pam_roles.so.1 allow_remote # account required pam_unix_account.so.1 #account required pam_tsol_account.so.1 # Enable unlabeled access to TX system account required pam_tsol_account.so.1 allow_unlabeled
% ssh -l root remote-system
# svcadm enable -s labeld # /usr/sbin/reboot
この例では、管理者は Trusted Extensions システムを使用してリモート Trusted Extensions ホストを構成します。管理者はそのために、各システム上で tncfg コマンドを使用して、ピアシステムのホストタイプを定義します。
remote-system # tncfg -t cipso add host=192.168.1.12 Client-host
client-host # tncfg -t cipso add host=192.168.1.22 Remote system
管理者がラベルなしシステムからリモート Trusted Extensions ホストを構成できるようにするため、管理者はリモートホストの pam.d/other ファイル内に allow_unlabeled オプションを残します。