この手順では、kdc3 という名前のスレーブ KDC を構成します。次の構成パラメータを使用します。
レルム名 = EXAMPLE.COM
DNS ドメイン名 = example.com
マスター KDC = kdc1.example.com
スレーブ KDC = kdc2.example.com と kdc3.example.com
admin 主体 = kws/admin
オンラインヘルプ URL = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956
この URL は、「SEAM 管理ツール」の節を指すように調整してください (オンラインヘルプ URL を参照)。
スレーブ KDC を構成するための前提条件を完了します。
マスター KDC が構成済みである必要があります。スレーブ KDC をスワップ可能にする場合の手順については、マスター KDC とスレーブ KDC のスワップ を参照してください。
マスター KDC 上でスーパーユーザーになります。
マスター KDC 上で kadmin を起動します。
マスター KDC を構成するときに作成した admin 主体名を使用して、ログインする必要があります。
kdc1 # /usr/sbin/kadmin -p kws/admin Enter password: <kws/admin パスワードを入力する> kadmin: |
マスター KDC のデータベースにスレーブホスト主体が存在しない場合は、追加します。
スレーブが機能するには、ホスト主体が必要です。主体のインスタンスがホスト名のときは、/etc/resolv.conf ファイル内のドメイン名が大文字であるか小文字であるかにかかわらず、FQDN は小文字で入力する必要があります。
kadmin: addprinc -randkey host/kdc3.example.com Principal "host/kdc3@EXAMPLE.COM" created. kadmin: |
(省略可能) マスター KDC 上で、スレーブ KDC の root 主体を作成します。
この主体が必要なのは、認証済みのファイルシステムをスレーブが NFS マウントする場合だけです。主体のインスタンスがホスト名のときは、/etc/resolv.conf ファイル内のドメイン名が大文字であるか小文字であるかに関係なく、FQDN は小文字で入力する必要があります。
kadmin: addprinc root/kdc3.example.com Enter password for principal root/kdc3.example.com@EXAMPLE.COM: <パスワードを入力する> Re-enter password for principal root/kdc3.example.com@EXAMPLE.COM: <パスワードを再度入力する> Principal "root/kdc3.example.com@EXAMPLE.COM" created. kadmin: |
kadmin を終了します。
kadmin: quit |
マスター KDC 上で、Kerberos 構成ファイル (krb5.conf) を編集します。
各スレーブのエントリを追加する必要があります。Kerberos 構成ファイルの詳細は、krb5.conf(4) のマニュアルページを参照してください。
kdc1 # cat /etc/krb5/krb5.conf [libdefaults] default_realm = EXAMPLE.COM [realms] EXAMPLE.COM = { kdc = kdc1.example.com kdc = kdc2.example.com kdc = kdc3.example.com admin_server = kdc1.example.com } [domain_realm] .example.com = EXAMPLE.COM # #ドメイン名とレルム名が同じ場合 # このエントリは不要 # [logging] default = FILE:/var/krb5/kdc.log kdc = FILE:/var/krb5/kdc.log [appdefaults] gkadmin = { help_url = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956 |
マスター KDC 上で、各スレーブ KDC のエントリをデータベース伝播構成ファイル (kpropd.acl) に追加します。
データベース伝播構成ファイルの詳細は、kprop(1M) のマニュアルページを参照してください。
kdc1 # cat /etc/krb5/kpropd.acl host/kdc1.example.com@EXAMPLE.COM host/kdc2.example.com@EXAMPLE.COM host/kdc3.example.com@EXAMPLE.COM |
すべてのスレーブ KDC 上で、マスター KDC サーバーから KDC 管理ファイルをコピーします。
この手順は、マスター KDC サーバーが、各 KDC サーバーに必要な情報を更新したため、すべてのスレーブ KDC 上で実行する必要があります。ftp などの転送メカニズムを使用して、マスター KDC から次のファイルのコピーを取得できます。
/etc/krb5/krb5.conf
/etc/krb5/kdc.conf
/etc/krb5/kpropd.acl
新しいスレーブ上で kadmin を使用して、スレーブのホスト主体をスレーブのキータブファイルに追加します。
マスター KDC を構成するときに作成したadmin 主体名を使用してログインする必要があります。ログインすると、kprop などの Kerberos アプリケーションが機能します。主体のインスタンスがホスト名のときは、/etc/resolv.conf ファイル内のドメイン名が大文字であるか小文字であるかにかかわらず、FQDN は小文字で入力する必要があります。
kdc3 # /usr/sbin/kadmin -p kws/admin Enter password: <kws/admin パスワードを入力する> kadmin: ktadd host/kdc3.example.com kadmin: Entry for principal host/kdc3.example.com with kvno 3, encryption type DES-CBC-CRC added to keytab WRFILE:/etc/krb5/krb5.keytab kadmin: quit |
マスター KDC 上で、スレーブ KDC 名を cron ジョブに追加します。このジョブは、crontab -e を実行して、自動的にバックアップを実行します。
kprop_script 行の末尾に、各スレーブ KDC のサーバー名を追加します。
10 3 * * * /usr/lib/krb5/kprop_script kdc2.example.com kdc3.example.com |
バックアップの時刻を変更することもできます。この構成では、バックアップ処理を毎日午前 3 時 10 分に開始します。
マスター KDC 上のデータベースを、 kprop_script を使用してバックアップし、伝播します。
データベースのバックアップコピーがすでに作成されている場合は、ここでバックアップを作成する必要はありません。詳細は、Kerberos データベースをスレーブ KDC に手動で伝播する方法 を参照してください。
kdc1 # /usr/lib/krb5/kprop_script kdc3.example.com Database propagation to kdc3.example.com: SUCCEEDED |
新しいスレーブ上で、kdb5_util を使用して stash ファイルを作成します。
kdc3 # /usr/sbin/kdb5_util stash kdb5_util: Cannot find/read stored master key while reading master key kdb5_util: Warning: proceeding without master key Enter KDC database master key: <鍵を入力する> |
(省略可能) 新しいスレーブ KDC 上で、NTP などのクロック同期メカニズムを使用して、マスター KDC のクロックと同期化します。
NTP のインストールと使用は、必須ではありません。ただし、認証を正常終了させるには、krb5.conf ファイルの libdefaults セクションに定義されているデフォルト時間内に、すべてのクロックを調整する必要があります。NTP については、KDC と SEAM クライアントのクロックの同期化を参照してください。
新しいスレーブ上で、KDC デーモン (krb5kdc) を起動します。
kdc3 # /etc/init.d/kdc start |