すべてのプロダクト
Search
ドキュメントセンター

Resource Orchestration Service:ALIYUN::VPC::VpnConnection

最終更新日:Jan 16, 2025

ALIYUN::VPC::VpnConnection は、IPsec-VPN 接続を作成するために使用されます。

構文

{
  "Type": "ALIYUN::VPC::VpnConnection",
  "Properties": {
    "IpsecConfig": Map,
    "Name": String,
    "IkeConfig": Map,
    "HealthCheckConfig": Map,
    "VpnGatewayId": String,
    "CustomerGatewayId": String,
    "RemoteSubnet": String,
    "LocalSubnet": String,
    "EffectImmediately": Boolean,
    "EnableTunnelsBgp": Boolean,
    "RemoteCaCertificate": String,
    "BgpConfig": Map,
    "AutoConfigRoute": Boolean,
    "EnableDpd": Boolean,
    "EnableNatTraversal": Boolean,
    "TunnelOptionsSpecification": List
  }
}

プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

Name

String

いいえ

はい

IPsec-VPN 接続の名前。

名前は 2 ~ 128 文字の長さでなければなりません。文字で始まり、http:// または https:// で始めることはできません。文字、数字、ピリオド(.)、アンダースコア(_)、ハイフン(-) を含めることができます。

IkeConfig

Map

いいえ

はい

フェーズ 1 ネゴシエーションの構成。

詳細については、IkeConfig プロパティをご参照ください。

IpsecConfig

Map

いいえ

はい

フェーズ 2 ネゴシエーションの構成。

詳細については、IpsecConfig プロパティをご参照ください。

HealthCheckConfig

Map

いいえ

いいえ

ヘルスチェック構成。

詳細については、HealthCheckConfig プロパティをご参照ください。

VpnGatewayId

String

はい

いいえ

VPN ゲートウェイの ID。

なし。

CustomerGatewayId

String

いいえ

いいえ

カスタマーゲートウェイの ID。

なし。

RemoteSubnet

String

はい

はい

データセンター側の CIDR ブロック。CIDR ブロックは、フェーズ 2 ネゴシエーションで使用されます。

複数の CIDR ブロックはコンマ (,) で区切ります。例: 192.168.3.0/24,192.168.4.0/24。

LocalSubnet

String

はい

はい

仮想プライベートクラウド (VPC) 側の CIDR ブロック。CIDR ブロックは、フェーズ 2 ネゴシエーションで使用されます。

複数の CIDR ブロックはコンマ (,) で区切ります。例: 192.168.1.0/24,192.168.2.0/24。

EffectImmediately

Boolean

いいえ

はい

IPsec ネゴシエーションをすぐに開始するかどうかを指定します。

有効な値:

  • true: IPsec-VPN 接続の構成が完了した後、すぐに IPsec ネゴシエーションを開始します。

  • false (デフォルト): インバウンドトラフィックが検出されたときに IPsec ネゴシエーションを開始します。

EnableTunnelsBgp

Boolean

いいえ

いいえ

トンネルに対して Border Gateway Protocol (BGP) を有効にするかどうかを指定します。

有効な値:

  • true

  • false

RemoteCaCertificate

String

いいえ

いいえ

ピアの認証局 (CA) 証明書。

なし。

BgpConfig

Map

いいえ

はい

トンネルの BGP 構成。

詳細については、BgpConfig プロパティをご参照ください。

AutoConfigRoute

Boolean

いいえ

はい

ルートを自動的に構成するかどうかを指定します。

有効な値:

  • false

  • true (デフォルト)

EnableDpd

Boolean

いいえ

はい

IPsec-VPN 接続に対して Dead Peer Detection (DPD) を有効にするかどうかを指定します。

有効な値:

  • true: IPsec-VPN 接続に対して DPD を有効にします。

    IPsec-VPN 接続の開始側は、DPD パケットを送信して、ピアの存在と可用性を検証します。指定された期間内にピアからフィードバックが受信されない場合、接続は失敗します。ISAKMP セキュリティアソシエーション (SA) と IPsec SA は削除されます。IPsec-VPN トンネルも削除されます。

  • false: IPsec-VPN 接続に対して DPD を無効にします。IPsec-VPN 接続の開始側は、DPD パケットを送信しません。

EnableNatTraversal

Boolean

いいえ

はい

トンネルに対して NAT トラバーサルを有効にするかどうかを指定します。

有効な値:

  • false

  • true

TunnelOptionsSpecification

List

いいえ

いいえ

