다음을 통해 공유


사이트 및 사이트 간의 VPN 연결에 대한 IPsec/IKE 정책 구성

이 문서에서는 Azure Stack Hub에서 S2S(사이트 대 사이트) VPN 연결에 대한 IPsec/IKE 정책을 구성하는 단계를 설명합니다.

VPN Gateway의 IPsec 및 IKE 정책 매개 변수

IPsec 및 IKE 프로토콜 표준은 다양하게 결합된 다양한 암호화 알고리즘을 지원합니다. 규정 준수 또는 보안 요구 사항을 충족할 수 있도록 Azure Stack Hub에서 지원되는 매개 변수를 확인하려면 IPsec/IKE 매개 변수를 참조하세요.

이 문서에서는 IPsec/IKE 정책을 만들고 구성하고 새 연결 또는 기존 연결에 적용하는 방법에 대한 지침을 제공합니다.

고려 사항

이러한 정책을 사용하는 경우 다음과 같은 중요한 고려 사항에 유의하세요.

  • IPsec/IKE 정책은 표준HighPerformance (경로 기반) 게이트웨이 SKU에서만 작동합니다.

  • 지정된 연결에 대해 하나의 정책 조합만 지정할 수 있습니다.

  • IKE(주 모드)와 IPsec(빠른 모드) 둘 다에 대한 모든 알고리즘 및 매개 변수를 지정해야 합니다. 부분 정책 지정은 허용되지 않습니다.

  • 해당 VPN 디바이스 공급업체 사양을 참조하여 정책이 해당 온-프레미스 VPN 디바이스에서 지원되는지 확인하세요. 정책이 호환되지 않는 경우 사이트 간 연결을 설정할 수 없습니다.

사전 요구 사항

시작하기 전에 다음 필수 조건을 갖추고 있는지 확인합니다.

1부 - IPsec/IKE 정책 만들기 및 설정

이 섹션에서는 사이트 간의 VPN 연결에서 IPsec/IKE 정책을 만들고 업데이트하는 데 필요한 단계를 설명합니다.

  1. 가상 네트워크 및 VPN 게이트웨이를 만듭니다.

  2. 프레미스 간 연결을 위한 로컬 네트워크 게이트웨이를 만듭니다.

  3. 선택한 알고리즘 및 매개 변수를 사용하여 IPsec/IKE 정책을 만듭니다.

  4. IPsec/IKE 정책을 사용하여 IPSec 연결을 만듭니다.

  5. 기존 연결에 대한 IPsec/IKE 정책을 추가/업데이트/제거합니다.

이 문서의 지침은 다음 그림과 같이 IPsec/IKE 정책을 설정하고 구성하는 데 도움이 됩니다.

IPsec/IKE 정책 설정 및 구성

2부 - 지원되는 암호화 알고리즘 및 키 수준

다음 표에는 Azure Stack Hub에서 구성할 수 있는 지원되는 암호화 알고리즘 및 주요 강점이 나와 있습니다.

IPsec/IKEv2 옵션
IKEv2 암호화 AES256, AES192, AES128, DES3, DES
IKEv2 무결성 SHA384, SHA256, SHA1, MD5
DH 그룹 ECP384, DHGroup14, DHGroup2, DHGroup1, ECP256*, DHGroup24*
IPsec 암호화 GCMAES256, GCMAES192, GCMAES128, AES256, AES192, AES128, DES3, DES, 없음
IPsec 무결성 GCMAES256, GCMAES192, GCMAES128, SHA256
PFS 그룹 PFS24, ECP384, ECP256, PFS2048, PFS2, PFS1, PFSMM, 없음
QM SA 수명 (선택 사항: 지정되지 않으면 기본값이 사용됨)
초(정수, 최소 300/기본값 27,000초)
KB(정수, 최소 1,024/기본값 102,400,000KB)
트래픽 선택기 정책 기반 트래픽 선택기는 Azure Stack Hub에서 지원되지 않습니다.

