JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris の管理: IP サービス     Oracle Solaris 11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I TCP/IP の管理

1.  ネットワーク配備の計画

2.  IPv6 アドレス使用時の考慮点

3.  IPv4 ネットワークの構成

4.  ネットワークでの IPv6 の有効化

5.  TCP/IP ネットワークの管理

6.  IP トンネルの構成

7.  ネットワークの問題の障害追跡

8.  IPv4 リファレンス

9.  IPv6 リファレンス

パート II DHCP

10.  DHCP について (概要)

11.  ISC DHCP サービスの管理

12.  DHCP クライアントの構成と管理

13.  DHCP コマンドと DHCP ファイル (リファレンス)

パート III IP セキュリティー

14.  IP セキュリティーアーキテクチャー (概要)

15.  IPsec の構成 (タスク)

16.  IP セキュリティーアーキテクチャー (リファレンス)

17.  インターネット鍵交換 (概要)

18.  IKE の構成 (手順)

IKE 情報の表示

フェーズ 1 IKE 交換に使用できるグループおよびアルゴリズムの表示方法

IKE の構成 (タスクマップ)

事前共有鍵による IKE の構成 (タスクマップ)

事前共有鍵による IKE の構成

事前共有鍵により IKE を構成する方法

新規ピアシステムのために IKE を更新する方法

公開鍵証明書による IKE の構成 (タスクマップ)

公開鍵証明書による IKE の構成

自己署名付き公開鍵証明書により IKE を構成する方法

CA からの署名付き証明書により IKE を構成する方法

ハードウェアで公開鍵証明書を生成および格納する方法

証明書失効リストを処理する方法

移動体システム用の IKE の構成 (タスクマップ)

移動体システム用の IKE の構成

遠隔地のシステム用に IKE を構成する方法

接続したハードウェアを検出するように IKE を構成する

Sun Crypto Accelerator 6000 ボードを検出するように IKE を構成する方法

19.  インターネット鍵交換 (リファレンス)

20.  Oracle Solaris の IP フィルタ (概要)

21.  IP フィルタ (手順)

パート IV ネットワークパフォーマンス

22.  統合ロードバランサの概要

23.  統合ロードバランサの構成 (タスク)

24.  仮想ルーター冗長プロトコル (概要)

25.  VRRP の構成 (タスク)

26.  輻輳制御の実装

パート V IP サービス品質 (IPQoS)

27.  IPQoS の紹介 (概要)

28.  IPQoS 対応ネットワークの計画 (手順)

29.  IPQoS 構成ファイルの作成 (手順)

30.  IPQoS の起動と保守(手順)

31.  フローアカウンティングの使用と統計情報の収集 (手順)

32.  IPQoS の詳細 (リファレンス)

用語集

索引

公開鍵証明書による IKE の構成

公開鍵証明書を使用すると、通信するシステムは秘密鍵情報を帯域外で共有する必要がなくなります。事前共有鍵とは異なり、公開鍵証明書は、移動体システムなど、番号が変更される可能性があるシステムでも使用できます。

公開鍵証明書はまた、接続されたハードウェア内で生成して格納できます。手順については、「接続したハードウェアを検出するように IKE を構成する」を参照してください。

自己署名付き公開鍵証明書により IKE を構成する方法

この手順では、証明書ペアを作成します。非公開鍵はディスク上のローカル証明書データベースに格納され、certlocal サブコマンドを使用して参照できます。証明書ペアの公開部分は、公開証明書データベースに格納されます。これは certdb サブコマンドを使用して参照できます。公開部分をピアシステムと交換します。2 つの証明書を組み合わせたものが、IKE 転送を認証するために使用されます。