IPsec-VPN 接続のトンネル構成。

詳細については、TunnelOptionsSpecification プロパティをご参照ください。

IkeConfig 構文

"IkeConfig": {
  "RemoteId": String,
  "Psk": String,
  "IkeVersion": String,
  "IkeMode": String,
  "IkeAuthAlg": String,
  "IkeEncAlg": String,
  "IkePfs": String,
  "IkeLifetime": Integer,
  "LocalId": String
}

IkeConfig プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

RemoteId

String

いいえ

はい

カスタマーゲートウェイの識別子。

識別子は最大 100 文字までです。デフォルト値は、カスタマーゲートウェイのパブリック IP アドレスです。

Psk

String

いいえ

はい

VPN ゲートウェイとカスタマーゲートウェイ間の認証に使用される事前共有キー。

キーは最大 100 文字までです。デフォルトでは、ランダムな値が生成されます。事前共有キーを指定することもできます。

IkeVersion

String

いいえ

はい

Internet Key Exchange (IKE) プロトコルのバージョン。

有効な値:

  • ikev1 (デフォルト)

  • ikev2

IkeMode

String

いいえ

はい

IKEv1 のネゴシエーションモード。

有効な値:

  • main (デフォルト)

  • aggressive

IkeAuthAlg

String

いいえ

はい

フェーズ 1 ネゴシエーションで使用される認証アルゴリズム。

有効な値:

  • md5 (デフォルト)

  • sha1

IkeEncAlg

String

いいえ

はい

フェーズ 1 ネゴシエーションで使用される暗号化アルゴリズム。

有効な値:

  • aes (デフォルト)

  • aes192

  • aes256

  • des

  • 3des

IkePfs

String

いいえ

はい

フェーズ 1 ネゴシエーションで使用される Diffie-Hellman (DH) 鍵交換アルゴリズム。

有効な値:

  • group1

  • group2 (デフォルト)

  • group5

  • group14

  • group24

IkeLifetime

Integer

いいえ

はい

フェーズ 1 ネゴシエーションによって決定される SA ライフタイム。

有効な値: 0 ~ 86400。

デフォルト値: 86400。

LocalId

String

いいえ

はい

VPN ゲートウェイの識別子。

識別子は最大 100 文字までです。デフォルト値は、VPN ゲートウェイのパブリック IP アドレスです。

IpsecConfig 構文

"IpsecConfig": {
  "IpsecAuthAlg": String,
  "IpsecEncAlg": String,
  "IpsecLifetime": Integer,
  "IpsecPfs": String
}

IpsecConfig プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

IpsecAuthAlg

String

いいえ

はい

フェーズ 2 ネゴシエーションで使用される認証アルゴリズム。

有効な値:

  • md5 (デフォルト)

  • sha1

IpsecEncAlg

String

いいえ

はい

フェーズ 2 ネゴシエーションで使用される暗号化アルゴリズム。

有効な値:

  • aes (デフォルト)

  • aes192

  • aes256

  • des

  • 3des

IpsecLifetime

Integer

いいえ

はい

フェーズ 2 ネゴシエーションによって決定される SA ライフタイム。

有効な値: 0 ~ 86400。

単位: 秒。

デフォルト値: 86400。

IpsecPfs

String

いいえ

はい

フェーズ 2 ネゴシエーションで使用される DH 鍵交換アルゴリズム。

有効な値:

  • group1

  • group2 (デフォルト)

  • group5

  • group14

  • group24

HealthCheckConfig 構文

"HealthCheckConfig": {
  "Enable": Boolean,
  "Dip": Boolean,
  "Retry": Integer,
  "Sip": String,
  "Interval": Integer,
  "Policy": String 
}   

HealthCheckConfig プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

Enable

Boolean

いいえ

はい

ヘルスチェック機能を有効にするかどうかを指定します。

有効な値:

  • true

  • false

このプロパティを true に設定する場合は、この表の他のパラメータを指定する必要があります。

Interval

Integer

いいえ

はい

2 回の連続したヘルスチェックの再試行の間隔。

単位: 秒。

Retry

Integer

いいえ

はい

ヘルスチェックの最大再試行回数。

なし。

Dip

String

いいえ

はい

IPsec 接続を介してアクセスできるデータセンターの IP アドレス。

なし。

Sip

String

いいえ

はい

データセンターから IPsec 接続を介してアクセスできる IP アドレス。

なし。

Policy

String

いいえ

いいえ

