建立 VPN 閘道
您可以建立IBM Cloud VPN for VPC,以將您的 VPC 安全地連接到另一個專用網絡,例如本地網路或另一個 VPC。
在開始之前,請先查看 VPN 閘道的規劃注意事項 以及 VPN 閘道的已知限制、問題和限制。
在主控台中建立 VPN 閘道
若要使用使用者介面來建立 VPN 閘道,請執行下列動作:
-
從瀏覽器開啟 IBM Cloud 主控台,登入您的帳戶。
-
選取導覽功能表
,然後按一下基礎結構
> 網路 > VPN。
-
確保選取 網站至網站閘道> VPN 閘道 標籤。
-
在 VPC 的 VPN 頁面上,按一下 建立,然後選取 站台對站台 閘道磚。
-
指定下列資訊:
- VPN 閘道名稱-輸入 VPN 閘道的名稱,例如
my-vpn-gateway
。 - 資源群組- 選取 VPN 閘道的資源群組。
- 標籤-選擇性地新增標籤以識別此 VPN 閘道。
- 存取管理標籤-選擇性地將存取管理標籤新增至資源,以協助組織存取控制關係。 存取權管理標籤唯一支援的格式是
key:value
。 如需相關資訊,請參閱 使用標籤控制對資源的存取權。 - 地區-顯示 VPC 所在的地區,以及 VPN 閘道將佈建的位置。
- Virtual Private Cloud-選取 VPN 閘道的 VPC。
- 子網路- 選取要建立 VPN 閘道的子網路。 如需重要子網路資訊,請參閱 規劃考量。
- 模式-選取原則型或路由型 VPN。 如需 VPN 類型的相關資訊,請參閱 VPN 特性。
- VPN 閘道名稱-輸入 VPN 閘道的名稱,例如
-
在 VPC 的 VPN 連線 區段中,開啟交換器以建立此閘道與 VPN 外部網路之間的連線功能。 您也可以在配置閘道後新增 VPN 連線。
-
VPN 連線名稱- 輸入連線名稱,例如
my-connection
。 -
對等節點閘道位址-透過 VPC 外部網路之 VPN 閘道的公用 IP 位址或 FQDN 來指定對等節點裝置。
-
建立模式-選取 雙向 或 僅對等節點。
- 雙向模式會從 VPN 閘道的任一端啟動 IKE 通訊協定協商 (或重新鍵入程序)。
- 僅對等節點 模式容許對等節點起始此 VPN 閘道連線的 IKE 通訊協定協議。 對等節點也負責在建立連線之後起始重設金鑰程序。
如果您的對等節點裝置位於 NAT 裝置之後,且沒有公用 IP 位址,請確保指定 僅對等節點。
-
Preshared key(預設金鑰 )- 指定 VPN 閘道對 VPC 外部網路的驗證金鑰。 預先共用金鑰是十六進位數字的字串,或可列印 ASCII 字元的通行詞組。 若要與大部分同層級閘道類型相容,此字串必須遵循下列規則:
- 可以是數字、小寫或大寫字元的組合,或下列特殊字元:
- + & ! @ # $ % ^ * ( ) . , :
- 字串長度必須為 6-128 個字元。
- 不能以
0x
或0s
開頭。
- 可以是數字、小寫或大寫字元的組合,或下列特殊字元:
-
分配流量(僅限基於路由的 VPN)- 當 VPC 路由的下一躍點是 VPN 連線時,啟用在 VPN 閘道連線的
Up
隧道之間分配流量。 如果不勾選,VPN閘道將使用小型公網IP的隧道作為主出口路徑,只有當主出口路徑被停用時,流量才會走輔助路徑。 有關詳細信息,請參閱 用例 4:為基於路由的 VPN 分配流量。 -
本地子網路 (僅限基於政策的 VPN)- 指定 VPC 中要透過 VPN 通道連接的一個或多個子網路。
-
對等子網路 (僅限政策型 VPN)- 指定要透過 VPN 通道連接的另一個網路中的一個或多個子網路。
不容許本端與同層級子網路之間的子網路範圍重疊。
-
-
在 停用對等節點偵測 區段中,配置 VPN 閘道傳送訊息的方式,以檢查對等節點閘道是否處於作用中。 指定下列資訊:
- 動作-對等節點閘道停止回應時要採取的停用對等節點偵測動作。 例如,如果您要閘道立即重新協議連線,請選取重新啟動。
- Interval (sec)- 檢查對等閘道是否啟動的頻率。 預設情況下,訊息每 2 秒傳送一次。
- Timeout (sec)- 等待對等閘道回應的時間。 根據預設,如果對等閘道在 10 秒內沒有收到回應,就不再視為活動中。
-
在 原則 區段中,指定「網際網路金鑰交換 (IKE)」及「Internet Protocol 安全 (IPsec)」選項,以用於連線的「階段 1」及「階段 2」協議。
- 如果您希望閘道嘗試自動建立連線,請選取自動。
- 如果您需要強制執行特定的安全需求,或者如果其他網路的 VPN 閘道不支援自動協商所嘗試的安全建議,請選擇或建立自訂政策。
您為連線指定的 IKE 和 IPsec 安全性選項,必須與 VPC 外部網路對等閘道上設定的選項相同。
-
在「進階選項」區段中,您可以自訂本端及對等節點 IKE 身分,而不是使用預設 IKE 身分。 最多只能指定一個對等節點 IKE 身分。
對於原則型 VPN 閘道,您最多可以配置一個本端 IKE 身分。 對於路由型 VPN 閘道,如果您想要配置本端 IKE 身分,則必須提供兩個。 您可以為成員提供值,或讓輸入欄位為空。
-
本端 IKE 身分-選取本端 IKE 身分的類型,然後輸入值。 例如,您可以輸入單一 4 個八位元組 IPv4 位址 (
9.168.3.4
)、FQDN (my-vpn.example.com
)、主機名稱 (my-host
) 或 base64-encoded key ID (MTIzNA==
)。-
靜態路由模式由主動-主動模式中的兩個成員組成,其中第一個身分套用至第一個成員,第二個身分套用至第二個成員。 如果您未指定本端 IKE 身分,則類型為 IPv4 位址,且值為成員 VPN 連線通道的公用 IP 位址。
-
原則模式由兩個處於主動-待命模式的成員組成。 本機 IKE 身分適用於活動成員。 如果未指定值,則本機 IKE 身分為 VPN 閘道的公用 IP 位址。
-
-
對等節點 IKE 身分-選取對等節點 IKE 身分的類型,然後輸入其值。 例如,您可以輸入 IPv4 位址 (
9.168.3.4
)、FQDN (my-vpn.example.com
)、主機名稱 (my-host
) 或 base64-encoded key ID (MTIzNA==
)。對等 IKE 身分適用於活動成員。 如果您未指定值,請使用對等節點閘道的 IPv4 位址或 FQDN。
-
從 CLI 建立 VPN 閘道
開始之前,請 設定 CLI 環境。
若要從 CLI 建立 VPN 閘道,請輸入下列指令:
ibmcloud is vpn-gateway-create VPN_GATEWAY_NAME SUBNET
[--mode policy | route]
[--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME]
[--output JSON] [-q, --quiet]
其中:
VPN_GATEWAY_NAME
- VPN 閘道的名稱。
SUBNET
- 子網路的 ID。
--mode
- VPN 閘道的模式。 下列其中一項:
policy
、route
。 --resource-group-id
- 資源群組的 ID。 此選項與
--resource-group-name
互斥。 --resource-group-name
- 資源群組的名稱。 此選項與
--resource-group-id
互斥。 --output
- 以 JSON 格式輸出。
-q, --quiet
- 抑制詳細輸出的選項。
指令範例
-
建立具有特定子網路 ID 的路由型 VPN 閘道:
ibmcloud is vpn-gateway-create my-vpc-gateway fee82deba12e4c0fb69c3b09d1f12345 --mode route
-
使用 Default 資源群組建立原則型 VPN 閘道:
ibmcloud is vpn-gateway-create my-vpc-gateway fee82deba12e4c0fb69c3b09d1f12345 --mode policy --resource-group-name Default
-
透過使用具有 JSON 格式輸出的特定資源群組 ID,建立路由型 VPN 閘道:
ibmcloud is vpn-gateway-create my-vpc-gateway fee82deba12e4c0fb69c3b09d1f12345 --mode route --resource-group-id fee82deba12e4c0fb69c3b09d1f12345 --output JSON
使用 API 建立 VPN 閘道
若要使用 API 來建立原則型 VPN 閘道,請遵循下列步驟:
-
使用正確的變數來設定 API 環境。
-
儲存要在 API 指令中使用的任何其他變數; 例如:
ResourceGroupId
-使用get resource groups
指令尋找資源群組 ID,然後移入變數:
export ResourceGroupId=<your_resourcegroup_id>
SubnetId
-使用get subnet
指令尋找子網路 ID,然後移入變數:
export SubnetId=<your_subnet_id>
-
起始所有變數時,請建立 VPN 閘道:
curl -X POST "$vpc_api_endpoint/v1/vpn_gateways?version=$api_version&generation=2" \ -H "Authorization: $iam_token" \ -d '{ "name": "my-new-vpn-gateway", "mode": "policy", "subnet": { "id": "'$SubnetId'" }, "resource_group": { "id": "'$ResourceGroupId'" } }'
使用 Terraform 建立 VPN 閘道
下列範例使用 Terraform 建立 VPN 閘道:
resource "ibm_is_vpn_gateway" "is_vpn_gateway" {
name = "my-vpn-gateway"
subnet = ibm_is_subnet.is_subnet.id
mode = "route"
}
如需相關資訊,請參閱 Terraform 登錄。
下一步
建立 VPN 閘道之後,您可以:
- 如果您決定使用自訂 IKE 原則而非自動協調,請 建立 IKE 原則。
- 如果您決定使用自訂 IPsec 原則而非自動協調,請 建立 IPsec 原則。
- 如果在佈建 VPN 閘道時尚未建立 VPN 連線,請建立 VPN 連線。 如需相關資訊,請參閱 新增連線至 VPN 閘道。
- 若要建立路由型 VPN,請先 建立路由表,然後 使用 VPN 連線類型建立路由。