IKE ポリシーの作成

カスタム Internet Key Exchange (IKE) ポリシーを使用することで、IKE ネゴシエーションのフェーズ 1 で使用されるセキュリティパラメータを定義できます。 このフェーズでは、VPNとピアデバイスが認証情報とセキュリティポリシーを交換し、相互認証を行うとともに、フェーズ2のネゴシエーションに使用される安全な通信チャネルを確立します。

IKEv1 は非推奨のプロトコルであり、 IKEv2 を使用することが強く推奨されます。 VPN接続が IKEv1 ポリシーを使用する場合、 IKEv1 は単一のアルゴリズムしかサポートしていないため、関連するIPsecポリシーも1つのアルゴリズムしか含んでいない必要があります。 複数のアルゴリズムを持つ IPsec ポリシーは IKEv1 ではサポートされていない。

一貫したアルゴリズム選択を保証するために、 IBM Cloud VPN ゲートウェイとピアゲートウェイの両方で、IKE と IPsec のアルゴリズムと優先順位を正確に一致させます。 アルゴリズムの選択に影響する要因の詳細については、 サイト間VPN接続におけるIKEとIPsecの暗号化アルゴリズムはどのように選択されるのかを 参照してください

コンソールでIKEポリシーを作成する

コンソールでIKEポリシーを作成するには、以下の手順に従ってください:

  1. 「VPC用VPN」の一覧ページから、「 サイト間ゲートウェイ」>「IKEポリシー 」を選択します。

  2. [ 作成 ] をクリックし、以下の情報を指定してください:

    • 場所- このIKEポリシーに適用する地域を選択してください。
    • 名前 - IKE ポリシーの名前を入力します。
    • リソース・グループ - この IKE ポリシーのリソース・グループを選択します。
    • IKE バージョン- IKE プロトコルのバージョンを選択します。 IKEv1 と IKEv2 の両方をサポートしていないベンダーもある。 ピアベンダーのドキュメントを確認して、どのIKEバージョンがサポートされているかを確認する。
    • Encryption- IKEに使用する暗号化アルゴリズムを選択します。 デフォルトでは、最も強度の低いアルゴリズムが選択されます。 各フィールドで複数の値を選択し、優先順位で並べ替えることができる。 VPNゲートウェイはピアゲートウェイとネゴシエーションを行い、相互にサポートされる最適なアルゴリズムを選択する。
    • Authentication- IKEに使用する認証アルゴリズムを選択します。 デフォルトでは、最も強度の低いアルゴリズムが選択されます。 各フィールドで複数の値を選択し、優先順位で並べ替えることができる。
    • Diffie-Hellman group- IKEで使用するDHグループを選択します。 デフォルトでは、最も低いDHグループが選択される。 複数のDHグループを選択し、優先順位で並び替えることができる。
    • 鍵の有効期間- フェーズ 1 トンネルの有効期間を秒単位で選択します。
  3. 「作成」 をクリックします。

  4. **「VPN 接続の詳細」ページで、対象の IKE ポリシーを使用するように「IKE ポリシー」**フィールドを設定します。

    IKE/IPsecネゴシエーションを成功させるには、各カテゴリ(認証、暗号化、DHグループ)で少なくとも1つの一致するアルゴリズムを両方のピアに設定します。 ピア間でこれらの設定を揃えることで、接続の失敗を避けることができる。

CLI からの IKE ポリシーの作成

開始する前に、 CLI 環境をセットアップします

CLI から IKE ポリシーを作成するには、次のコマンドを入力します

ibmcloud is ike-policy-create IKE_POLICY_NAME AUTHENTICATION_ALGORITHMS DH_GROUPS ENCRYPTION_ALGORITHMS IKE_VERSION [--key-lifetime KEY_LIFETIME] [--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME] [--output JSON] [-q, --quiet]