ヘルスチェックが失敗した場合に公開ルートを撤回するかどうかを指定します。

なし。

BgpConfig 構文

"BgpConfig": {
  "TunnelCidr": String,
  "LocalBgpIp": String,
  "EnableBgp": Boolean,
  "LocalAsn": Number
}   

BgpConfig プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

TunnelCidr

String

いいえ

はい

トンネルの BGP CIDR ブロック。

なし。

LocalBgpIp

String

いいえ

はい

Alibaba Cloud 側の BGP アドレス。

なし。

EnableBgp

Boolean

いいえ

いいえ

トンネルに対して BGP を有効にするかどうかを指定します。

有効な値:

  • true

  • false

デフォルト値: false。

LocalAsn

Number

いいえ

はい

Alibaba Cloud 側のトンネルの自律システム番号 (ASN)。

なし。

TunnelOptionsSpecification 構文

"TunnelOptionsSpecification": [
  {
    "RemoteCaCertificate": String,
    "CustomerGatewayId": String,
    "TunnelBgpConfig": Map,
    "TunnelIpsecConfig": Map,
    "EnableDpd": Boolean,
    "TunnelIkeConfig": Map,
    "EnableNatTraversal": Boolean,
    "Role": String
  }
]

TunnelOptionsSpecification プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

RemoteCaCertificate

String

いいえ

いいえ

トンネルピアの CA 証明書。

このプロパティは、VPN ゲートウェイが ShangMi (SM) タイプの場合にのみ返されます。

CustomerGatewayId

String

いいえ

はい

トンネルに関連付けられているカスタマーゲートウェイの ID。

なし。

TunnelBgpConfig

Map

いいえ

はい

トンネルの BGP 構成。

詳細については、TunnelBgpConfig プロパティをご参照ください。

TunnelIpsecConfig

Map

いいえ

いいえ

フェーズ 2 ネゴシエーションの構成。

詳細については、TunnelIpsecConfig プロパティをご参照ください。

EnableDpd

Boolean

いいえ

はい

IPsec-VPN 接続に対して DPD を有効にするかどうかを指定します。

有効な値:

  • true: IPsec-VPN 接続に対して DPD を有効にします。

    IPsec-VPN 接続の開始側は、DPD パケットを送信して、ピアの存在と可用性を検証します。指定された期間内にピアからフィードバックが受信されない場合、接続は失敗します。ISAKMP SA と IPsec SA は削除されます。IPsec-VPN トンネルも削除されます。

  • false: IPsec-VPN 接続に対して DPD を無効にします。IPsec-VPN 接続の開始側は、DPD パケットを送信しません。

TunnelIkeConfig

Map

いいえ

はい

フェーズ 1 ネゴシエーションの構成。

詳細については、TunnelIkeConfig プロパティをご参照ください。

EnableNatTraversal

Boolean

いいえ

はい

IPsec-VPN 接続に対して NAT トラバーサルを有効にするかどうかを指定します。

有効な値:

  • true: IPsec-VPN 接続に対して NAT トラバーサルを有効にします。

    NAT トラバーサルを有効にすると、開始側は IKE ネゴシエーション中に UDP ポートをチェックせず、IPsec-VPN トンネルに沿って NAT ゲートウェイデバイスを自動的に検出できます。

  • false: IPsec-VPN 接続に対して NAT トラバーサルを無効にします。

Role

String

いいえ

はい

トンネルのロール。

有効な値:

  • master: トンネルはアクティブトンネルです。

  • slave: トンネルはスタンバイトンネルです。

TunnelBgpConfig 構文

"TunnelBgpConfig": {
  "TunnelCidr": String,
  "LocalAsn": Number,
  "LocalBgpIp": String
}   

TunnelBgpConfig プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

TunnelCidr

String

いいえ

はい

トンネルの BGP CIDR ブロック。

なし。

LocalBgpIp

String

いいえ

はい

Alibaba Cloud 側の BGP アドレス。

なし。

LocalAsn

Number

いいえ

はい

Alibaba Cloud 側のトンネルの ASN。

なし。

TunnelIpsecConfig 構文

"TunnelIpsecConfig": {
  "IpsecAuthAlg": String,
  "IpsecEncAlg": String,
  "IpsecPfs": String,
  "IpsecLifetime": Integer
}   

TunnelIpsecConfig プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

IpsecAuthAlg

String

いいえ

はい

IPsec フェーズの認証アルゴリズム。

なし。

IpsecEncAlg

String

いいえ

はい

IPsec フェーズの暗号化アルゴリズム。

