ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris の管理: IP サービス Oracle Solaris 11 Information Library (日本語) |
13. DHCP コマンドと DHCP ファイル (リファレンス)
16. IP セキュリティーアーキテクチャー (リファレンス)
フェーズ 1 IKE 交換に使用できるグループおよびアルゴリズムの表示方法
Sun Crypto Accelerator 6000 ボードを検出するように IKE を構成する方法
20. Oracle Solaris の IP フィルタ (概要)
公開鍵証明書を使用すると、通信するシステムは秘密鍵情報を帯域外で共有する必要がなくなります。事前共有鍵とは異なり、公開鍵証明書は、移動体システムなど、番号が変更される可能性があるシステムでも使用できます。
公開鍵証明書はまた、接続されたハードウェア内で生成して格納できます。手順については、「接続したハードウェアを検出するように IKE を構成する」を参照してください。
この手順では、証明書ペアを作成します。非公開鍵はディスク上のローカル証明書データベースに格納され、certlocal サブコマンドを使用して参照できます。証明書ペアの公開部分は、公開証明書データベースに格納されます。これは certdb サブコマンドを使用して参照できます。公開部分をピアシステムと交換します。2 つの証明書を組み合わせたものが、IKE 転送を認証するために使用されます。
自己署名付き証明書は、CA からの公開鍵証明書よりもオーバーヘッドが少ないのですが、あまり簡単には拡大できません。 CA によって発行される証明書とは異なり、自己署名付き証明書は帯域外で検証する必要があります。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。リモートからログインする場合、セキュリティー保護されたリモートログイン用の ssh コマンドを使用してください。例については、例 15-1 を参照してください。
# ikecert certlocal -ks -m keysize -t keytype \ -D dname -A altname \ [-S validity-start-time] [-F validity-end-time] [-T token-ID]
自己署名付き証明書を作成します。
キーのサイズです。keysize は、512、1024、2048、3072、4096 のいずれかです。
使用するアルゴリズムのタイプを指定します。keytype は rsa-sha1、rsa-md5、dsa-sha1 のいずれかです。
証明書主体の X.509 識別名です。dname の一般的な形式は次のとおりです: C=country (国)、O=organization (組織)、OU=organizational unit (組織単位)、CN=common name (共通名)。有効なタグは、C、O、OU、CN です。
証明書の代替名です。altname の形式は tag=value です。有効なタグは IP、DNS、email、および DN です。
証明書の有効期間の開始時間を絶対値または相対値で指定します。
証明書の有効期間の終了時間を絶対値または相対値で指定します。
PKCS #11 ハードウェアトークンで鍵を生成できるようにします。その後、証明書はハードウェアに格納されます。
# 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 などのシステムを識別するためには使用されません。実際、これらは固有の値であるため、正しい証明書がピアシステムにインストールされていることを帯域外で検証する必要があります。
# 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-----
出力は、証明書の公開部分の符号化済みバージョンです。この証明書を電子メールにペーストしても安全です。手順 b で示すように、受け取り側は正しい証明書をインストールしていることを帯域外で検証する必要があります。
To: admin@ja.enigmaexample.com From: admin@us.partyexample.com Message: -----BEGIN X509 CERTIFICATE----- MIIC1TCCAb2gAwIBAgIEfdZgKjANBgkqhkiG9w0BAQUFADAaMRgwFgYDVQQDEw9T a...+ zBGi4QkNdI3f -----END X509 CERTIFICATE------
To: admin@us.partyexample.com From: admin@ja.enigmaexample.com Message: ----BEGIN X509 CERTIFICATE----- MIIC1TCCAb2gAwIBAgIEBl5JnjANBgkqhkiG9w0BAQUFADAaMRgwFgYDVQQDEw9T ... y85m6LHJYtC6 -----END X509 CERTIFICATE-----
# ikecert certdb -a < /tmp/certificate.eml
コマンドは、BEGIN タグと END タグの間にあるテキストをインポートします。
たとえば、ほかの管理者に電話して、自分が持つ公開証明書のハッシュが、ほかの管理者のみが持つ非公開証明書のハッシュに一致することを検証できます。
次の例で、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 システムが有効な証明書ペアを持つことが検証されました。
公開鍵ハッシュは電話で伝えることができます。
前の手順の 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 の非公開証明書のハッシュと一致します。
/etc/inet/ike/config ファイルを編集して、証明書を認識します。
パラメータ cert_trust、remote_addr、および remote_id の値は、リモートシステムの管理者が提供します。
# 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} }
リモートパラメータには、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 …
partym # svcadm enable ipsec/ike enigma # svcadm enable ipsec/ike
次の手順
IPsec ポリシーの設定がまだ完了していない場合、IPsec の手順に戻って IPsec ポリシーを有効にするか更新してください。
認証局 (CA) からの公開鍵証明書では、外部機関とのネゴシエーションが必要となります。この証明書は非常に簡単に拡大できるため、通信するシステムを数多く保護できます。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。リモートからログインする場合、セキュリティー保護されたリモートログイン用の ssh コマンドを使用してください。例については、例 15-1 を参照してください。
コマンドの引数の説明については、手順 b in 「自己署名付き公開鍵証明書により IKE を構成する方法」を参照してください。
# ikecert certlocal -kc -m keysize -t keytype \ -D dname -A altname
# 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-----
# 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-----
証明書要求の送信方法については PKI に問い合わせてください。ほとんどの機関は、Web サイトに送信フォームを掲載しています。フォームの記入に当たっては、その送信が正当なものであることを証明する必要があります。通常は、証明書要求をフォームに貼り付けます。要求を受け取った機関は、それをチェックしてから、次の 2 つの証明書オブジェクトと、証明書失効リストを発行します。
公開鍵証明書 – この証明書は機関に送信した要求に基づいて作成されます。送信した証明書要求も、公開鍵証明書の一部として含まれます。この証明書によって一意に識別されます。
認証局 – 機関の署名。CA によって公開鍵証明書が正規のものであることが確認されます。
証明書失効リスト (CRL) – 機関が無効にした証明書の最新リストです。CRL へのアクセスが公開鍵証明書に組み込まれている場合には、CRL が別個の証明書オブジェクトとして送信されることはありません。
CRL の URI が公開鍵証明書に組み込まれている場合には、IKE は CRL を自動的に取り出すことができます。同様に、DN (LDAP サーバー上のディレクトリ名) エントリが公開鍵証明書に組み込まれている場合には、IKE は、指定された LDAP サーバーから CRL を取得し、キャッシュできます。
公開鍵証明書に組み込まれている URI と DN エントリの例については、「証明書失効リストを処理する方法」を参照してください。
ikecert certdb -a コマンドの -a オプションは、張り付けられたオブジェクトをシステムの適切な証明書データベースに追加します。 詳細については、「IKE と公開鍵証明書」を参照してください。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。リモートからログインする場合、セキュリティー保護されたリモートログイン用の ssh コマンドを使用してください。例については、例 15-1 を参照してください。
# ikecert certdb -a < /tmp/PKIcert.eml
# ikecert certdb -a < /tmp/PKIca.eml
# ikecert certrldb -a Press the Return key Paste the CRL: -----BEGIN CRL----- … -----END CRL---- Press the Return key <Control>-D
PKI 機関が提供する名前を使用します。
# 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 パラメータのすべての引数は同じ行になければなりません。
特に、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 …
適切なオプションを選択します。
PKI 機関が CRL を提供しない場合、キーワード ignore_crls を ike/config ファイルに追加します。
# Trusted root cert … cert_root "C=US, O=ExamplePKI\, Inc., OU=PKI-Example,… ignore_crls …
ignore_crls キーワードにより、IKE は CRL を検索しなくなります。
PKI 機関から CRL の一元的な配布ポイントを知らされている場合は、ike/config ファイルを変更してこの場所を指定できます。
例については、「証明書失効リストを処理する方法」を参照してください。
例 18-2 IKE の構成時における rsa_encrypt の使用
ike/config ファイルで auth_method rsa_encrypt を使用する場合には、ピアの証明書を publickeys データベースに追加する必要があります。
その証明書をリモートシステムの管理者に送信します。
証明書は、電子メールに貼り付けることもできます。
たとえば、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-----
システムごとに、電子メールで送信された証明書をローカルの 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 つの証明書が存在することになります。
ユーザーの公開鍵証明書
CA 証明書
ピアの公開鍵証明書
障害追跡 – IKE ペイロードは 3 つの証明書を持っており、大きくなりすぎて、rsa_encrypt が暗号化できないことがあります。「authorization failed (承認に失敗しました)」や「malformed payload (ペイロードが不正です)」などのエラーは、rsa_encrypt メソッドがペイロード全体を暗号化できないことを示します。証明書を 2 つしか必要としない rsa_sig などのメソッドを使用して、ペイロードのサイズを減らします。
次の手順
IPsec ポリシーの設定がまだ完了していない場合、IPsec の手順に戻って IPsec ポリシーを有効にするか更新してください。
ハードウェア上で公開鍵証明書を生成および格納することは、システム上で公開鍵証明書を生成および格納することと似ています。ハードウェア上では、ikecert certlocal および ikecert certdb コマンドがハードウェアを識別しなければなりません。トークン ID に -T オプションを指定すると、コマンドがハードウェアを識別するようになります。
始める前に
ハードウェアの構成が完了していること。
/etc/inet/ike/config ファイルの pkcs11_path キーワードが別のライブラリを指している場合を除き、ハードウェアは /usr/lib/libpkcs11.so ライブラリを使用します。ライブラリが、 RSA Security Inc. PKCS #11 Cryptographic Token Interface (Cryptoki) に準拠して実装されているライブラリ、すなわち PKCS #11 ライブラリであること。
設定の手順については、「Sun Crypto Accelerator 6000 ボードを検出するように IKE を構成する方法」を参照してください。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。リモートからログインする場合、セキュリティー保護されたリモートログイン用の ssh コマンドを使用してください。例については、例 15-1 を参照してください。
次のオプションのいずれかを選択します。
注 - 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) のマニュアルページを参照してください。
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-----
次のオプションのいずれかを選択します。
証明書は、電子メールに貼り付けることもできます。
証明書要求は、PKI 機関の指示に従って送信します。詳細については、手順 3 of 「CA からの署名付き証明書により IKE を構成する方法」を参照してください。
次のオプションのどちらか 1 つを選択します。
リモートシステムの管理者がパラメータ cert_trust、remote_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} }
手順 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_encrypt を auth_method パラメータの値として使用していた場合、ピアの証明書をハードウェア格納場所に追加します。
機関が証明書要求から生成した証明書を追加して、認証局 (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 つがあります。
CA 機関が CRL を発行しない場合、CRL を無視するように IKE に指示する必要があります。このオプションは、手順 6 in 「CA からの署名付き証明書により IKE を構成する方法」に示されています。
CA から受け取った公開鍵証明書に URI (Uniform Resource Indicator) のアドレスが組み込まれている場合は、URI から CRL にアクセスするように IKE に指示することができます。
CA から受け取った公開鍵証明書に LDAP サーバーの DN (ディレクトリ名) エントリが組み込まれている場合は、LDAP サーバーから CRL にアクセスするように IKE に指示することができます。
CRL は ikecert certrldb コマンドへの引数として指定できます。例については、例 18-3 を参照してください。
次の手順に、中央の配布ポイントから CRL を使用するように IKE に指示する手順を示します。
# ikecert certdb -lv certspec
IKE 証明書データベースにある証明書を一覧表示します。
証明書を冗長モードで一覧表示します。このオプションは慎重に使用してください。
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 にアクセスするには、配布ポイントまで到達する必要があります。
キーワード use_http をホストの /etc/inet/ike/config ファイルに追加します。たとえば、ike/config ファイルは次のようになります。
# Use CRL from organization's URI use_http …
キーワード proxy を ike/config ファイルに追加します。キーワード proxy は、次のように引数として URL を取ります。
# Use own web proxy proxy "http://proxy1:8080"
ホストの /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