ここで、

  • IKE_POLICY_NAME- IKEポリシーの名前。
  • AUTHENTICATION_ALGORITHMS- 認証アルゴリズム。 のいずれか: sha256 sha384, sha512, または認証アルゴリズムのカンマ区切りリスト (sha512, sha384, sha256,) のいずれか。アルゴリズムの順番は、ネゴシエーション時の優先度を決定する。
  • DH_GROUPS- ディフィー・ヘルマン群。 のいずれか: 14 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 31, またはDHグループのカンマ区切りリスト(14,15,16,17,18)。グループの順番は、ネゴシエーション中の優先順位を決定する。
  • ENCRYPTION_ALGORITHMS- 暗号化アルゴリズム。 のいずれか: aes128 aes192, aes256, あるいは暗号化アルゴリズムのカンマ区切りリスト (aes256,aes192,aes128)。アルゴリズムの順番は、ネゴシエーション中の優先順位を決定する。
  • IKE_VERSION - IKE プロトコルのバージョン。 12 のいずれか。
  • --key-lifetime- キーの有効期間(秒単位)。 最大: 86400。 最小: 1800。 デフォルト値は 28800です。
  • --resource-group-id- リソースグループのID。 このオプションは --resource-group-name と同時に指定することはできません。
  • --resource-group-name- リソースグループの名前。 このオプションは --resource-group-id と同時に指定することはできません。
  • --output - JSON 形式の出力を指定します。
  • -q, --quiet - 詳細な出力を非表示にします。

md5 および 認証アルゴリズム、 および DHグループ、および 暗号化アルゴリズムは、2022年9月20日に非推奨となり、コンソールではサポートされなくなりました。 sha1 2 5 triple_des

CLIからIKEポリシーを更新する

開始する前に、 CLI 環境をセットアップします

CLI から IKE ポリシーを更新するには、次のコマンドを入力します

ibmcloud is ike-policy-update IKE_POLICY [--name NEW_NAME] [--authentication-algorithms AUTHENTICATION_ALGORITHMS] [--dh-groups DH_GROUPS] [--encryption-algorithms ENCRYPTION_ALGORITHMS] [--authentication-algorithm sha256 | sha384 | sha512] [--dh-group 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 31] [--encryption-algorithm aes128 | aes192 | aes256] [--ike-version 1 | 2] [--key-lifetime KEY_LIFETIME] [--output JSON] [-q, --quiet]

ここで、

  • --name- IKEポリシーの名前。

  • --authentication-algorithms- 認証アルゴリズムのカンマ区切りリスト(推奨)。 アルゴリズムの順序によって、ネゴシエーションにおける優先順位が決まります。

  • --authentication-algorithm- 認証アルゴリズム(非推奨)。 sha256sha384sha512 のいずれか。

  • --dh-groups- DHグループのカンマ区切りリスト(推奨)。 グループの順番によって、交渉中の優先順位が決まる。

  • -dh-group- DHグループ(非推奨)。 141516171819202122232431 のいずれか。

  • --encryption-algorithms- カンマ区切りの暗号化アルゴリズムのリスト(推奨)。 アルゴリズムの順序によって、ネゴシエーションにおける優先順位が決まります。

  • --encryption-algorithm- 暗号化アルゴリズム(非推奨)。 aes128aes192aes256 のいずれか。

  • --ike-version- IKEプロトコルのバージョン。 12 のいずれか。

    同じアルゴリズム・カテゴリーの単数形と配列ベースのプロパティを、1つのコマンドで混在させないでください。

コマンドの例