自己署名付き証明書は、CA からの公開鍵証明書よりもオーバーヘッドが少ないのですが、あまり簡単には拡大できません。 CA によって発行される証明書とは異なり、自己署名付き証明書は帯域外で検証する必要があります。

  1. 管理者になります。

    詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。リモートからログインする場合、セキュリティー保護されたリモートログイン用の ssh コマンドを使用してください。例については、例 15-1 を参照してください。

  2. 自己署名付き証明書を ike.privatekeys データベース内に作成します。
    # ikecert certlocal -ks -m keysize -t keytype \
    -D dname -A altname \
    [-S validity-start-time] [-F validity-end-time] [-T token-ID]
    -ks

    自己署名付き証明書を作成します。

    -m keysize

    キーのサイズです。keysize は、512、1024、2048、3072、4096 のいずれかです。

    -t keytype

    使用するアルゴリズムのタイプを指定します。keytypersa-sha1rsa-md5dsa-sha1 のいずれかです。

    -D dname

    証明書主体の X.509 識別名です。dname の一般的な形式は次のとおりです: C=country (国)、O=organization (組織)、OU=organizational unit (組織単位)、CN=common name (共通名)。有効なタグは、C、O、OU、CN です。

    -A altname

    証明書の代替名です。altname の形式は tag=value です。有効なタグは IPDNSemail、および DN です。

    -S validity-start-time

    証明書の有効期間の開始時間を絶対値または相対値で指定します。

    -F validity-end-time

    証明書の有効期間の終了時間を絶対値または相対値で指定します。

    -T token-ID

    PKCS #11 ハードウェアトークンで鍵を生成できるようにします。その後、証明書はハードウェアに格納されます。

    1. たとえば、partym システムでは、コマンドは次のようになります。
      # ikecert certlocal -ks -m 2048 -t rsa-sha1 \
      -D "O=exampleco, OU=IT, C=US, CN=partym" \
      -A IP=192.168.13.213
      Creating private key.
      Certificate added to database.
      -----BEGIN X509 CERTIFICATE-----
      MIIC1TCCAb2gAwIBAgIEfdZgKjANBgkqhkiG9w0BAQUFADAaMRgwFgYDVQQDEw9T
      a...+
      zBGi4QkNdI3f
      -----END X509 CERTIFICATE-----

      注 - -D および -A オプションの値は任意です。値は証明書を識別するためだけに使用されます。これらは 192.168.13.213 などのシステムを識別するためには使用されません。実際、これらは固有の値であるため、正しい証明書がピアシステムにインストールされていることを帯域外で検証する必要があります。


    2. enigma システムでは、コマンドは次のようになります。
      # ikecert certlocal -ks -m 2048 -t rsa-sha1 \
      -D "O=exampleco, OU=IT, C=US, CN=enigma" \
      -A IP=192.168.116.16
      Creating private key.
      Certificate added to database.
      -----BEGIN X509 CERTIFICATE-----
      MIIC1TCCAb2gAwIBAgIEBl5JnjANBgkqhkiG9w0BAQUFADAaMRgwFgYDVQQDEw9T
      ...
      y85m6LHJYtC6
      -----END X509 CERTIFICATE-----
  3. 証明書を保存し、リモートシステムに送信します。

    出力は、証明書の公開部分の符号化済みバージョンです。この証明書を電子メールにペーストしても安全です。手順 b で示すように、受け取り側は正しい証明書をインストールしていることを帯域外で検証する必要があります。

    1. たとえば、partym 証明書の公開部分を enigma 管理者に送信します。
      To: admin@ja.enigmaexample.com
      From: admin@us.partyexample.com
      Message: -----BEGIN X509 CERTIFICATE-----
      MIIC1TCCAb2gAwIBAgIEfdZgKjANBgkqhkiG9w0BAQUFADAaMRgwFgYDVQQDEw9T
      a...+
      zBGi4QkNdI3f
      -----END X509 CERTIFICATE------
    2. enigma 管理者から、enigma 証明書の公開部分が送信されます。
      To: admin@us.partyexample.com
      From: admin@ja.enigmaexample.com
      Message: ----BEGIN X509 CERTIFICATE-----
      MIIC1TCCAb2gAwIBAgIEBl5JnjANBgkqhkiG9w0BAQUFADAaMRgwFgYDVQQDEw9T
      ...
      y85m6LHJYtC6
      -----END X509 CERTIFICATE-----
  4. 各システムで、受け取った証明書を公開鍵データベースに追加します。
    1. root で読み取り可能なファイルに管理者の電子メールを保存します。
    2. ファイルを ikecert コマンドにリダイレクトします。
      # ikecert certdb -a < /tmp/certificate.eml 

      コマンドは、BEGIN タグと END タグの間にあるテキストをインポートします。

  5. 通信するシステムの管理者と一緒に、証明書がその管理者のものであることを確認します。

    たとえば、ほかの管理者に電話して、自分が持つ公開証明書のハッシュが、ほかの管理者のみが持つ非公開証明書のハッシュに一致することを検証できます。

    1. partym に格納されている証明書を一覧表示します。

      次の例で、Note 1 はスロット 0 の証明書の識別名 (DN) を示します。スロット 0 の非公開証明書は同じハッシュを持つため、これらの証明書は同一の証明書ペアです。公開証明書が機能するには、一致するペアを持つ必要があります。certdb サブコマンドは公開部分を示し、certlocal サブコマンドは非公開部分を示します。

      partym # ikecert certdb -l
      
      Certificate Slot Name: 0   Key Type: rsa
          (Private key in certlocal slot 0)
          Subject Name: <O=exampleco, OU=IT, C=US, CN=partym>Note 1
          Key Size: 2048
          Public key hash: 80829EC52FC5BA910F4764076C20FDCF
      
      Certificate Slot Name: 1   Key Type: rsa
          (Private key in certlocal slot 1)
          Subject Name: <O=exampleco, OU=IT, C=US, CN=Ada>
          Key Size: 2048
          Public key hash: FEA65C5387BBF3B2C8F16C019FEBC388
      partym # ikecert certlocal -l
      Local ID Slot Name: 0   Key Type: rsa
          Key Size: 2048
          Public key hash: 80829EC52FC5BA910F4764076C20FDCFNote 3
      
      Local ID Slot Name: 1   Key Type: rsa-sha1
              Key Size: 2048
              Public key hash: FEA65C5387BBF3B2C8F16C019FEBC388
      
      Local ID Slot Name: 2   Key Type: rsa
          Key Size: 2048
          Public key hash: 2239A6A127F88EE0CB40F7C24A65B818

      このチェックでは、partym システムが有効な証明書ペアを持つことが検証されました。

    2. enigma システムが partym の公開証明書を持つことを確認します。

      公開鍵ハッシュは電話で伝えることができます。

      前の手順の partym における Note 3 のハッシュと、enigma における Note 4 を比較します。

      enigma # ikecert certdb -l
      
      Certificate Slot Name: 0   Key Type: rsa
          (Private key in certlocal slot 0)
          Subject Name: <O=exampleco, OU=IT, C=US, CN=Ada>
          Key Size: 2048
          Public key hash: 2239A6A127F88EE0CB40F7C24A65B818
      
      Certificate Slot Name: 1   Key Type: rsa
          (Private key in certlocal slot 1)
          Subject Name: <O=exampleco, OU=IT, C=US, CN=enigma>
          Key Size: 2048
          Public key hash: FEA65C5387BBF3B2C8F16C019FEBC388
      
      Certificate Slot Name: 2   Key Type: rsa
          (Private key in certlocal slot 2)
          Subject Name: <O=exampleco, OU=IT, C=US, CN=partym>
          Key Size: 2048
          Public key hash: 80829EC52FC5BA910F4764076C20FDCFNote 4

      enigma の公開証明書データベースに格納されている最後の証明書の公開鍵ハッシュとサブジェクト名が、前の手順の partym の非公開証明書のハッシュと一致します。

  6. システムごとに、両方の証明書を信頼します。

    /etc/inet/ike/config ファイルを編集して、証明書を認識します。

    パラメータ cert_trustremote_addr、および remote_id の値は、リモートシステムの管理者が提供します。

    1. たとえば、partym システム上の ike/config ファイルは次のようになります。
      # Explicitly trust the self-signed certs
      # that we verified out of band. The local certificate
      # is implicitly trusted because we have access to the private key.
      
      cert_trust "O=exampleco, OU=IT, C=US, CN=enigma" 
      
      # We could also use the Alternate name of the certificate,
      # if it was created with one.  In this example, the Alternate Name
      # is in the format of an IP address:
      # cert_trust "192.168.116.16"
      
      ## Parameters that may also show up in rules.
      
      p1_xform 
        { auth_method preshared oakley_group 5 auth_alg sha256 encr_alg 3des }
      p2_pfs 5
      
      {
       label "US-partym to JA-enigmax"
       local_id_type dn
       local_id "O=exampleco, OU=IT, C=US, CN=partym"
       remote_id "O=exampleco, OU=IT, C=US, CN=enigma"
      
       local_addr  192.168.13.213
      # We could explicitly enter the peer's IP address here, but we don't need
      # to do this with certificates, so use a wildcard address. The wildcard
      # allows the remote device to be mobile or behind a NAT box
       remote_addr 0.0.0.0/0
      
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha256 encr_alg aes}
      }
    2. enigma システムで、ike/config ファイルにローカルパラメータの enigma 値を追加します。

      リモートパラメータには、partym 値を使用します。label キーワードの値がローカルシステム上で一意であることを確認します。

      …
      {
       label "JA-enigmax to US-partym"
       local_id_type dn
       local_id "O=exampleco, OU=IT, C=US, CN=enigma"
       remote_id "O=exampleco, OU=IT, C=US, CN=partym"
      
       local_addr  192.168.116.16
       remote_addr 0.0.0.0/0
      …
  7. ピアシステムで、IKE を有効にします。
    partym # svcadm enable ipsec/ike
    
    enigma # svcadm enable ipsec/ike

次の手順

IPsec ポリシーの設定がまだ完了していない場合、IPsec の手順に戻って IPsec ポリシーを有効にするか更新してください。

CA からの署名付き証明書により IKE を構成する方法

認証局 (CA) からの公開鍵証明書では、外部機関とのネゴシエーションが必要となります。この証明書は非常に簡単に拡大できるため、通信するシステムを数多く保護できます。

  1. 管理者になります。

    詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。リモートからログインする場合、セキュリティー保護されたリモートログイン用の ssh コマンドを使用してください。例については、例 15-1 を参照してください。

  2. ikecert certlocal -kc コマンドを使用して、証明書要求を作成します。

    コマンドの引数の説明については、手順 b in 「自己署名付き公開鍵証明書により IKE を構成する方法」を参照してください。

    # ikecert certlocal -kc -m keysize -t keytype \
    -D dname -A altname
    1. たとえば、次のコマンドでは、partym システム上に証明書要求が作成されます。
      # ikecert certlocal -kc -m 2048 -t rsa-sha1 \
      > -D "C=US, O=PartyCompany\, Inc., OU=US-Partym, CN=Partym" \
      > -A "DN=C=US, O=PartyCompany\, Inc., OU=US-Partym"
      Creating software private keys.
        Writing private key to file /etc/inet/secret/ike.privatekeys/2.
      Enabling external key providers - done.
      Certificate Request: 
        Proceeding with the signing operation.
        Certificate request generated successfully (…/publickeys/0)
      Finished successfully.
      -----BEGIN CERTIFICATE REQUEST-----
      MIIByjCCATMCAQAwUzELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFEV4YW1wbGVDb21w
      …
      lcM+tw0ThRrfuJX9t/Qa1R/KxRlMA3zckO80mO9X
      -----END CERTIFICATE REQUEST-----
    2. 次のコマンドでは、enigma システム上に証明書要求が作成されます。
      # ikecert certlocal -kc -m 2048 -t rsa-sha1 \
      > -D "C=JA, O=EnigmaCo\, Inc., OU=JA-Enigmax, CN=Enigmax" \
      > -A "DN=C=JA, O=EnigmaCo\, Inc., OU=JA-Enigmax"
      Creating software private keys.
      …
      Finished successfully.
      -----BEGIN CERTIFICATE REQUEST-----
      MIIBuDCCASECAQAwSTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDFBhcnR5Q29tcGFu
      …
      8qlqdjaStLGfhDOO
      -----END CERTIFICATE REQUEST-----
  3. この証明書要求を PKI 機関に送信します。

    証明書要求の送信方法については PKI に問い合わせてください。ほとんどの機関は、Web サイトに送信フォームを掲載しています。フォームの記入に当たっては、その送信が正当なものであることを証明する必要があります。通常は、証明書要求をフォームに貼り付けます。要求を受け取った機関は、それをチェックしてから、次の 2 つの証明書オブジェクトと、証明書失効リストを発行します。

    • 公開鍵証明書 – この証明書は機関に送信した要求に基づいて作成されます。送信した証明書要求も、公開鍵証明書の一部として含まれます。この証明書によって一意に識別されます。

    • 認証局 – 機関の署名。CA によって公開鍵証明書が正規のものであることが確認されます。

    • 証明書失効リスト (CRL) – 機関が無効にした証明書の最新リストです。CRL へのアクセスが公開鍵証明書に組み込まれている場合には、CRL が別個の証明書オブジェクトとして送信されることはありません。

      CRL の URI が公開鍵証明書に組み込まれている場合には、IKE は CRL を自動的に取り出すことができます。同様に、DN (LDAP サーバー上のディレクトリ名) エントリが公開鍵証明書に組み込まれている場合には、IKE は、指定された LDAP サーバーから CRL を取得し、キャッシュできます。

      公開鍵証明書に組み込まれている URI と DN エントリの例については、「証明書失効リストを処理する方法」を参照してください。

  4. 各証明書をシステムに追加します。

    ikecert certdb -a コマンドの -a オプションは、張り付けられたオブジェクトをシステムの適切な証明書データベースに追加します。 詳細については、「IKE と公開鍵証明書」を参照してください。

    1. 管理者になります。

      詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。リモートからログインする場合、セキュリティー保護されたリモートログイン用の ssh コマンドを使用してください。例については、例 15-1 を参照してください。

    2. PKI 機関から受け取った公開鍵証明書を追加します。
      # ikecert certdb -a < /tmp/PKIcert.eml
    3. PKI 機関の CA を追加します。
      # ikecert certdb -a < /tmp/PKIca.eml
    4. PKI 機関が証明書失効リスト (CRL) を送信してきている場合は、これを certrldb データベースに追加します。
      # ikecert certrldb -a
      Press the Return key
      Paste the CRL:
      -----BEGIN CRL----- … -----END CRL----
      Press the Return key
      <Control>-D
  5. cert_root キーワードを使用して、/etc/inet/ike/config ファイルの PKI 機関を識別します。

    PKI 機関が提供する名前を使用します。

    1. たとえば、partym システムの ike/config ファイルは次のようになります。
      # Trusted root cert
      # This certificate is from Example PKI
      # This is the X.509 distinguished name for the CA that it issues.
      
      cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example, CN=Example PKI"
      
      ## Parameters that may also show up in rules.
      
      p1_xform 
       { auth_method rsa_sig oakley_group 1 auth_alg sha384 encr_alg aes}
      p2_pfs 2
      
      {
       label "US-partym to JA-enigmax - Example PKI"
       local_id_type dn
       local_id  "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
       remote_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
      
       local_addr  192.168.13.213
       remote_addr 192.168.116.16
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha256 encr_alg aes}
      }

      注 - auth_method パラメータのすべての引数は同じ行になければなりません。


    2. enigma システム上で、同様なファイルを作成します。

      特に、enigma ike/config ファイルは、次の条件を満たしている必要があります。

      • cert_root には同じ値を使用する。

      • ローカルパラメータには enigma 値を使用する。

      • リモートパラメータには partym 値を使用する。

      • labelキーワードには一意の値を作成する。この値は、リモートシステムの label 値とは異なる値でなくてはなりません。

      …
      cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example, CN=Example PKI"
      …
      {
       label "JA-enigmax to US-partym - Example PKI"
       local_id_type dn
       local_id   "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id  "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
       
       local_addr  192.168.116.16
       remote_addr 192.168.13.213
      …
  6. CRL を処理する方法を IKE に伝えます。

    適切なオプションを選択します。

    • No CRL available

      PKI 機関が CRL を提供しない場合、キーワード ignore_crlsike/config ファイルに追加します。

      # Trusted root cert
      …
      cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example,…
      ignore_crls

      ignore_crls キーワードにより、IKE は CRL を検索しなくなります。

    • CRL available

      PKI 機関から CRL の一元的な配布ポイントを知らされている場合は、ike/config ファイルを変更してこの場所を指定できます。

      例については、「証明書失効リストを処理する方法」を参照してください。

例 18-2 IKE の構成時における rsa_encrypt の使用

ike/config ファイルで auth_method rsa_encrypt を使用する場合には、ピアの証明書を publickeys データベースに追加する必要があります。

  1. その証明書をリモートシステムの管理者に送信します。

    証明書は、電子メールに貼り付けることもできます。

    たとえば、partym の管理者は次のような電子メールを送信します。

    To: admin@ja.enigmaexample.com
    From: admin@us.partyexample.com
    Message: -----BEGIN X509 CERTIFICATE-----
    MII…
    ----END X509 CERTIFICATE-----

    enigma の管理者は次のような電子メールを送信します。

    To: admin@us.partyexample.com
    From: admin@ja.enigmaexample.com
    Message: -----BEGIN X509 CERTIFICATE-----
    MII
    …
    -----END X509 CERTIFICATE-----
  2. システムごとに、電子メールで送信された証明書をローカルの publickeys データベースに追加します。

    # ikecert certdb -a < /tmp/saved.cert.eml

RSA 暗号化の認証方法は、IKE 内の識別子を盗聴者から隠します。rsa_encrypt メソッドはピアの識別子を隠すため、IKE はピアの証明書を取得できません。結果として、rsa_encrypt メソッドでは、IKE ピアが互いの公開鍵を知っておく必要があります。

よって、/etc/inet/ike/config ファイルの auth_method rsa_encrypt を指定する場合には、ピアの証明書を publickeys データベースに追加する必要があります。この結果、publickeys データベースには、通信するシステムペアごとに 3 つの証明書が存在することになります。

障害追跡 – IKE ペイロードは 3 つの証明書を持っており、大きくなりすぎて、rsa_encrypt が暗号化できないことがあります。「authorization failed (承認に失敗しました)」や「malformed payload (ペイロードが不正です)」などのエラーは、rsa_encrypt メソッドがペイロード全体を暗号化できないことを示します。証明書を 2 つしか必要としない rsa_sig などのメソッドを使用して、ペイロードのサイズを減らします。

次の手順

IPsec ポリシーの設定がまだ完了していない場合、IPsec の手順に戻って IPsec ポリシーを有効にするか更新してください。

ハードウェアで公開鍵証明書を生成および格納する方法

ハードウェア上で公開鍵証明書を生成および格納することは、システム上で公開鍵証明書を生成および格納することと似ています。ハードウェア上では、ikecert certlocal および ikecert certdb コマンドがハードウェアを識別しなければなりません。トークン ID に -T オプションを指定すると、コマンドがハードウェアを識別するようになります。

始める前に

  1. 管理者になります。

    詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。リモートからログインする場合、セキュリティー保護されたリモートログイン用の ssh コマンドを使用してください。例については、例 15-1 を参照してください。

  2. 自己署名付き証明書または証明書要求を作成して、トークン ID を指定します。

    次のオプションのいずれかを選択します。


    注 - Sun Crypto Accelerator 6000 ボードは、RSA で最大 2048 ビットの鍵をサポートします。DSA の場合、このボードは最大 1024 ビットのキーをサポートします。


    • 自己署名付き証明書の場合、次の構文を使用する
      # ikecert certlocal -ks -m 2048 -t rsa-sha1 \
      > -D "C=US, O=PartyCompany, OU=US-Partym, CN=Partym" \
      > -a -T dca0-accel-stor IP=192.168.116.16
      Creating hardware private keys.
      Enter PIN for PKCS#11 token: Type user:password

      -T オプションの引数は、接続された Sun Crypto Accelerator 6000 ボードのトークン ID です。

    • 証明書要求の場合、次の構文を使用します。
      # ikecert certlocal -kc -m 2048 -t rsa-sha1 \
      > -D "C=US, O=PartyCompany, OU=US-Partym, CN=Partym" \
      > -a -T dca0-accel-stor IP=192.168.116.16
      Creating hardware private keys.
      Enter PIN for PKCS#11 token: Type user:password

    ikecert コマンドの引数の詳細については、ikecert(1M) のマニュアルページを参照してください。

  3. PIN のプロンプトに、Sun Crypto Accelerator 6000 ユーザー、コロン、およびユーザーのパスワードを入力します。

    Sun Crypto Accelerator 6000 ボードのユーザー ikemgr のパスワードが rgm4tigt の場合、次のように入力します。

    Enter PIN for PKCS#11 token: ikemgr:rgm4tigt

    注 - PIN の応答は、ディスク上に「クリアテキストとして」格納されます。


    パスワードの入力後、証明書が印刷されます。

    Enter PIN for PKCS#11 token: ikemgr:rgm4tigt
    -----BEGIN X509 CERTIFICATE-----
    MIIBuDCCASECAQAwSTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDFBhcnR5Q29tcGFu
    …
    oKUDBbZ9O/pLWYGr
    -----END X509 CERTIFICATE-----
  4. 通信先に証明書を送信します。

    次のオプションのいずれかを選択します。

    • リモートシステムに自己署名付き証明書を送信します。

      証明書は、電子メールに貼り付けることもできます。

    • PKI を処理する機関に証明書要求を送信します。

      証明書要求は、PKI 機関の指示に従って送信します。詳細については、手順 3 of 「CA からの署名付き証明書により IKE を構成する方法」を参照してください。

  5. システム上で、/etc/inet/ike/config ファイルを編集して、証明書が認識されるようにします。

    次のオプションのどちらか 1 つを選択します。

    • 自己署名付き証明書

      リモートシステムの管理者がパラメータ cert_trustremote_id、および remote_addr 用に提供する値を使用します。たとえば、enigma システムの ike/config ファイルは次のようになります。

      # Explicitly trust the following self-signed certs
      # Use the Subject Alternate Name to identify the cert
      
      cert_trust "192.168.116.16"  Local system's certificate Subject Alt Name
      cert_trust "192.168.13.213"  Remote system's certificate Subject Alt name
      
      …
      {
       label "JA-enigmax to US-partym"
       local_id_type dn
       local_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
      
       local_addr  192.168.116.16
       remote_addr 192.168.13.213
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha256 encr_alg aes}
      }
    • 証明書要求

      PKI 機関が cert_root キーワードの値として提供する名前を入力します。たとえば、enigma システムの ike/config ファイルは次のようになります。

      # Trusted root cert
      # This certificate is from Example PKI
      # This is the X.509 distinguished name for the CA that it issues.
      
      cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example, CN=Example PKI"
      
      …
      {
       label "JA-enigmax to US-partym - Example PKI"
       local_id_type dn
       local_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id  "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
      
       local_addr  192.168.116.16
       remote_addr 192.168.13.213
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha256 encr_alg aes}
      }
  6. 通信先から受け取った証明書をハードウェアに格納します。

    手順 3 で応答したように、PIN 要求に応答します。


    注 - 公開鍵証明書は、公開鍵を生成したハードウェアに追加する必要があります


    • 自己署名付き証明書

      リモートシステムの自己署名付き証明書を追加します。この例では、証明書は DCA.ACCEL.STOR.CERT ファイルに格納されています。

      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CERT
      Enter PIN for PKCS#11 token: Type user:password

      自己署名付き証明書が rsa_encryptauth_method パラメータの値として使用していた場合、ピアの証明書をハードウェア格納場所に追加します。

    • PKI 機関からの証明書

      機関が証明書要求から生成した証明書を追加して、認証局 (CA) を追加します。

      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CERT
      Enter PIN for PKCS#11 token: Type user:password
      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CA.CERT
      Enter PIN for PKCS#11 token: Type user:password

      PKI 機関からの証明書失効リスト (CRL) を追加する方法については、「証明書失効リストを処理する方法」を参照してください。

