サービスを提供するすべてのホストには、キータブファイル (「鍵テーブル」の短縮名) と呼ばれるローカルファイルが必要です。キータブには、「サービス鍵」と呼ばれる該当するサービスの主体が格納されます。サービス鍵サービス鍵は、KDC に対してサービス自身を認証するときに使用され、Kerberos とそのサービスだけが認識します。たとえば、Kerberos NFS サーバーを使用している場合は、そのサーバーに、nfs サービス主体のサービス鍵を含む keytab ファイルが必要です。
keytab ファイルにサービス鍵を追加するには、kadmin プロセスで ktadd コマンドを使用して、適切なサービス主体をホストの keytab ファイルに追加します。サービス主体を keytab ファイルに追加しているため、その主体がすでに Kerberos データベース内に存在する必要があります。Kerberos サービスを提供するアプリケーションサーバーの場合、keytab ファイルは、デフォルトでは /etc/krb5/krb5.keytab です。
キータブはユーザーのパスワードに似ています。ユーザーが自分のパスワードを保護する必要があるのと同様に、アプリケーションサーバーも自身の keytab ファイルを保護する必要があります。キータブファイルは常時ローカルディスクに格納し、root ユーザー以外は読み取れないようにしてください。また、キータブファイルは、セキュリティー保護されていないネットワークを介して送信しないでください。
特殊な状況では、ホストの keytab ファイルに root 主体を追加することが必要になる場合があります。Kerberos クライアント上のユーザーが、root と同等のアクセスを必要とする Kerberos NFS ファイルシステムをマウントできるようにする場合は、そのクライアントの root 主体をクライアントの keytab ファイルに追加する必要があります。そうしない場合は、root アクセスで Kerberos NFS ファイルシステムをマウントするたびに、ユーザーは kinit コマンドを root として使用して、クライアントの root 主体の資格を取得する必要があります。これは、オートマウンタを使用している場合でも同様です。
![]() | 注意 - root としての NFS サーバーのマウントはセキュリティーリスクになります。 |
ktutil コマンドを使用して keytab ファイルを管理することもできます。kadmin とは異なり、このコマンドは Kerberos データベースとは対話しないため、この対話型のコマンドを使用すると、Kerberos 管理権限を持っていなくてもローカルホストの keytab ファイルを管理できます。主体が keytab ファイルに追加されたら、ktutil を使用して keytab ファイル内の鍵リストを表示したり、サービスの認証を一時的に無効にしたりできます。