CLIからIKEポリシーを作成するための authentication algorithmsdh_groupsencryption algorithms の特異値は非推奨です。 代わりに複数のカンマ区切り値を使用する。

  • カンマ区切りの認証アルゴリズム(SHA 512およびSHA 256)、DHグループ(14、15、16、17)、暗号化アルゴリズム(AES 256、AES 192、AES 128)、およびIKEバージョン2を使用して、IKEポリシーを作成します:

    ibmcloud is ike-policy-create my-ike-policy sha512,sha256 14,15,16,17 aes256,aes192,aes128 2
    
  • 単一の認証アルゴリズム(SHA 256)、単一の暗号化アルゴリズム(AES 128)、DHグループ14、およびIKEバージョン2を使用して、IKEポリシーを作成します:

    ibmcloud is ike-policy-create my-ike-policy sha256 14 aes128 2
    
  • 同じパラメータと、有効期間を3600秒に設定したIKEポリシーを作成します:

    ibmcloud is ike-policy-create my-ike-policy sha256 14 aes128 2 --key-lifetime 3600
    
  • 同じパラメータと特定のリソースグループ ID を使用して、IKE ポリシーを作成します:

    ibmcloud is ike-policy-create my-ike-policy sha256 14 aes128 2 --resource-group-id fee82deba12e4c0fb69c3b09d1f12345 --output JSON
    
  • IKEポリシーを更新して、名前を変更し、認証アルゴリズムをSHA 512とSHA 256に、暗号化アルゴリズムをAES 256とAES 192に、DHグループを15と16に変更します。

    ibmcloud is ike-policy-update my-ike-policy --name new-ike-policy --authentication-algorithms sha512,sha256 --encryption-algorithms aes256,aes192 --dh-groups 15,16 --output JSON
    

    IKE/IPsecネゴシエーションを成功させるには、各カテゴリ(認証、暗号化、DHグループ)で少なくとも1つの一致するアルゴリズムを両方のピアに設定します。 ピア間でこれらの設定を揃えることで、接続の失敗を避けることができる。

API を使用した IKE ポリシーの作成

配列ベースのプロパティを使用して複数のアルゴリズムを持つIKEポリシーを作成するには(推奨)、次の手順に従います:

  1. 適切な変数を設定して API 環境をセットアップします。

  2. API コマンドで使用する追加の変数を格納します。次に例を示します。

ResourceGroupId - get resource groups コマンドを使用してリソース・グループ ID を確認してから、変数に設定します。

export ResourceGroupId=<your_resourcegroup_id>
  1. IKEポリシーを作成する:

       curl -X POST "$vpc_api_endpoint/v1/ike_policies?version=$api_version&generation=2" \
         -H "Authorization: Bearer $iam_token" \
         -d '{
            "name": "my-new-ike-policy",
             "authentication_algorithms": ["sha256","sha384","sha512"],
             "encryption_algorithms": ["aes128","aes256"],
             "dh_groups": [14,15,16],
             "ike_version": 2,
             "resource_group": {
              "id": "'$ResourceGroupId'"
            }
          }'
    

IKEネゴシエーションの特異プロパティ authentication_algorithmdh_groupencryption_algorithm は非推奨。 配列ベースのプロパティを使用してIKEポリシーを作成する。 APIを使用する場合のIKEポリシーの単数および配列ベースのアルゴリズムプロパティの詳細については、 複数のIKEおよびIPsecアルゴリズムへの更新を 参照してください。

特異プロパティ(非推奨)を使用してAPIでIKEポリシーを作成するには、以下の手順に従います:

  1. 適切な変数を設定して API 環境をセットアップします。

  2. API コマンドで使用する追加の変数を格納します。次に例を示します。

ResourceGroupId - get resource groups コマンドを使用してリソース・グループ ID を確認してから、変数に設定します。

export ResourceGroupId=<your_resourcegroup_id>
  1. IKEポリシーを作成する:

       curl -X POST "$vpc_api_endpoint/v1/ike_policies?version=$api_version&generation=2" \
         -H "Authorization: Bearer $iam_token" \
         -d '{
            "name": "my-new-ike-policy",
            "dh_group": 14,
            "authentication_algorithm": "sha256",
            "encryption_algorithm": "aes128",
            "ike_version": 2,
            "resource_group": {
              "id": "'$ResourceGroupId'"
            }
          }'
    

APIを使用したIKEポリシーの更新