次の手順

IPsec ポリシーの設定がまだ完了していない場合、IPsec の手順に戻って IPsec ポリシーを有効にするか更新してください。

証明書失効リストを処理する方法

証明書失効リスト (CRL) には、認証局が発行した証明書のうち、期限切れになったりセキュリティーが低下したりした証明書が含まれます。CRL を処理する方法には、次の 4 つがあります。

次の手順に、中央の配布ポイントから CRL を使用するように IKE に指示する手順を示します。

  1. CA から受信した証明書を表示する
    # ikecert certdb -lv certspec
    -l

    IKE 証明書データベースにある証明書を一覧表示します。

    -v

    証明書を冗長モードで一覧表示します。このオプションは慎重に使用してください。

    certspec

    IKE 証明書データベース内の証明書と一致するパターンです。

    たとえば、次の証明書は Oracle が発行しました。詳細は変更されています。

    # ikecert certdb -lv example-protect.oracle.com
    Certificate Slot Name: 0   Type: dsa-sha1
       (Private key in certlocal slot 0)
     Subject Name: <O=Oracle, CN=example-protect.oracle.com>
     Issuer Name: <CN=Oracle CA (Cl B), O=Oracle>
     SerialNumber: 14000D93
       Validity:
          Not Valid Before: 2011 Sep 19th, 21:11:11 GMT
          Not Valid After:  2015 Sep 18th, 21:11:11 GMT
       Public Key Info:
          Public Modulus  (n) (2048 bits): C575A…A5
          Public Exponent (e) (  24 bits): 010001
       Extensions:
          Subject Alternative Names:
                  DNS = example-protect.oracle.com
          Key Usage: DigitalSignature KeyEncipherment
          [CRITICAL]
       CRL Distribution Points:
          Full Name:
             URI = #Ihttp://www.oracle.com/pki/pkismica.crl#i
             DN = <CN=Oracle CA (Cl B), O=Oracle>
          CRL Issuer: 
          Authority Key ID:
          Key ID:              4F … 6B
          SubjectKeyID:        A5 … FD
          Certificate Policies
          Authority Information Access

    CRL Distribution Points エントリに注目してください。URI エントリは、この機関の CRL が Web 上にあることを示しています。DN エントリは、CRL が LDAP サーバー上にあることを示しています。一度、IKE がアクセスすると、CRL は将来に備えてキャッシュに格納されます。

    CRL にアクセスするには、配布ポイントまで到達する必要があります。

  2. 中央の配布ポイントから CRL にアクセスするには、次のメソッドのうちの 1 つを選択します。
    • URI を使用します。

      キーワード use_http をホストの /etc/inet/ike/config ファイルに追加します。たとえば、ike/config ファイルは次のようになります。

      # Use CRL from organization's URI
      use_http
    • Web プロキシを使用します。

      キーワード proxyike/config ファイルに追加します。キーワード proxy は、次のように引数として URL を取ります。

      # Use own web proxy
      proxy "http://proxy1:8080"
    • LDAP サーバーを使用します。

      ホストの /etc/inet/ike/config ファイルの ldap-list キーワードに LDAP サーバーの名前を指定します。LDAP サーバーの名前は、使用する機関にたずねてください。ike/config ファイルのエントリは次のようになります。

      # Use CRL from organization's LDAP
      ldap-list "ldap1.oracle.com:389,ldap2.oracle.com"
      …

    IKE は CRL を取り出し、証明書の期限が切れるまで CRL を保持します。

例 18-3 CRL をローカルの certrldb データベースに貼り付ける

使用する機関の証明書に一元的な配布ポイントが含まれていない場合は、機関の CRL を手動でローカルの certrldb データベースに追加できます。機関の説明に従って CRL をファイルに抽出し、それを ikecert certrldb -a コマンドでデータベースに追加します。

# ikecert certrldb -a < Oracle.Cert.CRL