참고

QM SA 수명을 너무 낮게 설정하려면 불필요한 키를 다시 지정해야 하므로 성능이 저하됩니다.

* 이러한 매개 변수는 빌드 2002 이상에서만 사용할 수 있습니다.

  • 온-프레미스 VPN 디바이스 구성은 Azure IPsec/IKE 정책에서 지정한 다음 알고리즘 및 매개 변수가 일치하거나 포함해야 합니다.

    • IKE 암호화 알고리즘(기본 모드/1단계).
    • IKE 무결성 알고리즘(기본 모드/1단계).
    • DH 그룹(기본 모드/1단계).
    • IPsec 암호화 알고리즘(빠른 모드/2단계).
    • IPsec 무결성 알고리즘(빠른 모드/2단계).
    • PFS 그룹(빠른 모드/2단계).
    • SA 수명은 로컬 사양일 뿐이며 일치시킬 필요가 없습니다.
  • GCMAES가 IPsec 암호화 알고리즘으로 사용되는 경우 IPsec 무결성에 대해 동일한 GCMAES 알고리즘 및 키 길이를 선택해야 합니다. 예를 들어 둘 다에 GCMAES128을 사용하세요.

  • 앞의 표에서 각 항목은 다음을 나타냅니다.

    • IKEv2는 기본 모드 또는 1단계에 해당합니다.
    • IPsec은 빠른 모드 또는 2단계에 해당합니다.
    • DH 그룹은 주 모드 또는 1단계에서 사용되는 Diffie-Hellmen 그룹을 지정합니다.
    • PFS 그룹은 빠른 모드 또는 2단계에서 사용되는 Diffie-Hellmen 그룹을 지정합니다.
  • IKEv2 기본 모드 SA 수명은 Azure Stack Hub VPN 게이트웨이에서 28,800초로 고정됩니다.

다음 표에는 사용자 지정 정책에서 지원하는 해당 Diffie-hellman 그룹이 나열되어 있습니다.

Diffie-Hellman 그룹 DHGroup PFSGroup 키 길이
1 DHGroup1 PFS1 768비트 MODP
2 DHGroup2 PFS2 1024비트 MODP
14 DHGroup14
DHGroup2048
PFS2048 2048비트 MODP
19 ECP256* ECP256 256비트 ECP
20 ECP384 ECP384 384비트 ECP
24 DHGroup24* PFS24 2048비트 MODP

* 이러한 매개 변수는 빌드 2002 이상에서만 사용할 수 있습니다.

자세한 내용은 RFC3526RFC5114를 참조하세요.

3부 - IPsec/IKE 정책을 사용하여 새 사이트-사이트 VPN 연결 만들기

이 섹션에서는 IPsec/IKE 정책을 사용하여 사이트-사이트 VPN 연결을 만드는 단계를 안내합니다. 다음 단계에서는 다음 그림과 같이 연결을 만듭니다.

site-to-site-policy

사이트-사이트 VPN 연결을 만들기 위한 자세한 단계별 지침은 사이트-사이트 VPN 연결 만들기를 참조하세요.

1단계 - 가상 네트워크, VPN Gateway 및 로컬 네트워크 게이트웨이 만들기

1. 변수 선언

이 연습에서는 다음 변수를 선언하여 시작합니다. 프로덕션을 구성할 때 자리 표시자를 사용자 고유의 값으로 바꿔야 합니다.

$Sub1 = "<YourSubscriptionName>"
$RG1 = "TestPolicyRG1"
$Location1 = "East US 2"
$VNetName1 = "TestVNet1"
$FESubName1 = "FrontEnd"
$BESubName1 = "Backend"
$GWSubName1 = "GatewaySubnet"
$VNetPrefix11 = "10.11.0.0/16"
$VNetPrefix12 = "10.12.0.0/16"
$FESubPrefix1 = "10.11.0.0/24"
$BESubPrefix1 = "10.12.0.0/24"
$GWSubPrefix1 = "10.12.255.0/27"
$DNS1 = "8.8.8.8"
$GWName1 = "VNet1GW"
$GW1IPName1 = "VNet1GWIP1"
$GW1IPconf1 = "gw1ipconf1"
$Connection16 = "VNet1toSite6"
$LNGName6 = "Site6"
$LNGPrefix61 = "10.61.0.0/16"
$LNGPrefix62 = "10.62.0.0/16"
$LNGIP6 = "131.107.72.22"

2. 구독에 연결하고 새 리소스 그룹 만들기

리소스 관리자 cmdlet을 사용하려면 PowerShell 모드로 전환해야 합니다. 자세한 내용은 PowerShell을 사용하여 Azure Stack Hub에 사용자로 연결을 참조하세요.

PowerShell 콘솔을 열고 계정에 연결합니다. 예를 들어:

Connect-AzAccount
Select-AzSubscription -SubscriptionName $Sub1
New-AzResourceGroup -Name $RG1 -Location $Location1

3. 가상 네트워크, VPN 게이트웨이 및 로컬 네트워크 게이트웨이 만들기

다음 예제에서는 세 개의 서브넷 및 VPN 게이트웨이와 함께 가상 네트워크 TestVNet1을 만듭니다. 값을 대체하는 경우 게이트웨이 서브넷 GatewaySubnet의 이름을 구체적으로 지정하는 것이 중요합니다. 이름을 다르게 지정하면 게이트웨이 생성이 실패합니다.

$fesub1 = New-AzVirtualNetworkSubnetConfig -Name $FESubName1 -AddressPrefix $FESubPrefix1
$besub1 = New-AzVirtualNetworkSubnetConfig -Name $BESubName1 -AddressPrefix $BESubPrefix1
$gwsub1 = New-AzVirtualNetworkSubnetConfig -Name $GWSubName1 -AddressPrefix $GWSubPrefix1

New-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 -Location $Location1 -AddressPrefix $VNetPrefix11,$VNetPrefix12 -Subnet $fesub1,$besub1,$gwsub1

$gw1pip1 = New-AzPublicIpAddress -Name $GW1IPName1 -ResourceGroupName $RG1 -Location $Location1 -AllocationMethod Dynamic

$vnet1 = Get-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1

$subnet1 = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" `
-VirtualNetwork $vnet1

