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

印刷ビューの終了

更新: 2014 年 9 月
 
 

マスター KDC を手動で構成する方法

    この手順では、増分伝播を構成します。この手順では、次の構成パラメータを使用します。

  • レルム名 = EXAMPLE.COM

  • DNS ドメイン名 = example.com

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

  • admin 主体 = kws/admin

  • オンラインヘルプ URL = http://docs.oracle.com/cd/E23824_01/html/821-1456/aadmin-23.html


    注 -  gkadmin GUIの説明に従って、オンラインヘルプの場所を指すように URL を調整してください。

始める前に

ホストが DNS を使用するように構成されています。マスター KDC を入れ替え可能にする場合の手順については、マスター KDC とスレーブ KDC の入れ替えを参照してください。

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

  1. KDC パッケージをインストールします。

    KDC パッケージをインストールする方法の手順に従います。

  2. Kerberos 構成ファイル krb5.conf を編集します。

    このファイルについては、krb5.conf(4) のマニュアルページを参照してください。

    この例では、管理者は default_realmkdcadmin_server、およびすべての domain_realm エントリの行を変更し、help_url エントリを編集します。

    kdc1 # pfedit /etc/krb5/krb5.conf
    ...
    [libdefaults]
    default_realm = EXAMPLE.COM
    
    [realms]
    EXAMPLE.COM = {
    kdc = kdc1.example.com
    admin_server = kdc1.example.com
    }
    
    [domain_realm]
    .example.com = EXAMPLE.COM
    #
    # if the domain name and realm name are equivalent,
    # this entry is not needed
    #
    [logging]
    default = FILE:/var/krb5/kdc.log
    kdc = FILE:/var/krb5/kdc.log
    
    [appdefaults]
    gkadmin = {
    help_url = http://docs.oracle.com/cd/E23824_01/html/821-1456/aadmin-23.html
    }

    注 -  古い Kerberos システムと通信する必要がある場合は、暗号化タイプの制限が必要になることがあります。暗号化タイプの制限に関する問題については、Kerberos 暗号化タイプを参照してください。
  3. KDC 構成ファイル kdc.conf 内のレルムを指定します。

    このファイルについては、kdc.conf(4) のマニュアルページを参照してください。

    この例では、管理者はレルム名の定義に加えて、増分伝播とロギングのデフォルト値を変更します。

    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_master_ulogsize = 1000
    }

    注 -  古い Kerberos システムと通信する必要がある場合は、暗号化タイプの制限が必要になることがあります。暗号化タイプの制限に関する問題については、Kerberos 暗号化タイプを参照してください。
  4. kdb5_util コマンドを使用して KDC データベースを作成します。

    kdb5_util コマンドは、KDC データベースを作成します。–s オプションを指定すると、kadmindkrb5kdc デーモンが起動する前に、KDC の認証に使用される stash ファイルが作成されます。詳細は、kdb5_util(1M)kadmind(1M)、および krb5kdc(1M) のマニュアルページを参照してください。

    kdc1 # /usr/sbin/kdb5_util create -s
    Initializing database '/var/krb5/principal' for realm 'EXAMPLE.COM'
    master key name 'K/M@EXAMPLE.COM'
    You will be prompted for the database Master Password.
    It is important that you NOT FORGET this password.
    Enter KDC database master key:/** Type strong password **/
    Re-enter KDC database master key to verify: xxxxxxxx

    ヒント  -  この手順が失敗した場合は、KDC 主体がその FQDN で識別されることを確認してください。
    # getent hosts IP-address-of-KDC
    IP-address-of-KDC kdc/** This entry does not include FQDN **/
    次に、その FQDN を /etc/hosts ファイル内の最初の KDC のエントリとして追加します。次に例を示します。
    IP-address-of-KDC kdc.kdc-principal.example.com kdc

  5. Kerberos アクセス制御リストファイル kadm5.acl を編集します。

    生成されたあと、/etc/krb5/kadm5.acl ファイルには、KDC を管理することを許可されたすべての主体名が含まれている必要があります。

    kws/admin@EXAMPLE.COM   *

    前のエントリにより、EXAMPLE.COM レルム内の kws/admin 主体は KDC 内の主体やポリシーを変更できるようになります。デフォルトの主体エントリはアスタリスク (*) です。これは、すべての admin 主体に一致します。このエントリはセキュリティーリスクになる場合があります。すべての admin 主体とその権利を明示的に記載するように、このファイルを変更してください。詳細は、kadm5.acl(4) のマニュアルページを参照してください。

  6. 管理主体をデータベースに追加します。

    必要な数の admin 主体を追加できます。KDC 構成処理を完了するには、1 つ以上の admin 主体を追加する必要があります。この例では、kws/admin 主体を追加します。「kws」の代わりに、適切な主体名で置き換えることができます。

    kadmin.local: addprinc kws/admin
    Enter password 
    for principal kws/admin@EXAMPLE.COM:/** Type strong password **/
    Re-enter password 
    for principal kws/admin@EXAMPLE.COM: xxxxxxxx
    Principal "kws/admin@EXAMPLE.COM" created.
    kadmin.local: 

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

  7. Kerberos デーモンを起動します。
    kdc1 # svcadm enable -r network/security/krb5kdc
    kdc1 # svcadm enable -r network/security/kadmin
  8. kadmin を起動して、主体をさらに追加します。
    kdc1 # /usr/sbin/kadmin -p kws/admin
    Enter password: xxxxxxxx
    kadmin:
    1. マスター KDC の host 主体を作成します。

      ホスト主体は、変更をスレーブ KDC に伝播するために、kprop などの Kerberos アプリケーションによって使用されます。この主体はまた、ssh などのネットワークアプリケーションを使用して KDC サーバーにセキュアなリモートアクセスを提供するためにも使用されます。主体のインスタンスがホスト名である場合、FQDN は、ネームサービスでのドメイン名の大文字小文字には関係なく小文字で指定する必要があることに注意してください。

      kadmin: addprinc -randkey host/kdc1.example.com
      Principal "host/kdc1.example.com@EXAMPLE.COM" created.
      kadmin: 
    2. (オプション) kclient 主体を作成します。

      この主体は、Kerberos クライアントのインストール中に kclient ユーティリティーで使用されます。このユーティリティーを使用しない場合は、主体に追加する必要はありません。kclient ユーティリティーのユーザーは、このパスワードを使用する必要があります。詳細は、kclient(1M) のマニュアルページを参照してください。

      kadmin: addprinc clntconfig/admin
      Enter password for principal clntconfig/admin@EXAMPLE.COM:/** Type strong  password **/
      Re-enter password for principal clntconfig/admin@EXAMPLE.COM: xxxxxxxx
      Principal "clntconfig/admin@EXAMPLE.COM" created.
      kadmin: 

      注 -  このパスワードを安全な場所に保存および保管してください。
    3. clntconfig/admin 主体に権限を追加します。

      kadm5.acl ファイルを編集して、clntconfig 主体に kclient インストールタスクを実行するための十分な権限を付与します。

      # pfedit /etc/krb5/kadm5.acl
      ...
      clntconfig/admin@EXAMPLE.COM  acdilm 
    4. マスター KDC の keytab ファイルにマスター KDC の host 主体を追加します。

      keytab ファイルにホスト主体を追加すると、自動的に、sshd などのアプリケーションサーバーがこの主体を使用できるようになります。

      kadmin: ktadd host/kdc1.example.com
      Entry for principal host/kdc1.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/kdc1.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/kdc1.example.com with kvno 3, encryption type Triple DES cbc
      mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    5. kadmin を終了します。
      kadmin: quit
  9. NTP または別のメカニズムを使用して、このシステムのクロックをレルム内のほかのクロックと同期します。

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


    注 -  マスター KDC を NTP サーバーにすることはできません。NTP サーバーがない場合は、NTP サーバーがインストールされたあとにマスター KDC に戻り、マスター KDC を NTP サーバーのクライアントにしてください。
  10. スレーブ KDC を構成します。

    冗長性を提供するには、スレーブ KDC を必ず 1 つ以上インストールするようにしてください。kdcmgr を使用してスレーブ KDC を構成する方法または スレーブ KDC を手動で構成する方法の手順に従います。