この手順では、すべてのシステムイメージ上にデフォルト以外の PAM ポリシーを構成します。すべてのファイルがコピーされたら、新しい PAM ポリシーまたは変更された PAM ポリシーを個々のユーザーまたはすべてのユーザーに割り当てることができます。
始める前に
新しいポリシーを実装する PAM 構成ファイルが変更およびテストされています。
root 役割になる必要があります。詳細は、Oracle Solaris 11.3 でのユーザーとプロセスのセキュリティー保護 の 割り当てられている管理権利の使用を参照してください。
すべての新しい PAM モジュールと、新しい PAM 構成ファイルおよび変更された PAM 構成ファイルをすべてのシステムに追加する必要があります。
ディレクトリの設定の例については、PAM モジュールを追加する方法のStep 1 を参照してください。
たとえば、/opt/local_pam/ssh-telnet-conf ファイルをすべてのシステムに追加します。
たとえば、変更された /etc/pam.conf ファイルと、すべての変更された /etc/pam.d/service-name-files をすべてのシステムにコピーします。
# pfedit /etc/security/policy.conf ... # PAM_POLICY= PAM_POLICY=/opt/local_pam/ssh-telnet-conf ...
たとえば、使用例 4のユーザーごとの PAM ポリシーの任意の権利プロファイルを割り当てます。
# pfedit /etc/security/policy.conf ... AUTHS_GRANTED= # PROFS_GRANTED=Basic Solaris User PROFS_GRANTED=PAM Per-User Policy of Any,Basic Solaris User ...
# usermod -K pam_policy="/opt/local_pam/ssh-telnet-conf" jill
この例では、ldap PAM ポリシーを使用します。
# profiles -p "PAM Per-User Policy of LDAP" \ 'set desc="Profile which sets pam_policy=ldap"; set pam_policy=ldap; exit;'
次に、この権利プロファイルをユーザーに割り当てます。
# usermod -P +"PAM Per-User Policy of LDAP" jill
管理者が、Kerberos レルムで telnet を使用することを許可するユーザーの数を制限したいとします。そのため、telnet サービスが有効になる前に、管理者はデフォルトの ktelnet 構成ファイルを変更し、そのデフォルトの ktelnet ファイルを pam_policy ディレクトリ内に配置します。
最初に、管理者は、ユーザーごとの ktelnet ファイルを構成します。
# cp /etc/pam.d/ktelnet /etc/security/pam_policy/ktelnet-conf # pfedit /etc/security/pam_policy/ktelnet-conf ... # Kerberized telnet service # ktelnet auth required pam_unix_cred.so.1 ktelnet auth required pam_krb5.so.1
管理者は、そのファイルを 444 のアクセス権で保護します。
# chmod 444 /etc/security/pam_policy/ktelnet-conf # ls -l /etc/security/pam_policy/ktelnet-conf -r--r--r-- 1 root root 228 Nov 27 15:04 ktelnet-conf
次に、管理者は、pam.d ディレクトリ内の ktelnet ファイルを変更します。
最初のエントリにより、ユーザーごとの割り当てが有効になります。
2 番目のエントリは、管理者によって pam_policy=ktelnet が割り当てられていないかぎり、ktelnet の使用を拒否します。
# cp /etc/pam.d/ktelnet /etc/pam.d/ktelnet.orig # pfedit /etc/pam.d/ktelnet ... # Denied Kerberized telnet service # auth definitive pam_user_policy.so.1 auth required pam_deny.so.1
管理者は、特権ユーザー、通常のユーザー、および root 役割を使用して構成をテストします。構成が合格すると、管理者は telnet サービスを有効にして、Kerberos 管理者にユーザーごとのポリシーを割り当てます。
# svcadm enable telnet # rolemod -S ldap -K pam_policy=ktelnet-conf kerbadmin
管理者は、変更されたファイルをすべての Kerberos サーバーにコピーし、それらのサーバー上の telnet を有効にします。