このページの目次
動的セキュリティ アソシエーション
IKEプロポーザルの設定
動的セキュリティー・アソシエーション(SA)にはIKE構成が必要です。ダイナミックSAでは、最初にIKEを設定し、次にSAを設定します。IKE によって動的 SA が作成され、IPsec のネゴシエートが行われます。IKE 設定は、ピアセキュリティゲートウェイとのセキュア IKE 接続を確立するのに使用するアルゴリズムと鍵を定義します。
1 つまたは複数の IKE プロポーザルを設定できます。各プロポーザルは、IKE ホストとそのピア間の IKE 接続を保護するための IKE 属性のリストです。
IKEプロポーザルを設定するには、 ステートメントを含め proposal
、 階層レベルで名前 [edit services ipsec-vpn ike]
を指定します。
[edit services ipsec-vpn ike] proposal proposal-name { authentication-algorithm (md5 | sha1 | sha-256); authentication-method (ecdsa-signatures-256 | ecdsa-signatures-384 | pre-shared-keys | rsa-signatures); dh-group (group1 | group2 | group5 |group14 | group 15 | group16 | group19 | group20 | group24); encryption-algorithm algorithm; lifetime-seconds seconds; }
Junos FIPSモードでは、Junos OSリリース17.3R1の認証方法にECDSAはサポートされていません。Junos OS Release 17.4R1以降、ECDSAはJunos FIPSモードでサポートされます。
このセクションには、以下のトピックが含まれています。
- IKEプロポーザルの認証アルゴリズムの設定
- IKEプロポーザルの認証方法の設定
- IKEプロポーザルのためのDiffie-Hellmanグループの設定
- IKEプロポーザルの暗号化アルゴリズムの設定
- IKE SAのライフタイムの設定
- 例:IKEプロポーザルの設定
IKEプロポーザルの認証アルゴリズムの設定
IKEプロポーザルの認証アルゴリズムを設定するには、 階層レベルで ステートメントを含め authentication-algorithm
ます [edit services ipsec-vpn ike proposal proposal-name]
。
[edit services ipsec-vpn ike proposal proposal-name] authentication-algorithm (md5 | sha1 | sha-256);
認証アルゴリズムは、以下のいずれかです。
md5
- 128 ビットのダイジェストを生成します。sha1
- 160 ビットのダイジェストを生成します。sha-256
- 256 ビットのダイジェストを生成します。メモ:セキュア ハッシュ アルゴリズム (SHA) のリファレンス情報については、インターネット ドラフト
draft-eastlake-sha2-02.txt
のセキュア ハッシュ アルゴリズム (SHA および HMAC-SHA) ( 2006 年 7 月に終了) を参照してください。
IKEプロポーザルの認証方法の設定
IKEプロポーザルの認証方法を設定するには、 階層レベルで ステートメントを含め authentication-method
ます [edit services ipsec-vpn ike proposal proposal-name]
。
[edit services ipsec-vpn ike proposal proposal-name] authentication-method (ecdsa-signatures-256 | ecdsa-signatures-384 | pre-shared-keys | rsa-signatures);
IKEv1 では、SA の認証方法は、IKE プロポーザルで構成された認証方法の種類に基づいて、リモート ピアとネゴシエートされます。IKEv2 では、このようなネゴシエーションはリモート ピアとは実行されません。代わりに、各IKEピアはローカルで設定されている認証方法を使用します。
IKEv2 の SA では、IKEプロポーザルで認証方法が構成されていない場合、認証方法はデフォルト値の IKEv1 になります。IKEv2 の認証方法を設定する場合は、ポリシーで参照されるすべてのプロポーザルに同じ認証方法を構成しておく必要があります。
認証方法は以下のいずれかです。
Junos FIPSモードでは、Junos OSリリース17.3R1の認証方法にECDSAはサポートされていません。Junos OS Release 17.4R1以降、ECDSAはJunos FIPSモードでサポートされます。
ecdsa-signatures-256
- Junos OSリリース17.3R1以降、MS-MPCおよびMS-MIC向けに、256ビットモジュライ用の楕円曲線デジタル署名アルゴリズム(ECDSA)。ecdsa-signatures-384
—Junos OSリリース17.3R1以降、MS-MPCおよびMS-MIC向け、384ビットモジュール用の楕円曲線デジタル署名アルゴリズム(ECDSA)。pre-shared-keys
- 帯域外メカニズムから派生したキー。キーは交換を認証します。rsa-signatures
- 公開キー アルゴリズム(暗号化とデジタル署名をサポート)。
IKEプロポーザルのためのDiffie-Hellmanグループの設定
Diffie-Hellman は、2 つの当事者が安全でない通信チャネルを介して共有シークレットを確立できるようにする公開キー暗号化スキームです。また、IKE 内でセッション キーを確立するためにも使用されます。
IKEプロポーザルにDiffie-Hellmanグループを設定するには、 階層レベルで ステートメントを含め dh-group
ます [edit services ipsec-vpn ike proposal proposal-name]
。
[edit services ipsec-vpn ike proposal proposal-name] dh-group (group1 | group2 | group5 |group14 | group15 | group16 | group19 | group20 | group24);
グループは以下のいずれかになります。
group1
- IKE が新しい Diffie-Hellman 交換を実行する際に、768 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group2
- IKE が新しい Diffie-Hellman 交換を実行する際に、1024 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group5
- IKE が新しい Diffie-Hellman 交換を実行する際に、1536 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group14
- IKE が新しい Diffie-Hellman 交換を実行する際に、2048 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group19
- IKE が新しい Diffie-Hellman 交換を実行する際に、256 ビットのランダムな楕円曲線Diffie-Hellman グループを使用することを指定します。group20
—-IKE が新しい Diffie-Hellman 交換を実行する際に、384 ビットのランダム楕円曲線Diffie-Hellman グループを使用することを指定します。
Junos OS リリース 17.4R1 以降では、グループ15、グループ 16、グループ 24 も使用できます。
group15
- IKE が新しい Diffie-Hellman 交換を実行する際に、3072 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group16
- IKE が新しい Diffie-Hellman 交換を実行する際に、4096 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group24
- IKE が新しい Diffie-Hellman 交換を実行するときに、256 ビットの素数サブグループで 2048 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。
より多くのビットに基づいて Diffie-Hellman グループを使用すると、より少ないビットに基づいてグループを使用する場合よりも、より安全な IKE トンネルが得られます。ただし、この追加のセキュリティには、追加の処理時間が必要になる場合があります。
IKEプロポーザルの暗号化アルゴリズムの設定
IKEプロポーザルの暗号化アルゴリズムを設定するには、 階層レベルで ステートメントを含め encryption-algorithm
ます [edit services ipsec-vpn ike proposal proposal-name]
。
[edit services ipsec-vpn ike proposal proposal-name] encryption-algorithm algorithm;
暗号化アルゴリズムは、以下のいずれかです。
3des-cbc
- 鍵サイズ 24 バイトの暗号ブロック連鎖暗号化アルゴリズム。そのキー サイズは 192 ビット長です。des-cbc
- 鍵サイズ8バイトの暗号ブロック連鎖暗号化アルゴリズム。そのキー サイズは 56 ビット長です。aes-128-cbc
- 高度暗号化標準(AES)128ビット暗号化アルゴリズム。aes-192-cbc
- 高度暗号化標準(AES)192ビット暗号化アルゴリズム。aes-256-cbc
- 高度暗号化標準(AES)256ビット暗号化アルゴリズム。
データ暗号化標準 (DES) 暗号化アルゴリズムの脆弱鍵および半鍵のリストについては、RFC 2409 、 インターネット鍵交換 (IKE) を参照してください。AES 暗号化アルゴリズムは、スループットがはるかに低いソフトウェア実装を使用するため、DES は引き続き推奨されるオプションです。
の場合 3des-cbc
、最初の 8 バイトは 2 番目の 8 バイトと異なり、2 番目の 8 バイトは 3 番目の 8 バイトと同じである必要があります。
認証プロポーザルを設定しても、 ステートメントを含めない場合、encryption
NULL 暗号化が生成されます。特定のアプリケーションでは、この結果が予想されます。特定の認証値または暗号化値を設定しない場合、Junos OSは、認証と3des-cbc
暗号化に のsha1
デフォルト値を使用します。
IKE SAのライフタイムの設定
ステートメントは lifetime-seconds
、IKE SAのライフタイムを設定します。IKE SA の有効期限が切れると、新しい SA(および SPI)に置き換えられるか、IPsec 接続が終了します。
IKE SAのライフタイムを構成するには、 ステートメントを [edit services ipsec-vpn ike proposal proposal-name]
階層レベルで記述しますlifetime-seconds
。
[edit services ipsec-vpn ike proposal proposal-name] lifetime-seconds seconds;
デフォルトでは、IKE SAのライフタイムは3600秒です。範囲は 180 から 86,400 秒からです。
IKEv1 では、SA のライフタイムは、IKE プロポーザルで設定されたライフタイムのタイプに基づいて、リモート ピアとネゴシエートされます。IKEv2 では、このようなネゴシエーションはリモート ピアとは実行されません。代わりに、各IKEピアはローカルに設定されているライフタイムを使用します。
IKEv2 の SA の場合、ライフタイムはデフォルト値の IKEv1 になるか(IKE プロポーザルで別のライフタイムが設定されていない場合)、IKE ポリシー内のすべての IKEv2 プロポーザルを同じライフタイム値で構成する必要があります。
IKEプロポーザルの場合、Junos OSによって指定されたSAライフタイム値は1つだけです。 IPsecプロポーザルは、異なるメカニズムを使用します。
例:IKEプロポーザルの設定
IKEプロポーザルを設定します。
[edit services ipsec-vpn ike] proposal ike-proposal { authentication-method pre-shared-keys; dh-group group1; authentication-algorithm sha1; encryption-algorithm 3des-cbc; }
IKEポリシーの設定
IKEポリシーは、IKEネゴシエーション時に使用するセキュリティパラメータ(IKEプロポーザル)の組み合わせを定義します。ピアアドレスと、その接続に必要なプロポーザルを定義します。使用する認証方法に応じて、特定のピアの事前共有鍵またはローカル証明書が定義されます。IKE ネゴシエーション中に、IKE は両方のピアで同じ IKE ポリシーを探します。ネゴシエーションを開始したピアは、そのすべてのポリシーをリモートピアに送信し、リモートピアは一致を見つけようとします。
2 つのピアの両方のポリシーに、同じ設定済み属性を含むプロポーザルがある場合、一致します。ライフタイムが同じでない場合は、(ホストとピアからの)2つのポリシー間の短い方のライフタイムが使用されます。設定された事前共有キーも、そのピアと一致する必要があります。
Junos OSリリース11.4以降、IKEv1とIKEv2の両方が、すべてのM Series、MXシリーズ、T Seriesルーターでデフォルトでサポートされています。ネゴシエーションでサポートされる特定の IKE フェーズを設定できます。ただし、IKEv1 のみがサポートされている場合、Junos OS は IKEv2 ネゴシエーションを拒否します。同様に、IKEv2 のみがサポートされている場合、Junos OS はすべての IKEv1 ネゴシエーションを拒否します。
鍵管理プロセス (kmd) デーモンは、ネゴシエーションで使用する IKE のバージョンを決定します。kmd が IKE イニシエーターである場合、デフォルトで IKEv1 を使用し、ネゴシエーション用に設定されたバージョンを保持します。kmd が IKE レスポンダの場合、IKEv1 と IKEv2 の両方からの接続を受け入れます。
各ピアで優先順位付きのプロポーザルを複数作成し、少なくとも 1 つのプロポーザルがリモート ピアのプロポーザルと一致するようにすることができます。
まず、1 つ以上の IKE プロポーザルを設定します。次に、これらのプロポーザルをIKEポリシーに関連付けます。また、使用するプロポーザルを最初から最後までリストすることで、ステートメント内で policy
IKEが使用するプロポーザルのリストに優先順位を付けることもできます。
IKEポリシーを設定するには、 ステートメントを含め policy
、 階層レベルでポリシー名 [edit services ipsec-vpn ike]
を指定します。
[edit services ipsec-vpn ike] policy policy-name { description description; local-certificate identifier; local-id (ipv4_addr ipv4-address | ipv6-addr ipv6-address | key-id identifier); version (1 | 2); mode (aggressive | main); pre-shared-key (ascii-text key | hexadecimal key); proposals [ proposal-names ]; remote-id { any-remote-id; ipv4_addr [ values ]; ipv6_addr [ values ]; key_id [ values ]; } respond-bad-spi max-responses; }
このセクションには、以下のトピックが含まれています。
- IKEフェーズの設定
- IKEポリシーのモードの設定
- IKEポリシーでのプロポーザルの設定
- IKEポリシーの事前共有キーの設定
- IKEポリシーのローカル証明書の設定
- IKEポリシーの説明の設定
- IKE フェーズ 1 ネゴシエーション用のローカル ID とリモート ID の設定
- 無効な SPI 回復の有効化
- 例:IKE ポリシーの設定
IKEフェーズの設定
Junos OSリリース11.4以降、IKEv1とIKEv2の両方が、すべてのM Series、MXシリーズ、T Seriesルーターでデフォルトでサポートされています。ネゴシエーションでサポートされる特定の IKE フェーズを設定できます。ただし、IKEv1 のみがサポートされている場合、Junos OS は IKEv2 ネゴシエーションを拒否します。同様に、IKEv2 のみがサポートされている場合、Junos OS はすべての IKEv1 ネゴシエーションを拒否します。
使用するIKEフェーズを設定するには、 階層レベルで ステートメントを含め version
ます [edit services ipsec-vpn ike policy policy-name]
。
[edit services ipsec-vpn ike policy policy-name] version (1 | 2);
IKEポリシーのモードの設定
IKE ポリシーには、アグレッシブとメインの 2 つのモードがあります。デフォルトでは、メインモードは有効になっています。メイン モードでは、3 つの交換で 6 つのメッセージを使用して IKE SA を確立します。(これらの 3 つのステップは、IKE SA ネゴシエーション、Diffie-Hellman 交換、ピアの認証です)。メインモードでは、ピアがそのIDを隠すこともできます。
アグレッシブ モードでは、認証されたIKE SA と鍵も確立されます。ただし、アグレッシブ モードでは、半分のメッセージを使用し、ネゴシエーション能力が低く、ID 保護は提供されません。ピアは、アグレッシブ モードまたはメイン モードを使用して IKE ネゴシエーションを開始できます。リモートピアは、ピアから送信されたモードを受け入れます。
モード設定は、 オプションが 1
に設定されている場合にのみversion
必要です。
IKEポリシーのモードを設定するには、 ステートメントを含めmode
、 階層レベルで または main
[edit services ipsec-vpn ike policy policy-name]
を指定しますaggressive
。
[edit services ipsec-vpn ike policy policy-name] mode (aggressive | main);
IKEポリシーでのプロポーザルの設定
IKEポリシーの事前共有キーの設定
階層レベルで ステートメント[edit services ipsec-vpn ike proposal proposal-name]
を含めるauthentication-method pre-shared-keys
と、IKEポリシーの事前共有鍵がピアを認証します。事前共有キーは、ピアのキーと一致する必要があります。事前共有鍵には、ASCII テキスト(英数字)鍵または 16 進数鍵を使用できます。
IKEポリシーで事前共有キーを設定するには、 階層レベルで ステートメントとキーを含め pre-shared-key
ます [edit services ipsec-vpn ike policy policy-name]
。
[edit services ipsec-vpn ike policy policy-name] pre-shared-key (ascii-text key | hexadecimal key);
キーは次のいずれかです。
ascii-text
- ASCII テキスト キー。des-cbc
このオプションでは、キーには 8 文字の ASCII 文字が含まれます。3des-cbc
このオプションを使用すると、キーに 24 文字の ASCII 文字が含まれます。hexadecimal
- 16 進数のキー。des-cbc
このオプションを使用すると、キーに 16 個の 16 進文字が含まれます。3des-cbc
このオプションを使用すると、キーには 48 個の 16 進文字が含まれます。
IKEポリシーのローカル証明書の設定
階層レベルで ステートメント[edit services ipsec-vpn ike proposal proposal-name]
を含めるauthentication-method rsa-signatures
と、公開鍵基盤(PKI)デジタル証明書がピアを認証します。IKE 認証フェーズ中にピアに送信されるローカル証明書を識別する必要があります。
IKEポリシーのローカル証明書を構成するには、 ステートメントを [edit services ipsec-vpn ike policy policy-name]
階層レベルで記述local-certificate
します。
[edit services ipsec-vpn ike policy policy-name] local-certificate identifier;
ステートメントはlocal-certificate
、証明機関からエンドエンティティの証明書を取得するために使用される識別子を指定します。IKEポリシーで設定することで、必要に応じて各リモートピアで個別の証明書を柔軟に使用できます。また、階層レベルでステートメントca-profile
[edit security pki]
を構成することによって、証明機関の ID を指定する必要があります。
構成されたプロファイルを使用して、特定のサービス セットで使用する信頼された証明機関のセットを確立できます。これにより、IP サービスを提供するクライアントごとに個別のサービス セットを設定できます。個別のサービス セットにより、IKE セッションのセットを別のセットから論理的に分離したり、異なるローカル ゲートウェイ アドレスを使用したり、 仮想化したりすることができます。信頼された証明機関のセットを構成するには、階層レベルでステートメント trusted-ca
を含めます [edit services service-set service-set-name ipsec-vpn-options]
。
[edit services service-set service-set-name ipsec-vpn-options] trusted-ca ca-profile;
証明書失効リストを構成するには、以下を参照してください。
証明書失効リストの設定
証明書失効リスト (CRL) には、有効期限前に取り消されたデジタル証明書のリストが含まれています。参加ピアがデジタル証明書を使用すると、証明書の署名と有効性がチェックされます。また、最後に発行された CRL を取得し、証明書のシリアル番号がその CRL にないことを確認します。
既定では、証明書失効リストの検証は有効になっています。階層レベルで ステートメント[edit security pki ca-profile ca-profile-name revocation-check]
を含めることで、disable
CRL 検証を無効にすることができます。
デフォルトでは、ルーターがライトウェイト ディレクトリ アクセス プロトコル(LDAP)URL にアクセスできない場合、または有効な証明書失効リストを取得できない場合、証明書の検証は失敗し、IPsec トンネルは確立されません。CRL がダウンロードされていないときにこの動作を無効にして IPsec ピアの認証を許可するには、 階層レベルに ステートメントを記述し disable on-download-failure
ます [edit security pki ca-profile ca-profile-name revocation-check crl]
。
CA 証明書失効リストを使用するには、階層レベルでステートメント [edit security pki ca-profile ca-profile-name revocation-check]
を含めます。詳細については、 『 Junos OS システムの基本設定ガイド 』を参照してください。
IKEポリシーの説明の設定
IKEポリシーのオプションのテキスト記述を指定するには、 階層レベルで ステートメントを含め description
ます [edit services ipsec-vpn ike policy policy-name
。
[edit services ipsec-vpn ike policy policy-name] description description;
IKE フェーズ 1 ネゴシエーション用のローカル ID とリモート ID の設定
オプションで、IKE フェーズ 1 ネゴシエーションで使用するローカル ID を指定できます。ステートメントを local-id
省略すると、ローカルゲートウェイアドレスが使用されます。
Junos OS リリース 19.1R1 以降、ローカル ID タイプの 1 つを識別名として設定し、リモート ID タイプの 1 つを識別名として設定できます。識別名フィールドは、コンテナー文字列値を含むコンテナー、またはワイルドカード文字列値を持つワイルドカードにすることができます。
識別名は、ユーザーを一意的に識別するためにデジタル証明書で使用される名前です。たとえば、識別名は次のようになります。
CN=ユーザー
DC = 例
DC=com
コンテナー・ストリングの場合、フィールドの順序とその値は、ピアのデジタル証明書の識別名と正確に一致する必要があります。例: container ["C=US, ST=CA, L=Sunnyvale, O=Juniper, CN=local_neg, CN=test@juniper.net, OU=QA" "cn=admin, ou=eng, o=example, dc=net" ];
ワイルドカード文字列の場合、設定されたフィールドと値はピアのデジタル証明書の識別名と一致する必要がありますが、DNのフィールドの順序は関係ありません。例: wildcard [ "L=Sunnyvale, O=Juniper" "C=US, ST=CA" ];
1 つ以上のローカル ID を指定するには、 階層レベルで ステートメントを含め local-id
ます [edit services ipsec-vpn ike policy policy-name]
。
[edit services ipsec-vpn ike policy policy-name] local-id (distinguished-name container container-string-values |wildcard wildcard-string-values fqdn fqdn-name ipv4_addr ipv4-address | ipv6-addr ipv6-address | key-id identifier);
IKEポリシーを使用するリモートゲートウェイ識別子を指定することもできます。このポリシーが定義されているリモートゲートウェイアドレスは、デフォルトで追加されます。
1 つ以上のリモート ID を指定するには、 階層レベルで ステートメントを含め remote-id
ます [edit services ipsec-vpn ike policy policy-name]
。
[edit services ipsec-vpn ike policy policy-name] remote-id { distinguished-name container container-string-values |wildcard wildcard-string-values fqdn fqdn-name any-remote-id; ipv4_addr [ values ]; ipv6_addr [ values ]; key_id [ values ]; }
オプションは any-remote-id
、任意のリモートアドレスの接続を許可します。このオプションは、動的エンドポイント構成でのみサポートされており、特定の値と共に構成することはできません。
無効な SPI 回復の有効化
SA(セキュリティ アソシエーション)のピアが同期しなくなると、無効なセキュリティ パラメーター インデックス(SPI)値を持つパケットが送信され、受信ピアはこれらのパケットをドロップします。たとえば、ピアの 1 つが再起動したときに発生する可能性があります。Junos OS リリース 14.2 以降では、SA を再同期することで、無効な SPI のパケットを受信したときにデバイスを回復できます。
無効な SPI 値からのリカバリーを有効にするには、 階層レベルで ステートメントを含め respond-bad-spi
ます [edit services ipsec-vpn ike policy] policy-name
。
[edit services ipsec-vpn ike policy policy-name] respond-bad-spi max-responses;
例:IKE ポリシーの設定
と の 2 つの IKE ポリシーを定義します。 policy 10.1.1.2
policy 10.1.1.1
各ポリシーは、 と proposal-2
に関連付けられていますproposal-1
。以下の構成では、ネゴシエーションに IKEv1 のみを使用します。
[edit services ipsec-vpn] ike { proposal proposal-1 { authentication-method pre-shared-keys; dh-group group1; authentication-algorithm sha1; encryption-algorithm 3des-cbc; lifetime-seconds 1000; } proposal proposal-2 { authentication-method pre-shared-keys; dh-group group2; authentication-algorithm md5; encryption-algorithm des-cbc; lifetime-seconds 10000; } proposal proposal-3 { authentication-method rsa-signatures; dh-group group2; authentication-algorithm md5; encryption-algorithm des-cbc; lifetime-seconds 10000; } policy 10.1.1.2 { mode main; proposals [ proposal-1 proposal-2 ]; pre-shared-key ascii-text example-pre-shared-key; } policy 10.1.1.1 { local-certificate certificate-file-name; local-key-pair private-public-key-file; mode aggressive; proposals [ proposal-2 proposal-3 ] pre-shared-key hexadecimal 0102030abbcd; } }
現在の IKE プロポーザルとポリシー構成に対する更新は、現在の IKE SA には適用されません。更新は新しいIKE SAに適用されます。
新しい更新を直ちに有効にするには、既存の IKE セキュリティ アソシエーションをクリアして、変更された構成で再確立されるようにする必要があります。現在の IKE セキュリティ アソシエーションをクリアする方法については、次を参照してください:クリア サービス ipsec-vpn IKE セキュリティアソシエーション。
IPsecプロポーザルの設定
IPsecプロポーザルは、リモート IPsec ピアとネゴシエートするプロトコルとアルゴリズム(セキュリティ サービス)をリストします。
IPsecプロポーザルを設定するには、 ステートメントを含め proposal
、階層レベルでIPsecプロポーザル名 [edit services ipsec-vpn ipsec]
を指定します。
[edit services ipsec-vpn ipsec] proposal proposal-name { authentication-algorithm (hmac-md5-96 | hmac-sha1-96); description description; encryption-algorithm algorithm; lifetime-seconds seconds; protocol (ah | esp | bundle); }
このセクションでは、以下のトピックについて説明します。
IPsecプロポーザルの認証アルゴリズムの設定
IPsecプロポーザルの認証アルゴリズムを設定するには、 階層レベルで ステートメントを含め authentication-algorithm
ます [edit services ipsec-vpn ipsec proposal proposal-name]
。
[edit services ipsec-vpn ipsec proposal proposal-name] authentication-algorithm (hmac-md5-96 | hmac-sha1-96);
認証アルゴリズムは、以下のいずれかです。
hmac-md5-96
- パケット データを認証するハッシュ アルゴリズム。128 ビットのダイジェストが生成されます。認証に使用されるのは 96 ビットのみです。hmac-sha1-96
- パケット データを認証するハッシュ アルゴリズム。160 ビットのダイジェストが生成されます。認証に使用されるのは 96 ビットのみです。hmac-sha-256-128
- パケット データを認証するハッシュ アルゴリズム。256 ビットの認証子値を生成します。
IPsecプロポーザルで認証アルゴリズムを設定する際は、以下の点に注意してください。
IPsec VPN トンネルの両端に同じ IKE プロポーザルがあり、IPsec プロポーザルが異なる場合、エラーが発生し、このシナリオではトンネルが確立されません。例えば、トンネルの一方の端にhmac-sha- 256-128として認証アルゴリズムで設定されたルーター1が含まれ、トンネルの他方の端にhmac-md5-96として認証アルゴリズムで設定されたルーター2が含まれる場合、VPNトンネルは確立されません。
IPsec VPN トンネルの両端に同じ IKE プロポーザルがあり、IPsec プロポーザルが異なる場合、トンネルの一方の端に、安全性の低いアルゴリズムが選択されていないかチェックするための 2 つの IPsec プロポーザルが含まれている場合、エラーが発生し、トンネルは確立されません。例えば、トンネルの一方の端(ルーター1)でIPsecプロポーザルの2つの認証アルゴリズムをhmac-sha-256-128とhmac-md5-96として設定し、トンネルのもう一方の端(ルーター2)でIPsecプロポーザルのアルゴリズムをhmac-md5-96として設定した場合、トンネルは確立されず、プロポーザルの数が一致しません。
トンネルの両端に 2 つの IPsec プロポーザルを設定する場合、例えば、
authentication-algorithm hmac-sha-256-128
authentication- algorithm hmac-md5-96
トンネルの一方の階層レベルにある[edit services ipsec-vpn ipsec proposal proposal-name]
と のステートメント、ルーター 1(順序を指定するために連続する 2 つのステートメントにアルゴリズムを使用)、authentication-algorithm hmac-md5-96
およびauthentication- algorithm hmac-sha-256-128
トンネルの 1 つの階層レベルで と ステートメント[edit services ipsec-vpn ipsec proposal proposal-name]
を設定すると、ルーター 2(順序を指定するために、 ルーター 1) の場合、プロポーザルの数が同じで、同じアルゴリズム セットが含まれているため、この組み合わせでトンネルが確立されます。ただし、選択された認証アルゴリズムは hmac-md5-96 であり、hmac-sha-256-128 のより強力なアルゴリズムではありません。このアルゴリズムの選択方法は、最初に一致するプロポーザルが選択されるために発生します。また、デフォルトプロポーザルでは、ルーターが高度暗号化標準(AES)暗号化アルゴリズムをサポートしているかどうかに関係なく、aes-cfbアルゴリズムではなく3des-cbcアルゴリズムが選択されます。これは、デフォルトプロポーザルの最初のアルゴリズムが選択されるためです。ここで説明するサンプル シナリオでは、ルーター 2 で、ルーター 1 で指定された順序と同じ順序になるようにプロポーザル内のアルゴリズム設定の順序を逆にすると、認証方法として hmac-sha-256-128 が選択されます。2 つのピアの両方のポリシーにプロポーザルがある場合に、一致が行われたときに最も強いアルゴリズムが最初に考慮されるなど、プロポーザルのマッチングを特定の順序で行う場合は、設定時に IPsec ポリシーのプロポーザルの順序を認識しておく必要があります。
IPsecプロポーザルの記述の設定
IPsecプロポーザルのオプションのテキスト記述を指定するには、 階層レベルで ステートメントを含め description
ます [edit services ipsec-vpn ipsec proposal proposal-name]
。
[edit services ipsec-vpn ipsec proposal proposal-name] description description;
IPsecプロポーザルの暗号化アルゴリズムの設定
IPsecプロポーザルの暗号化アルゴリズムを設定するには、 階層レベルで ステートメントを含め encryption-algorithm
ます [edit services ipsec-vpn ipsec proposal proposal-name]
。
[edit services ipsec-vpn ipsec proposal proposal-name] encryption-algorithm algorithm;
暗号化アルゴリズムは、以下のいずれかです。
3des-cbc
- ブロック サイズが 24 バイトの暗号化アルゴリズム。そのキー サイズは 192 ビット長です。aes-128-cbc
- 高度暗号化標準(AES)128ビット暗号化アルゴリズム。aes-192-cbc
- 高度暗号化標準(AES)192ビット暗号化アルゴリズム。aes-256-cbc
- 高度暗号化標準(AES)256ビット暗号化アルゴリズム。
Junos FIPSモードでは、AES-GCMはJunos OSリリース17.3R1ではサポートされていません。Junos OS リリース 17.4R1 以降、AES-GCM は Junos FIPS モードでサポートされます。
aes-128-gcm
—Junos OSリリース17.3R1以降、MS-MPCおよびMS-MIC向け、ガロア/カウンターモードの高度暗号化規格(AES-GCM)128ビット暗号化アルゴリズム、16オクテット完全性チェック値(ICV)。aes-192-gcm
- Junos OS リリース 17.3R1 以降、MS-MPC および MS-MIC 向けに、ガロア/カウンター モードの高度暗号化標準(AES-GCM)192 ビット暗号化アルゴリズム、16 オクテット完全性チェック値 ICV。aes-256-gcm
—MS-MPCおよびMS-MIC向けのJunos OSリリース17.3R1以降、ガロア/カウンターモードの高度暗号化標準(AES-GCM)256ビット暗号化アルゴリズム、16オクテット完全性チェック値ICV。des-cbc
- ブロック サイズが 8 バイトの暗号化アルゴリズム。そのキー サイズは 48 ビット長です。
データ暗号化標準 (DES) 暗号化アルゴリズムの脆弱鍵および半鍵のリストについては、RFC 2409 、 インターネット鍵交換 (IKE) を参照してください。AES 暗号化アルゴリズムは、スループットがはるかに低いソフトウェア実装を使用するため、DES は引き続き推奨されるオプションです。
の場合 3des-cbc
、最初の 8 バイトは 2 番目の 8 バイトと異なり、2 番目の 8 バイトは 3 番目の 8 バイトと同じである必要があります。
特定の認証または暗号化設定を行わない場合、Junos OSは、認証と3des-cbc
暗号化にデフォルト値 を使用しますsha1
。NULL 暗号化を有効にするには、他のシステム構成に関係なく、階層レベルで ステートメント[edit services ipsec-vpn ipsec proposal proposal-name]
を含めてprotocol esp
、NULL 暗号化アルゴリズムの ESP(カプセル化セキュリティ ペイロード)プロトコルを常に指定する必要があります。
IPsec SAのライフタイムの設定
動的IPsec SAを作成する際には、ハードとソフトの2種類のライフタイムが使用されます。ハードライフタイムは、SAのライフタイムを指定します。ハード ライフタイムから派生したソフト ライフタイムは、SA の有効期限が近づいていることを IPsec キー管理システムに通知します。これにより、鍵管理システムは、ハード ライフタイムが終了する前に新しい SA をネゴシエートすることができます。
IKEv1 では、SA のライフタイムは、IPsec プロポーザルで設定されたライフタイムのタイプに基づいて、リモート ピアとネゴシエートされます。IKEv2 では、このようなネゴシエーションはリモート ピアとは実行されません。代わりに、各IKEピアはローカルに設定されているライフタイムを使用します。
IKEv2 の SA の場合、ライフタイムはデフォルト値の IKEv1 になるか(IPsec プロポーザルで別のライフタイムが設定されていない場合)、IPsec ポリシー内のすべての IKEv2 プロポーザルが同じライフタイム値で設定する必要があります。
ハードライフタイム値を設定するには、 ステートメントを含め lifetime-seconds
、 階層レベルで秒 [edit services ipsec-vpn ipsec proposal proposal-name]
数を指定します。
[edit services ipsec-vpn ipsec proposal proposal-name] lifetime-seconds seconds;
既定の有効期間は 28,800 秒です。範囲は 180 から 86,400 秒からです。
ソフトライフタイムを計算するには、最初にライフタイム差分を計算します。次に、ピアがイニシエーターかレスポンダかに基づいて、ソフトライフタイムが計算されます。
ライフタイム差分の計算は、次のように実行されます。
-
(3*hard-lifetime)/10 が 850 秒より大きい場合、lifetime-diff = 850 秒 + 0 から 850 秒の間のジッター。
メモ:ジッター値は、IPsec SAをインストールするたびに0から850まで増加し、0にリセットされます。
-
(3*hard-lifetime)/10 が 600 秒より大きく 850 より小さい場合、lifetime-diff = 600 秒 + 0 から 45 秒の間のランダム ジッター。
-
(3*hard-lifetime)/10 が 90 秒より大きく 600 より小さい場合、lifetime-diff = 90 秒 + 0 から 45 秒の間のランダム ジッター。
-
(3*hard-lifetime)/10 が 90 秒未満の場合、lifetime-diff = 90 秒 + 0 から 10 秒の間のランダム ジッター。
ライフタイム差分に基づいて、ソフトライフタイムは以下のように計算されます。
-
ライフタイム差分がハードライフタイムよりも大きい場合、ソフトライフタイム = (9*ハードライフタイム)/10
-
イニシエータのソフトライフタイム = ハードライフタイム - ライフタイム差分
-
レスポンダのソフトライフタイム = ハードライフタイム - ライフタイム差分 + 45秒
イニシエータのソフトライフタイムは、常にレスポンダのソフトライフタイムより短くなります。これは、イニシエータのソフトライフタイムが最初に期限切れになり、キー更新プロセスを開始できるようにするためです。
例えば、IPSec SAのハードライフタイムが3600秒に設定されている場合:
-
イニシエータの最大ソフト寿命:3600 - 850(ジッターは0)= 2750秒
-
イニシエータの最小ソフト寿命:3600 - 850 - 850(ジッターは850に等しい)= 1900秒
-
レスポンダの最大ソフト寿命は、3600 - 850(ジッターは0)+ 45 = 2795秒です。
-
レスポンダの最小ソフト寿命:3600 - 850 - 850(ジッターは850に等しい)+ 45 = 1945秒
動的SAのプロトコルの設定
ステートメントは protocol
、動的SAのプロトコルを設定します。IPsec は、ESP と AH の 2 つのプロトコルを使用して IP トラフィックを保護します。ESP プロトコルは、認証、暗号化、またはその両方をサポートできます。強力な認証には、AH プロトコルが使用されます。AH は IP パケットも認証します。このオプションでは bundle
、AH 認証と ESP 暗号化を使用しますが、AH の方が IP パケットの認証を強化するため、ESP 認証は使用されません。
動的SAのプロトコルを設定するには、 ステートメントをインクルードprotocol
し、 ah
esp
、 、または bundle
のオプション[edit services ipsec-vpn ipsec proposal proposal-name]
を 階層レベルで指定します。
[edit services ipsec-vpn ipsec proposal proposal-name] protocol (ah | esp | bundle);
IPsecポリシーの設定
IPsec ポリシーは、IPsec ネゴシエーション時に使用されるセキュリティ パラメーター(IPsec プロポーザル)の組み合わせを定義します。完全転送機密保持(PFS)と、接続に必要なプロポーザルを定義します。IPsec ネゴシエーション中に、IPsec は両方のピアで同じプロポーザルを探します。ネゴシエーションを開始したピアは、そのすべてのポリシーをリモートピアに送信し、リモートピアは一致を見つけようとします。
2 つのピアの両方のポリシーに、同じ設定済み属性を含むプロポーザルがある場合、一致します。ライフタイムが同じでない場合は、(ホストとピアからの)2つのポリシー間の短い方のライフタイムが使用されます。
各ピアで優先度の高いIPsecプロポーザルを複数作成し、少なくとも1つのプロポーザルがリモートピアのプロポーザルと一致するようにすることができます。
まず、1 つ以上の IPsec プロポーザルを設定します。次に、これらのプロポーザルをIPsecポリシーに関連付けます。IPsec がステートメントで使用する policy
プロポーザルのリストに優先順位を付けるには、使用するプロポーザルを最初から最後までリストします。
IPsecポリシーを設定するには、 ステートメントを含め policy
、ポリシー名と、ポリシーに関連付ける1つ以上のプロポーザルを [edit services ipsec-vpn ipsec]
階層レベルで指定します。
[edit services ipsec-vpn ipsec] policy policy-name { description description; perfect-forward-secrecy { keys (group1 | group2 | group5 | group14 |group15 |group16 | group24); } proposals [ proposal-names ]; }
このセクションには、IPsec ポリシーの構成に関連する以下のトピックが含まれています。
IPsecポリシーの説明の設定
IPsecポリシーのオプションのテキスト記述を指定するには、 階層レベルで ステートメントを含め description
ます [edit services ipsec-vpn ipsec policy policy-name]
。
[edit services ipsec-vpn ipsec policy policy-name] description description;
完全転送機密保持の設定
完全転送機密保持(PFS)は、Diffie-Hellman 共有の秘密値によってセキュリティを強化します。PFS では、1 つのキーが侵害されても、前後のキーは以前のキーから派生していないため、安全です。このステートメントはオプションです。
PFSを設定するには、 ステートメントを含め perfect-forward-secrecy
、 階層レベルでDiffie-Hellmanグループ [edit services ipsec-vpn ipsec policy policy-name]
を指定します。
[edit services ipsec-vpn ipsec policy policy-name] perfect-forward-secrecy { keys (group1 | group2 | group5 | group14 | group15 |group16 | group24); }
キーは次のいずれかです。
group1
- IKE が新しい Diffie-Hellman 交換を実行する際に、768 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group2
- IKE が新しい Diffie-Hellman 交換を実行する際に、1024 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group5
- IKE が新しい Diffie-Hellman 交換を実行する際に、1536 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group14
- IKE が新しい Diffie-Hellman 交換を実行する際に、2048 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。
Junos OSリリース17.4R1以降、グループ15、グループ16、グループ24もキーに使用できます。
group15
- IKE が新しい Diffie-Hellman 交換を実行する際に、3072 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group16
- IKE が新しい Diffie-Hellman 交換を実行する際に、4096 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。group24
- IKE が新しい Diffie-Hellman 交換を実行するときに、256 ビットの素数サブグループで 2048 ビットの Diffie-Hellman 素数係数グループを使用することを指定します。
大きい番号のグループは、低い番号のグループよりも高いセキュリティを提供しますが、より多くの処理時間を必要とします。
IPsecポリシーでのプロポーザルの設定
動的エンドポイントのIPsecポリシー
動的エンドポイントのIPsecポリシーは、トンネルのリモートエンドに静的に割り当てられたIPアドレスを持たない動的ピアセキュリティゲートウェイ間のIPsecネゴシエーション中に使用されるセキュリティパラメーター(IPsecプロポーザル)の組み合わせを定義します。IPsec ネゴシエーション中、IPsec ポリシーは、両方のピアで同じ IPsec プロポーザルを探します。ネゴシエーションを開始したピアは、そのすべてのポリシーをリモートピアに送信し、リモートピアは一致を見つけようとします。2 つのピアのポリシーに、同じ設定済み属性を含むプロポーザルがある場合、一致します。ライフタイムが同じでない場合は、(ホストとピアからの)2つのポリシー間の短い方のライフタイムが使用されます。
ポリシーが設定されていない場合は、動的ピアが提案するすべてのポリシーが受け入れられます。
例:IPsec ポリシーの設定
2つのプロポーザル(およびdynamic-2
)に関連付けられたIPsecポリシー dynamic policy-1
を定義します。dynamic-1
[edit services ipsec-vpn ipsec] proposal dynamic-1 { protocol esp; authentication-algorithm hmac-md5-96; encryption-algorithm 3des-cbc; lifetime-seconds 6000; } proposal dynamic-2 { protocol esp; authentication-algorithm hmac-sha1-96; encryption-algorithm 3des-cbc; lifetime-seconds 6000; } policy dynamic-policy-1 { perfect-forward-secrecy { keys group1; } proposals [ dynamic-1 dynamic-2 ]; }
現在の IPsec プロポーザルとポリシー設定に対する更新は、現在の IPsec SA には適用されません。更新は新しいIPsec SAに適用されます。
新しい更新を直ちに有効にする場合は、既存の IPsec セキュリティ アソシエーションをクリアして、変更された構成で再確立されるようにする必要があります。現在のIPsecセキュリティアソシエーションをクリアする方法については、 Junos OSシステムの基本とサービスコマンドリファレンスを参照してください。
変更履歴テーブル
機能のサポートは、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がプラットフォームでサポートされているかどうかを判断します。