Kerberos 認証システムに参加するすべてのホストは、指定した最大時間内に収まるように内部クロックを同期化する必要があります (「クロックスキュー」)。この必要条件は、Kerberos セキュリティーの検査の 1 つです。参加しているホスト間のクロックスキューが超過すると、クライアントの要求が拒否されます。
クロックスキューはまた、アプリケーションサーバーが、再実行されたリクエストを認識して拒否するために Kerberos プロトコルメッセージを追跡する必要がある時間の長さも決定します。そのため、クロックスキュー値が長いほど、アプリケーションサーバーが収集する情報も多くなります。
最大クロックスキューのデフォルト値は、300 秒 (5 分) です。このデフォルトは、krb5.conf ファイルの libdefaults セクションで変更できます。
KDC と Kerberos クライアントの間で同期されたクロックを維持することが重要であるため、Network Time Protocol (NTP) ソフトウェアを使用してクロックを同期してください。Oracle Solaris ソフトウェアにはデラウェア大学の NTP パブリックドメインソフトウェアが含まれています。 ドキュメントは、NTP ドキュメントから入手できます。
NTP を使用すると、正確な時間とネットワーククロック同期をネットワーク環境で管理できます。NTP は、クライアントサーバープロトコルです。1 つのシステムがマスタークロック (NTP サーバー) になります。その他のシステムはすべて、自身のクロックをマスタークロックと同期する NTP クライアントです。クロックを同期化するために、NTP は xntpd デーモンを使用して、インターネット標準時サーバーに合わせて UNIX システムの時間を設定および管理します。次の図は、このクライアントサーバー NTP 実装の例を示しています。
図 4-1 NTP を使用したクロック同期
KDC および Kerberos クライアントがクロックを同期化するには、次の手順を実行します。
ネットワークに NTP サーバーを設定します。NTP サーバーは、マスター KDC 以外であればどのシステムでも設定できます。
ネットワークの KDC と Kerberos クライアントを構成するときに、それらを NTP サーバーの NTP クライアントとして設定します。マスター KDC に戻り、それを NTP クライアントとして構成します。
すべてのシステム上で NTP サービスを有効にします。