Oracle® Solaris 11.2 での Kerberos およびその他の認証サービスの管理

印刷ビューの終了

更新: 2014 年 9 月
 
 

スレーブ KDC を手動で構成する方法

    この手順では、kdc2 という名前の新しいスレーブ KDC を構成します。また、増分伝播も構成します。この手順では、次の構成パラメータを使用します。

  • レルム名 = EXAMPLE.COM

  • DNS ドメイン名 = example.com

  • マスター KDC = kdc1.example.com

  • スレーブ KDC = kdc2.example.com

  • admin 主体 = kws/admin

始める前に

マスター KDC が構成されています。このスレーブをスワップ可能にする場合は、マスター KDC とスレーブ KDC を入れ替えする方法の手順に従ってください。

KDC サーバー上で root 役割になる必要があります。詳細は、Oracle Solaris 11.2 でのユーザーとプロセスのセキュリティー保護 の割り当てられている管理権利の使用を参照してください。

  1. マスター KDC 上で kadmin を起動します。

    マスター KDC を構成するときに作成した admin 主体名を使用して、ログインする必要があります。

    kdc1 # /usr/sbin/kadmin -p kws/admin
    Enter password: xxxxxxxx
    kadmin: 

    詳細は、kadmin(1M) のマニュアルページを参照してください。

    1. マスター KDC のデータベースにスレーブホスト主体が存在しない場合は、追加します。

      スレーブが機能するには、ホスト主体が必要です。主体のインスタンスがホスト名である場合、FQDN は、ネームサービスでのドメイン名の大文字小文字には関係なく小文字で指定する必要があることに注意してください。

      kadmin: addprinc -randkey host/kdc2.example.com
      Principal "host/kdc2.example.com@EXAMPLE.COM" created.
      kadmin: 
    2. マスター KDC 上で、増分伝播の主体を作成します。

      kiprop 主体は、マスター KDC からの増分伝播を承認するために使用されます。

      kadmin: addprinc -randkey kiprop/kdc2.example.com
      Principal "kiprop/kdc2.example.com@EXAMPLE.COM" created.
      kadmin:
    3. kadmin を終了します。
      kadmin: quit
  2. マスター KDC 上で、Kerberos 構成ファイル krb5.conf を編集します。

    各スレーブ用にエントリを追加する必要があります。このファイルについては、krb5.conf(4) のマニュアルページを参照してください。

    kdc1 # pfedit /etc/krb5/krb5.conf
    .
    .
    [realms]
    EXAMPLE.COM = {
    kdc = kdc1.example.com
    kdc = kdc2.example.com
    admin_server = kdc1.example.com
    }
  3. マスター KDC 上で、kadm5.aclkiprop エントリを追加します。

    このエントリにより、マスター KDC が kdc2 サーバー用の増分伝播の要求を受け取ることができるようになります。

    kdc1 # pfedit /etc/krb5/kadm5.acl
    */admin@EXAMPLE.COM *
    kiprop/kdc2.example.com@EXAMPLE.COM p
  4. マスター KDC 上で、kadmin サービスを再起動して、kadm5.acl ファイル内の新しいエントリを使用します。
    kdc1 # svcadm restart network/security/kadmin
  5. すべてのスレーブ KDC 上で、マスター KDC サーバーから KDC 管理ファイルをコピーします。

      各スレーブ KDC には、マスター KDC サーバーに関する最新の情報が必要です。sftp または同様の転送メカニズムを使用して、マスター KDC から次のファイルのコピーを取得できます。

    • /etc/krb5/krb5.conf

    • /etc/krb5/kdc.conf

  6. すべてのスレーブ KDC 上で、マスター KDC のエントリと各スレーブ KDC のエントリをデータベース伝播構成ファイル kpropd.acl に追加します。

    この情報は、すべてのスレーブ KDC サーバー上で更新する必要があります。

    kdc2 # pfedit /etc/krb5/kpropd.acl
    host/kdc1.example.com@EXAMPLE.COM
    host/kdc2.example.com@EXAMPLE.COM
  7. すべてのスレーブ KDC 上で、Kerberos アクセス制御リストファイル kadm5.acl が反映されていないことを確認してください。

    変更されていない kadm5.acl ファイルは、次の例のようになります。

    kdc2 # pfedit /etc/krb5/kadm5.acl
    */admin@___default_realm___ *

    ファイルに kiprop のエントリがある場合は、それを削除します。

  8. 新しいスレーブ上で、そのポーリング間隔を kdc.conf ファイル内に定義します。

    sunw_dbprop_master_ulogsize エントリを、スレーブのポーリング間隔を定義するエントリに置き換えます。次のエントリにより、ポーリング時間が 2 分に設定されます。

    kdc1 # pfedit /etc/krb5/kdc.conf
    [kdcdefaults]
    kdc_ports = 88,750
    
    [realms]
    EXAMPLE.COM= {
    profile = /etc/krb5/krb5.conf
    database_name = /var/krb5/principal
    acl_file = /etc/krb5/kadm5.acl
    kadmind_port = 749
    max_life = 8h 0m 0s
    max_renewable_life = 7d 0h 0m 0s
    sunw_dbprop_enable = true
    sunw_dbprop_slave_poll = 2m
    }
  9. 新しいスレーブ上で、kadmin コマンドを起動します。

    マスター KDC を構成するときに作成した admin 主体名のいずれかを使用してログインします。

    kdc2 # /usr/sbin/kadmin -p kws/admin
    Enter password: xxxxxxxx
    kadmin: 
    1. kadmin を使用して、スレーブのホスト主体をスレーブのキータブファイルに追加します。

      このエントリにより、kprop コマンドやその他の Kerberos アプリケーションが機能できるようになります。主体のインスタンスがホスト名である場合、FQDN は、ネームサービスでのドメイン名の大文字小文字には関係なく小文字で指定する必要があることに注意してください。詳細は、kprop(1M) のマニュアルページを参照してください。

      kadmin: ktadd host/kdc2.example.com
      Entry for principal host/kdc2.example.com with kvno 3, encryption type AES-256 CTS mode
      with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/kdc2.example.com with kvno 3, encryption type AES-128 CTS mode
      with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/kdc2.example.com with kvno 3, encryption type Triple DES cbc
      mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    2. スレーブ KDC のキータブファイルに kiprop 主体を追加します。

      krb5.keytabkiprop 主体を追加すると、増分伝播が開始されるときに、kprpod コマンドが自身を認証できるようになります。

      kadmin: ktadd kiprop/kdc2.example.com
      Entry for principal kiprop/kdc2.example.com with kvno 3, encryption type AES-256 CTS mode
      with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal kiprop/kdc2.example.com with kvno 3, encryption type AES-128 CTS mode
      with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal kiprop/kdc2.example.com with kvno 3, encryption type Triple DES cbc
      mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    3. kadmin を終了します。
      kadmin: quit
  10. 新しいスレーブ上で、Kerberos 伝播デーモンを起動します。
    kdc2 # svcadm enable network/security/krb5_prop
  11. 新しいスレーブ上で、kdb5_util コマンドを使用して stash ファイルを作成します。
    kdc2 # /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: xxxxxxxx

    詳細は、kdb5_util(1M) のマニュアルページを参照してください。

  12. NTP または別のメカニズムを使用して、このシステムのクロックをレルム内のほかのクロックと同期します。

    認証が成功するには、すべてのクロックが、krb5.conf ファイルの libdefaults セクションで定義されているデフォルトの時間内に収まっている必要があります。詳細は、krb5.conf(4) のマニュアルページを参照してください。Network Time Protocol (NTP) については、KDC と Kerberos クライアントのクロックの同期化を参照してください。

  13. 新しいスレーブ上で、KDC デーモンを起動します。
    kdc2 # svcadm enable network/security/krb5kdc

次のステップ

NTP サーバーがインストールされたあとにマスター KDC に戻り、マスター KDC を NTP サーバーのクライアントにします。