配列ベースのプロパティを使用してAPIでIKEポリシーを更新するには(推奨)、以下の手順に従います:

  1. 適切な変数を設定して API 環境をセットアップします。

  2. API コマンドで使用する追加の変数を格納します。次に例を示します。

ResourceGroupId - get resource groups コマンドを使用してリソース・グループ ID を確認してから、変数に設定します。

export ResourceGroupId=<your_resourcegroup_id>
  1. IKEポリシーを更新する:

       curl -X PATCH "$vpc_api_endpoint/v1/ike_policies/$ike_policy_id?version=$api_version&generation=2" \
         -H "Authorization: Bearer $iam_token" \
         -d '{
             "name": "my-updated-ike-policy",
             "authentication_algorithms": ["sha512","sha384","sha256"],
             "encryption_algorithms": ["aes256","aes128"],
             "dh_groups":[15,16,14],
             "ike_version": 2,
             "key_lifetime": 3600,
             "resource_group": {
              "id": "'$ResourceGroupId'"
            }
          }'
    

特異プロパティ(非推奨)を使用してAPIでIKEポリシーを更新するには、以下の手順に従います:

IKEポリシーは、非推奨の単数プロパティまたは配列ベースのプロパティを使用して更新できます。 どちらの形式も受け入れられるが、同じアルゴリズムカテゴリの単数形と配列ベースの プロパティを、1つのリクエストの中で混在させてはならない。

  1. 適切な変数を設定して API 環境をセットアップします。

  2. API コマンドで使用する追加の変数を格納します。次に例を示します。

ResourceGroupId - get resource groups コマンドを使用してリソース・グループ ID を確認してから、変数に設定します。

export ResourceGroupId=<your_resourcegroup_id>
  1. IKEポリシーを更新する:

       curl -X PATCH "$vpc_api_endpoint/v1/ike_policies/$ike_policy_id?version=$api_version&generation=2" \
         -H "Authorization: Bearer $iam_token" \
         -d '{
             "name": "my-updated-ike-policy",
             "authentication_algorithm": "sha384",
             "encryption_algorithm": "aes256",
             "dh_group": 15,
             "ike_version": 2,
             "key_lifetime": 3600,
             "resource_group": {
              "id": "'$ResourceGroupId'"
            }
          }'
    

サイト間 VPN ゲートウェイの API の完全なセットを表示するには、 VPC API リファレンスを 参照してください。

Terraform を使用した IKE ポリシーの作成

次の例では、Terraform を使用して IKE ポリシーを作成できます:

   resource "ibm_is_ike_policy" "is_ike_policy" {
     name                     = "my-ike-policy"
     authentication_algorithm = "sha256"
     encryption_algorithm     = "aes128"
     dh_group                 = 14
     ike_version              = 2
   }
  1. 次の例では、Terraform を使用して、配列ベースのプロパティを持つ IKE ポリシーを作成できます(推奨)

       resource "ibm_is_ike_policy" "is_ike_policy" {
         name                     = "my-ike-policy"
         authentication_algorithms = ["sha512", "sha384"]
         encryption_algorithms     = ["aes192", "aes128"]
         dh_groups                 = [15, 16]
         ike_version              = 2
         key_lifetime             = 1800
       }
    
  2. 次の例では、Terraform を使用して、単一のプロパティを持つ IKE ポリシー(非推奨)を作成できます:

       resource "ibm_is_ike_policy" "is_ike_policy" {
         name                     = "my-ike-policy"
         authentication_algorithm = "sha256"
         encryption_algorithm     = "aes128"
         dh_group                 = 14
         ike_version              = 2
       }
    

    1つのリクエスト内で、同じアルゴリズムカテゴリに属する単数形のプロパティと配列ベースのプロパティを混在させないでください。

詳細については、 Terraformレジストリを参照してください。

次のステップ

IKEポリシーを作成したら、必要に応じて次のタスクを実行します: