Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

29.2. Kerberos プリンシパルのキー再生成

Kerberos プリンシパルのキー再生成 により、より大きなキーバージョン番号 (KVNO) を持つ新しいキータブエントリーが、プリンシパルのキータブに追加されます。元のエントリーはキータブに残りますが、チケットを発行するのに使用されません。
  1. 要求された期間に発行された全キータブを検索します。たとえば、次のコマンドは ldapsearch ユーティリティーを使用して、Greenwich Mean Time(GMT) で 2016 年 1 月 1 日の 00:00 AM から 2016 年 12 月 31 日の 11:59 PM の間に作成されたホストとサービスプリンシパルをすべて表示します。
    # ldapsearch -x -b "cn=computers,cn=accounts,dc=example,dc=com" "(&(krblastpwdchange>=20160101000000)(krblastpwdchange<=20161231235959))" dn krbprincipalname
    # ldapsearch -x -b "cn=services,cn=accounts,dc=example,dc=com" "(&(krblastpwdchange>=20160101000000)(krblastpwdchange<=20161231235959))" dn krbprincipalname
    • 検索ベース (-b) は、ldapsearch がプリンシパルを検索するサブツリーを定義します。
      • ホストプリンシパルは cn=computers,cn=accounts,dc=example,dc=com サブツリーに保存されます。
      • サービスプリンシパルは cn=services,cn=accounts,dc=example,dc=com サブツリーに保存されます。
    • krblastpwdchange パラメーターは、最後の変更日で検索結果をフィルタリングします。このパラメーターでは、日付に YYYYMMDD 形式と、時刻に HHMMSS 形式を使用できます (GMT)。
    • dn 属性および krbprincipalname 属性を指定すると、検索結果はエントリー名とプリンシパルに制限されます。
  2. プリンシパルのキー再生成を必要とするすべてのサービスおよびホストで、ipa-getkeytab ユーティリティーを使用して新しいキータブエントリーを取得します。以下のオプションを渡します。
    • --principal (-p): プリンシパルを指定
      --keytab (-k): 元のキータブの場所を指定します。
      --server (-s): Identity Management サーバーのホスト名を指定します。
    以下に例を示します。
    • /etc/krb5.keytab のデフォルトロケーションにあるキータブでホストプリンシパルのキーを再生成するには、以下のコマンドを実行します。
      # ipa-getkeytab -p host/client.example.com@EXAMPLE.COM -s server.example.com -k /etc/krb5.keytab
    • /etc/httpd/conf/ipa.keytab のデフォルトロケーションにある Apache サービスのキータブのキーを再生成するには、以下のコマンドを実行します。
      # ipa-getkeytab -p HTTP/client.example.com@EXAMPLE.COM -s server.example.com -k /etc/httpd/conf/ipa.keytab
      重要
      NFS バージョン 4 などの一部のサービスは、限定された暗号化タイプのみに対応します。適切な引数を ipa-getkeytab コマンドに渡してキータブを適切に設定します。
  3. オプション:プリンシパルのキーが正常に再生成されたことを確認します。klist ユーティリティーを使用して、すべての Kerberos チケットをリスト表示します。たとえば、/etc/krb5.keytab のすべてのキータブエントリーをリスト表示するには、次のコマンドを実行します。
    # klist -kt /etc/krb5.keytab
    Keytab: WRFILE:/etc/krb5.keytab
    KVNO Timestamp         Principal
    ---- ----------------- --------------------------------------------------------
       1 06/09/16 05:58:47 host/client.example.com@EXAMPLE.COM(aes256-cts-hmac-sha1-96)
       2 06/09/16 11:23:01 host/client.example.com@EXAMPLE.COM(aes256-cts-hmac-sha1-96)
       1 03/09/16 13:57:16 krbtgt/EXAMPLE.COM@EXAMPLE.COM(aes256-cts-hmac-sha1-96)
       1 03/09/16 13:57:16 HTTP/server.example.com@EXAMPLE.COM(aes256-cts-hmac-sha1-96)
       1 03/09/16 13:57:16 ldap/server.example.com@EXAMPLE.COM(aes256-cts-hmac-sha1-96)
    
    この出力は、client.example.com のキータブエントリーのキーが、より高い KVNO で再生成されたことを示しています。元のキータブは、以前の KVNO で引き続きデータベースに存在します。
    古いキータブに対して発行されたチケットは引き続き機能しますが、KVNO のキーを使用して新しいチケットが発行されます。これにより、システム操作の中断が回避されます。