ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris の管理: セキュリティーサービス Oracle Solaris 11 Information Library (日本語) |
パート II システム、ファイル、およびデバイスのセキュリティー
10. Oracle Solaris のセキュリティー属性 (参照)
LDAP データサーバーを使用するように KDC を構成する方法
Kerberos ネットワークアプリケーションサーバーの構成
Kerberos ネットワークアプリケーションサーバーを構成する方法
FTP の実行時に Generic Security Service を Kerberos とともに使用する方法
複数の Kerberos セキュリティーモードで安全な NFS 環境を設定する方法
Kerberos クライアントのインストールプロファイルの作成方法
Active Directory サーバー用に Kerberos クライアントを構成する方法
Kerberos によって保護された NFS ファイルシステムに root ユーザーとしてアクセスする方法
Kerberos レルム内のユーザーを自動的に移行するように構成する方法
KDC と Kerberos クライアントのクロックの同期化
サーバーのアップグレード後に Kerberos データベースを変換する方法
Kerberos データベースをスレーブ KDC に手動で伝播する方法
Kerberos 主体属性を Kerberos 以外のオブジェクトクラス型に結び付ける方法
辞書ファイルを使用してパスワードセキュリティーを強化する方法
22. Kerberos エラーメッセージとトラブルシューティング
マスター KDC とスレーブ KDC を入れ替えるときは、このセクションで説明する手順を行います。マスター KDC とスレーブ KDC の入れ替えは、マスター KDC に何らかの理由で障害が発生した場合、またはマスター KDC を再インストールする必要がある場合 (新しいハードウェアをインストールした場合など) にだけ行ってください。
この手順は、マスター KDC に入れ替え可能なスレーブ KDC に対して実行します。この手順は、増分伝播を使用していることを想定しています。
KDC に対してホスト名を定義するときは、各システムの別名が DNS に登録されている必要があります。/etc/krb5/krb5.conf ファイルにホストを定義するときも、別名を使用します。
入れ替えするサーバーは、レルム内でスレーブ KDC として動作している必要があります。手順については、「スレーブ KDC を手動で構成する方法」を参照してください。
このスレーブ KDC からマスター KDC コマンドが実行されることを防ぐために、kprop、kadmind、および kadmin.local コマンドを別の場所に移動します。
kdc4 # mv /usr/lib/krb5/kprop /usr/lib/krb5/kprop.save kdc4 # mv /usr/lib/krb5/kadmind /usr/lib/krb5/kadmind.save kdc4 # mv /usr/sbin/kadmin.local /usr/sbin/kadmin.local.save
この手順では、旧マスター KDC サーバー名は、kdc1 です。新しいマスター KDC となるスレーブ KDC の名前は、kdc4 です。この手順は、増分伝播を使用していることを想定しています。
始める前に
この手順を実行するには、スレーブ KDC が入れ替え可能なスレーブとして設定されている必要があります。詳細は、「入れ替え可能なスレーブ KDC を構成する方法」を参照してください。
kdc4 # /usr/sbin/kadmin -p kws/admin Enter password: <Type kws/admin password> kadmin:
次の例では、addprinc が 2 行で表示されていますが、1 行に入力する必要があります。
kadmin: addprinc -randkey -allow_tgs_req +password_changing_service -clearpolicy \ changepw/kdc4.example.com Principal "changepw/kdc4.example.com@ENG.SUN.COM" created. kadmin: addprinc -randkey -allow_tgs_req -clearpolicy kadmin/kdc4.example.com Principal "kadmin/kdc4.example.com@EXAMPLE.COM" created. kadmin:
kadmin: quit
次の手順は、スレーブサーバー上で強制的に KDC を完全に更新します。
kdc4 # svcadm disable network/security/krb5kdc kdc4 # rm /var/krb5/principal.ulog
kdc4 # /usr/sbin/kproplog -h
kdc4 # svcadm enable -r network/security/krb5kdc
この手順は、新しいマスター KDC サーバーの更新ログを再度初期化します。
kdc4 # svcadm disable network/security/krb5kdc kdc4 # rm /var/krb5/principal.ulog
kadmind プロセスを終了するときは、旧 KDC データベースに対する変更は行わないでください。
kdc1 # svcadm disable network/security/kadmin kdc1 # svcadm disable network/security/krb5kdc
/etc/krb5/kdc.conf 内の sunw_dbprop_master_ulogsize エントリをコメントにして、sunw_dbprop_slave_poll を定義するエントリを追加します。このエントリにより、ポーリング時間が 2 分に設定されます。
kdc1 # cat /etc/krb5/kdc.conf [kdcdefaults] kdc_ports = 88,750 [realms] EXAMPLE.COM= { profile = /etc/krb5/krb5.conf database_name = /var/krb5/principal acl_file = /etc/krb5/kadm5.acl kadmind_port = 749 max_life = 8h 0m 0s max_renewable_life = 7d 0h 0m 0s sunw_dbprop_enable = true # sunw_dbprop_master_ulogsize = 1000 sunw_dbprop_slave_poll = 2m }
マスター KDC コマンドが実行されることを防ぐために、kprop、kadmind、および kadmin.local コマンドを別の場所に移動します。
kdc1 # mv /usr/lib/krb5/kprop /usr/lib/krb5/kprop.save kdc1 # mv /usr/lib/krb5/kadmind /usr/lib/krb5/kadmind.save kdc1 # mv /usr/sbin/kadmin.local /usr/sbin/kadmin.local.save kdc1 # mv /etc/krb5/kadm5.acl /etc/krb5/kadm5.acl.save
サーバーを変更するために、example.com ゾーンファイルを編集して masterkdc のエントリを変更します。
masterkdc IN CNAME kdc4
次のコマンドを実行して、新しい別名情報を再ロードします。
# svcadm refresh network/dns/server
kdc4 # mv /usr/lib/krb5/kprop.save /usr/lib/krb5/kprop kdc4 # mv /usr/lib/krb5/kadmind.save /usr/lib/krb5/kadmind kdc4 # mv /usr/sbin/kadmin.local.save /usr/sbin/kadmin.local kdc4 # mv /etc/krb5/kpropd.acl /etc/krb5/kpropd.acl.save
作成された /etc/krb5/kadm5.acl ファイルには、KDC を管理できる主体名がすべて含まれている必要があります。このファイルには、増分伝播を要求するすべてのスレーブもリストされている必要があります。詳細は、kadm5.acl(4) のマニュアルページを参照してください。
kdc4 # cat /etc/krb5/kadm5.acl kws/admin@EXAMPLE.COM * kiprop/kdc1.example.com@EXAMPLE.COM p
sunw_dbprop_slave_poll エントリをコメントにして、sunw_dbprop_master_ulogsize を定義するエントリを追加します。エントリは、ログサイズを 1000 エントリに設定します。
kdc1 # cat /etc/krb5/kdc.conf [kdcdefaults] kdc_ports = 88,750 [realms] EXAMPLE.COM= { profile = /etc/krb5/krb5.conf database_name = /var/krb5/principal acl_file = /etc/krb5/kadm5.acl kadmind_port = 749 max_life = 8h 0m 0s max_renewable_life = 7d 0h 0m 0s sunw_dbprop_enable = true # sunw_dbprop_slave_poll = 2m sunw_dbprop_master_ulogsize = 1000 }
kdc4 # svcadm enable -r network/security/krb5kdc kdc4 # svcadm enable -r network/security/kadmin
krb5.keytab ファイルに kiprop 主体を追加すると、増分伝播サービスに対してkpropd デーモンが自身を認証できるようになります。
kdc1 # /usr/sbin/kadmin -p kws/admin Authenticating as pricipal kws/admin@EXAMPLE.COM with password. Enter password: <Type kws/admin password> kadmin: ktadd kiprop/kdc1.example.com Entry for principal kiprop/kdc1.example.com with kvno 3, encryption type AES-256 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal kiprop/kdc1.example.com with kvno 3, encryption type AES-128 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal kiprop/kdc1.example.com with kvno 3, encryption type Triple DES cbc mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal kiprop/kdc1.example.com with kvno 3, encryption type ArcFour with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal kiprop/kdc1.example.com with kvno 3, encryption type DES cbc mode with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab. kadmin: quit
kdc1 # cat /etc/krb5/kpropd.acl host/kdc1.example.com@EXAMPLE.COM host/kdc2.example.com@EXAMPLE.COM host/kdc3.example.com@EXAMPLE.COM host/kdc4.example.com@EXAMPLE.COM
kdc1 # svcadm enable -r network/security/krb5_prop kdc1 # svcadm enable -r network/security/krb5kdc