3.3. セカンダリ KDC
ネットワーク上にキー配布センター (KDC) を XNUMX つ設置したら、プライマリ KDC が使用できなくなった場合に備えてセカンダリ KDC を用意することをお勧めします。 また、異なるネットワーク (NAT を使用するルーターによって分離されている可能性がある) に Kerberos クライアントがある場合は、それらのネットワークのそれぞれにセカンダリ KDC を配置することが賢明です。
1. まず、パッケージをインストールし、Kerberos サーバー名と管理サーバー名を求められたら、プライマリ KDC の名前を入力します。
sudo apt install krb5-kdc krb5-admin-server
2. パッケージをインストールしたら、セカンダリ KDC のホスト プリンシパルを作成します。 端末プロンプトで次のように入力します。
kadmin -q "addprinc -randkey host/kdc02.example.com"
kadmin コマンドを発行すると、ユーザー名/の入力を求められます。 [メール保護] プリンシパルパスワード。
3.抽出します キータブ ファイル:
kadmin -q "ktadd -norandkey -k keytab.kdc02 host/kdc02.example.com"
4. これで、 keytab.kdc02 現在のディレクトリで、ファイルを次の場所に移動します /etc/krb5.keytab:
sudo mv keytab.kdc02 /etc/krb5.keytab
へのパスの場合、 keytab.kdc02 ファイルが異なるので、それに応じて調整してください。
また、klist ユーティリティを使用して、Keytab ファイル内のプリンシパルをリストすることもできます。これはトラブルシューティングに役立ちます。
sudo klist -k /etc/krb5.keytab
-k オプションは、ファイルが keytab ファイルであることを示します。
5. 次に、 kpropd.acl レルムのすべての KDC をリストするファイルを各 KDC に作成します。 たとえば、プライマリ KDC とセカンダリ KDC の両方で、 /etc/krb5kdc/kpropd.acl:
6. 上に空のデータベースを作成します。 セカンダリ KDC:
sudo kdb5_util -s 作成
7. ここで、kpropd デーモンを開始します。これは、kprop ユーティリティからの接続をリッスンします。 kprop はダンプ ファイルの転送に使用されます。
sudo kpropd -S
8. の端末から プライマリ KDC、プリンシパル データベースのダンプ ファイルを作成します。
sudo kdb5_util dump /var/lib/krb5kdc/dump
9. プライマリ KDC を抽出する キータブ ファイルを作成してコピーします /etc/krb5.keytab:
kadmin -q "ktadd -k keytab.kdc01 host/kdc01.example.com" sudo mv keytab.kdc01 /etc/krb5.keytab
あることを確認してください host の kdc01.example.com Keytab を抽出する前に。
10. kprop ユーティリティを使用して、データベースをセカンダリ KDC にプッシュします。
sudo kprop -r EXAMPLE.COM -f /var/lib/krb5kdc/dump kdc02.example.com
あるはずです 成功 伝播が機能した場合のメッセージ。 エラーメッセージがある場合は確認してください / var / log / syslog 詳細については、セカンダリ KDC を参照してください。
cron ジョブを作成して、セカンダリ KDC 上のデータベースを定期的に更新することもできます。 たとえば、次のコードは XNUMX 時間ごとにデータベースをプッシュします (このドキュメントの形式に合わせて長い行が分割されていることに注意してください)。
# mh dom mon dow コマンド
0 * * * * /usr/sbin/kdb5_util dump /var/lib/krb5kdc/dump &&
/usr/sbin/kprop -r EXAMPLE.COM -f /var/lib/krb5kdc/dump kdc02.example.com
11. 元に戻ります セカンダリ KDC、 隠れる Kerberos マスター キーを保持するファイル:
sudo kdb5_util スタッシュ
12. 最後に、セカンダリ KDC で krb5-kdc デーモンを起動します。
sudo systemctl start krb5-kdc.service
当学校区の セカンダリ KDC これでレルムのチケットを発行できるようになりました。 これをテストするには、プライマリ KDC で krb5-kdc デーモンを停止し、kinit を使用してチケットを要求します。 すべてがうまくいけば、そうすべきです
セカンダリ KDC からチケットを受け取ります。 それ以外の場合はチェックしてください / var / log / syslog /var/log/auth.log セカンダリ KDC 内。