なし。

IpsecPfs

String

いいえ

はい

IPsec フェーズのライフタイム。

単位: 秒。

IpsecLifetime

Integer

いいえ

はい

Alibaba Cloud 側のトンネルの ASN。

なし。

TunnelIkeConfig 構文

"TunnelIkeConfig": {
  "Psk": String,
  "IkePfs": String,
  "LocalId": String,
  "IkeVersion": String,
  "IkeAuthAlg": String,
  "IkeMode": String,
  "RemoteId": String,
  "IkeLifetime": Integer,
  "IkeEncAlg": String
}   

TunnelIkeConfig プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

Psk

String

いいえ

はい

事前共有キー。

なし。

IkePfs

String

いいえ

はい

IKE フェーズの DH グループ。

なし。

LocalId

String

いいえ

はい

Alibaba Cloud 側のトンネルの識別子。

なし。

IkeVersion

String

いいえ

はい

IKE プロトコルのバージョン。

有効な値:

  • ikev1

  • ikev2

IKEv1 と比較して、IKEv2 は SA ネゴシエーションプロセスを簡素化し、複数の CIDR ブロックが使用されるシナリオにより適しています。

IkeAuthAlg

String

いいえ

はい

IKE フェーズの認証アルゴリズム。

なし。

IkeMode

String

いいえ

はい

IKE ネゴシエーションモード。

有効な値:

  • main: このモードは、ネゴシエーション中に高いセキュリティを提供します。

  • aggressive: このモードは高速で、成功率が高くなります。

RemoteId

String

いいえ

はい

トンネルピアの識別子。

なし。

IkeLifetime

Integer

いいえ

はい

IKE フェーズのライフタイム。

単位: 秒。

IkeEncAlg

String

いいえ

はい

IKE フェーズの暗号化アルゴリズム。

なし。

戻り値

Fn::GetAtt

  • VpnConnectionId: IPsec-VPN 接続の ID。

  • Status: IPsec-VPN 接続の状態。

  • PeerVpnConnectionConfig: ピアの VPC 接続構成。

YAML 形式

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  LocalSubnet:
    Type: String
    Description: >-
      第 2 フェーズネゴシエーションのためにローカル IDC と相互接続する必要がある VPC 側のネットワークセグメント。

      複数のネットワークセグメントはコンマで区切ります。例: 192.168.1.0/24, 192.168.2.0/24。
  EffectImmediately:
    Type: Boolean
    Description: >-
      現在ネゴシエーションされている IPsec トンネルを削除し、ネゴシエーションを再開するかどうか。値:

      True: 構成が完了したらすぐにネゴシエーションします。

      False (デフォルト): トラフィックが入ってきたときにネゴシエーションします。
    AllowedValues:
      - 'True'
      - 'true'
      - 'False'
      - 'false'
    Default: false
  RemoteSubnet:
    Type: String
    Description: >-
      ローカル IDC のネットワークセグメントは、第 2 フェーズネゴシエーションに使用されます。

      複数のネットワークセグメントはコンマで区切ります。例: 192.168.3.0/24, 192.168.4.0/24。
  CustomerGatewayId:
    Type: String
    Description: ユーザーゲートウェイの ID。
  VpnGatewayId:
    Type: String
    Description: VPN ゲートウェイの ID。
  IpsecConfig:
    Type: Json
    Description: 第 2 フェーズネゴシエーションの構成情報。
  HealthCheckConfig:
    Type: Json
    Description: ヘルスチェック構成を有効にするかどうか。
  IkeConfig:
    Type: Json
    Description: ネゴシエーションの第 1 フェーズの構成情報。
  Name:
    Type: String
    Description: >-
      IPsec 接続の名前。

      長さは 2 ~ 128 文字で、文字または中国語で始める必要があります。数字、ピリオド(.)、アンダースコア(_)、ダッシュ(-) を含めることができますが、http:// または https:// で始めることはできません。
    MinLength: 2
    MaxLength: 128
Resources:
  VpnConnection:
    Type: 'ALIYUN::VPC::VpnConnection'
    Properties:
      LocalSubnet:
        Ref: LocalSubnet
      EffectImmediately:
        Ref: EffectImmediately
      RemoteSubnet:
        Ref: RemoteSubnet
      CustomerGatewayId:
        Ref: CustomerGatewayId
      VpnGatewayId:
        Ref: VpnGatewayId
      IpsecConfig:
        Ref: IpsecConfig
      HealthCheckConfig:
        Ref: HealthCheckConfig
      IkeConfig:
        Ref: IkeConfig
      Name:
        Ref: Name