$gw1ipconf1 = New-AzVirtualNetworkGatewayIpConfig -Name $GW1IPconf1 `
-Subnet $subnet1 -PublicIpAddress $gw1pip1

New-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 `
-Location $Location1 -IpConfigurations $gw1ipconf1 -GatewayType Vpn `
-VpnType RouteBased -GatewaySku VpnGw1

New-AzLocalNetworkGateway -Name $LNGName6 -ResourceGroupName $RG1 `
-Location $Location1 -GatewayIpAddress $LNGIP6 -AddressPrefix `
$LNGPrefix61,$LNGPrefix62

2단계 - IPsec/IKE 정책을 사용하여 사이트 및 사이트 간의 VPN 연결 만들기

1. IPsec/IKE 정책 만들기

이 샘플 스크립트는 다음 알고리즘 및 매개 변수를 사용하여 IPsec/IKE 정책을 만듭니다.

  • IKEv2: AES128, SHA1, DHGroup14
  • IPsec: AES256, SHA256, none, SA 수명 14400초 및 102400000KB
$ipsecpolicy6 = New-AzIpsecPolicy -IkeEncryption AES128 -IkeIntegrity SHA1 -DhGroup DHGroup14 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup none -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000

IPsec으로 GCMAES를 사용하는 경우 IPsec 암호화 및 무결성 모두에 대해 동일한 GCMAES 알고리즘 및 키 길이를 사용해야 합니다.

2. IPsec/IKE 정책을 사용하여 사이트-사이트 VPN 연결 만들기

사이트-사이트 VPN 연결을 만들고 이전에 만든 IPsec/IKE 정책을 적용합니다.

$vnet1gw = Get-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1
$lng6 = Get-AzLocalNetworkGateway -Name $LNGName6 -ResourceGroupName $RG1

New-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1 -VirtualNetworkGateway1 $vnet1gw -LocalNetworkGateway2 $lng6 -Location $Location1 -ConnectionType IPsec -IpsecPolicies $ipsecpolicy6 -SharedKey 'Azs123'

중요

연결에 IPsec/IKE 정책이 지정되면 Azure VPN Gateway는 지정된 암호화 알고리즘 및 특정 연결의 키 강도가 있는 IPsec/IKE 제안만 보내거나 수락합니다. 연결에 대한 온-프레미스 VPN 디바이스가 정확한 정책 조합을 사용하거나 수락하는지 확인합니다. 그렇지 않으면 사이트-사이트 VPN 터널을 설정할 수 없습니다.

4부 - 연결에 대한 IPsec/IKE 정책 업데이트

이전 섹션에서는 기존 사이트 대 사이트 연결에 대한 IPsec/IKE 정책을 관리하는 방법을 보여 줬습니다. 이 섹션에서는 연결에 대해 다음 작업을 안내합니다.

  • 연결의 IPsec/IKE 정책을 표시합니다.
  • IPsec/IKE 정책을 연결에 추가하거나 업데이트합니다.
  • 연결에서 IPsec/IKE 정책을 제거합니다.

참고

IPsec/IKE 정책은 표준고성능 경로 기반 VPN 게이트웨이에서만 지원됩니다. 기본 게이트웨이 SKU에서는 작동하지 않습니다.

1. 연결의 IPsec/IKE 정책 표시

다음 예제는 연결에 대해 IPsec/IKE 정책을 구성하는 방법을 보여 줍니다. 스크립트는 이전 연습에서도 계속됩니다.

$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies

마지막 명령은 연결에 구성된 현재 IPsec/IKE 정책(있는 경우)을 나열합니다. 다음 예제는 연결에 대한 샘플 출력입니다.

SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None

구성된 IPsec/IKE 정책이 없으면 명령은 $connection6.policy 빈 반환을 가져옵니다. IPsec/IKE가 연결에 구성되어 있지 않다는 의미는 아닙니다. 사용자 지정 IPsec/IKE 정책이 없음을 의미합니다. 실제 연결은 온-프레미스 VPN 디바이스 및 Azure VPN Gateway 간에 협상된 기본 정책을 사용합니다.

2. 연결에 대한 IPsec/IKE 정책 추가 또는 업데이트

새 정책을 추가하거나 연결에서 기존 정책을 업데이트하는 단계는 동일합니다. 새 정책을 만든 다음 연결에 새 정책을 적용합니다.

$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1

$newpolicy6 = New-AzIpsecPolicy -IkeEncryption AES128 -IkeIntegrity SHA1 -DhGroup DHGroup14 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup None -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000

$connection6.SharedKey = "AzS123"

Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -IpsecPolicies $newpolicy6

정책이 업데이트된 경우 검사 연결을 다시 가져올 수 있습니다.

$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies

마지막 줄의 출력은 다음 예제와 같습니다.

SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None

3. 연결에서 IPsec/IKE 정책 제거

연결에서 사용자 지정 정책을 제거하면 Azure VPN 게이트웨이가 기본 IPsec/IKE 제안으로 되돌아가 온-프레미스 VPN 디바이스와 재협상합니다.

$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.SharedKey = "AzS123"
$currentpolicy = $connection6.IpsecPolicies[0]
$connection6.IpsecPolicies.Remove($currentpolicy)

Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6

같은 스크립트를 사용하여 연결에서 정책이 제거되었는지 확인할 수 있습니다.

다음 단계