Outputs:
  Status:
    Description: IPsec 接続の状態。
    Value:
      'Fn::GetAtt':
        - VpnConnection
        - Status
  PeerVpnConnectionConfig:
    Description: ピア VPC 接続構成。
    Value:
      'Fn::GetAtt':
        - VpnConnection
        - PeerVpnConnectionConfig
  VpnConnectionId:
    Description: IPsec 接続の ID。
    Value:
      'Fn::GetAtt':
        - VpnConnection
        - VpnConnectionId

JSON 形式

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "LocalSubnet": {
      "Type": "String",
      "Description": "第 2 フェーズネゴシエーションのためにローカル IDC と相互接続する必要がある VPC 側のネットワークセグメント。\n複数のネットワークセグメントはコンマで区切ります。例: 192.168.1.0/24, 192.168.2.0/24。" // 翻訳済
    },
    "EffectImmediately": {
      "Type": "Boolean",
      "Description": "現在ネゴシエーションされている IPsec トンネルを削除し、ネゴシエーションを再開するかどうか。値:\nTrue: 構成が完了したらすぐにネゴシエーションします。\nFalse (デフォルト): トラフィックが入ってきたときにネゴシエーションします。", // 翻訳済
      "AllowedValues": [
        "True",
        "true",
        "False",
        "false"
      ],
      "Default": false
    },
    "RemoteSubnet": {
      "Type": "String",
      "Description": "ローカル IDC のネットワークセグメントは、第 2 フェーズネゴシエーションに使用されます。\n複数のネットワークセグメントはコンマで区切ります。例: 192.168.3.0/24, 192.168.4.0/24。" // 翻訳済
    },
    "CustomerGatewayId": {
      "Type": "String",
      "Description": "ユーザーゲートウェイの ID。" // 翻訳済
    },
    "VpnGatewayId": {
      "Type": "String",
      "Description": "VPN ゲートウェイの ID。" // 翻訳済
    },
    "IpsecConfig": {
      "Type": "Json",
      "Description": "第 2 フェーズネゴシエーションの構成情報。" // 翻訳済
    },
    "HealthCheckConfig": {
      "Type": "Json",
      "Description": "ヘルスチェック構成を有効にするかどうか。" // 翻訳済
    },
    "IkeConfig": {
      "Type": "Json",
      "Description": "ネゴシエーションの第 1 フェーズの構成情報。" // 翻訳済
    },
    "Name": {
      "Type": "String",
      "Description": "IPsec 接続の名前。\n長さは 2 ~ 128 文字で、文字または中国語で始める必要があります。数字、ピリオド(.)、アンダースコア(_)、ダッシュ(-) を含めることができますが、http:// または https:// で始めることはできません。", // 翻訳済
      "MinLength": 2,
      "MaxLength": 128
    }
  },
  "Resources": {
    "VpnConnection": {
      "Type": "ALIYUN::VPC::VpnConnection",
      "Properties": {
        "LocalSubnet": {
          "Ref": "LocalSubnet"
        },
        "EffectImmediately": {
          "Ref": "EffectImmediately"
        },
        "RemoteSubnet": {
          "Ref": "RemoteSubnet"
        },
        "CustomerGatewayId": {
          "Ref": "CustomerGatewayId"
        },
        "VpnGatewayId": {
          "Ref": "VpnGatewayId"
        },
        "IpsecConfig": {
          "Ref": "IpsecConfig"
        },
        "HealthCheckConfig": {
          "Ref": "HealthCheckConfig"
        },
        "IkeConfig": {
          "Ref": "IkeConfig"
        },
        "Name": {
          "Ref": "Name"
        }
      }
    }
  },
  "Outputs": {
    "Status": {
      "Description": "IPsec 接続の状態。", // 翻訳済
      "Value": {
        "Fn::GetAtt": [
          "VpnConnection",
          "Status"
        ]
      }
    },
    "PeerVpnConnectionConfig": {
      "Description": "ピア VPC 接続構成。", // 翻訳済
      "Value": {
        "Fn::GetAtt": [
          "VpnConnection",
          "PeerVpnConnectionConfig"
        ]
      }
    },
    "VpnConnectionId": {
      "Description": "IPsec 接続の ID。", // 翻訳済
      "Value": {
        "Fn::GetAtt": [
          "VpnConnection",
          "VpnConnectionId"
        ]
      }
    }
  }
}