사이트 및 사이트 간의 VPN 연결 만들기 - 공유 키 인증 - Azure CLI
이 문서에서는 Azure CLI를 사용하여 온-프레미스 네트워크에서 가상 네트워크로의 S2S(사이트 대 사이트) VPN 게이트웨이 연결을 만드는 방법을 보여 줍니다. 다음 목록에서 다른 옵션을 선택하여 다른 배포 도구를 사용하여 이 구성을 만들 수도 있습니다.
사이트 간 VPN 게이트웨이 연결은 IPsec/IKE(IKEv1 또는 IKEv2) VPN 터널을 통해 온-프레미스 네트워크를 Azure 가상 네트워크에 연결하는 데 사용됩니다. 이 연결 유형은 할당된 외부 연결 공용 IP 주소를 갖고 있는 온-프레미스에 있는 VPN 디바이스를 필요로 합니다. VPN Gateway에 대한 자세한 내용은 VPN Gateway 정보를 참조하세요.
시작하기 전에
구성을 시작하기 전에 환경이 다음 조건을 충족하는지 확인합니다.
- 활성 구독이 있는 Azure 계정이 있습니다. GitHub 계정이 없는 경우 무료로 만들 수 있습니다.
- 온-프레미스 네트워크에 있는 IP 주소 범위에 익숙하지 않은 경우 세부 정보를 제공할 수 있는 다른 사람의 도움을 받아야 합니다. 이 구성을 만들 때 Azure가 온-프레미스 위치로 라우팅하는 IP 주소 범위 접두사를 지정해야 합니다. 온-프레미스 네트워크의 어떤 서브넷도 사용자가 연결하려는 가상 네트워크 서브넷과 중첩될 수 없습니다.
- VPN 디바이스:
- 호환되는 VPN 디바이스 및 이 디바이스를 구성할 수 있는 사람이 있는지 확인합니다. 호환되는 VPN 디바이스 및 디바이스 구성에 대한 자세한 내용은 VPN 디바이스 정보를 참조하세요.
- VPN 디바이스가 활성-활성 모드 게이트웨이를 지원하는지 확인합니다. 이 문서에서는 고가용성 연결에 권장되는 활성-활성 모드 VPN Gateway를 만듭니다. 활성-활성 모드는 두 게이트웨이 VM 인스턴스가 모두 활성 상태임을 지정합니다. 이 모드에는 각 게이트웨이 VM 인스턴스에 대해 하나씩 두 개의 공용 IP 주소가 필요합니다. VPN 디바이스를 구성하여 각 게이트웨이 VM 인스턴스의 IP 주소에 연결하도록 합니다.
VPN 디바이스가 이 모드를 지원하지 않으면 게이트웨이에 대해 이 모드를 사용하도록 설정하지 마세요. 자세한 내용은 프레미스 간 및 VNet 간 연결을 위한 고가용성 연결 디자인 및 활성-활성 모드 VPN Gateway 정보를 참조하세요.
Azure Cloud Shell에서 Bash 환경을 사용합니다. 자세한 내용은 Azure Cloud Shell의 Bash에 대한 빠른 시작을 참조하세요.
CLI 참조 명령을 로컬에서 실행하려면 Azure CLI를 설치합니다. Windows 또는 macOS에서 실행 중인 경우 Docker 컨테이너에서 Azure CLI를 실행하는 것이 좋습니다. 자세한 내용은 Docker 컨테이너에서 Azure CLI를 실행하는 방법을 참조하세요.
로컬 설치를 사용하는 경우 az login 명령을 사용하여 Azure CLI에 로그인합니다. 인증 프로세스를 완료하려면 터미널에 표시되는 단계를 수행합니다. 다른 로그인 옵션은 Azure CLI를 사용하여 로그인을 참조하세요.
메시지가 표시되면 처음 사용할 때 Azure CLI 확장을 설치합니다. 확장에 대한 자세한 내용은 Azure CLI에서 확장 사용을 참조하세요.
az version을 실행하여 설치된 버전과 종속 라이브러리를 찾습니다. 최신 버전으로 업그레이드하려면 az upgrade를 실행합니다.
- 이 문서에는 Azure CLI 버전 2.0 이상이 필요합니다. Azure Cloud Shell을 사용하는 경우 최신 버전이 이미 설치되어 있습니다.
구독에 연결
CLI를 로컬로 실행하기로 선택하는 경우 구독에 연결합니다. 브라우저에서 Azure Cloud Shell을 사용하는 경우 구독에 연결할 필요가 없습니다. 그러나 연결한 후 올바른 구독을 사용하고 있는지 확인할 수 있습니다.
az login 명령을 사용하여 Azure 구독에 로그인하고 화면의 지시를 따릅니다. 로그인에 대한 자세한 내용은 Azure CLI 시작을 참조하세요.
az login
Azure 구독이 두 개 이상인 경우 계정의 구독을 나열합니다.
az account list --all
사용할 구독을 지정합니다.
az account set --subscription <replace_with_your_subscription_id>
리소스 그룹 만들기
다음 예제에서는 'eastus' 위치에 'TestRG1'이라는 리소스 그룹을 만듭니다. 가상 네트워크를 만들려는 지역에 이미 리소스 그룹이 있는 경우 대신 사용할 수 있습니다.
az group create --name TestRG1 --location eastus
가상 네트워크 만들기
아직 가상 네트워크가 없으면 az network vnet create 명령을 사용하여 만듭니다. 가상 네트워크를 만들 때 지정하는 주소 공간이 온-프레미스 네트워크에 있는 주소 공간과 겹치지 않는지 확인하세요.
참고 항목
이 가상 네트워크가 온-프레미스 위치에 연결하려면 온-프레미스 네트워크 관리자와 협력하여 이 가상 네트워크에 특별히 사용할 수 있는 IP 주소 범위를 개척해야 합니다. VPN 연결의 양쪽 모두에 중복 주소 범위가 있는 경우 트래픽이 예상대로 라우팅되지 않습니다. 또한 이 가상 네트워크를 다른 가상 네트워크에 연결하려는 경우 주소 공간이 다른 가상 네트워크와 겹칠 수 없습니다. 이에 따라 네트워크 구성을 적절히 계획하도록 주의해야 합니다.
다음 예제에서는 'VNet1'이라는 가상 네트워크와 'Subnet1'이라는 서브넷을 만듭니다.
az network vnet create --name VNet1 --resource-group TestRG1 --address-prefix 10.1.0.0/16 --location eastus --subnet-name Subnet1 --subnet-prefix 10.1.0.0/24
게이트웨이 서브넷 만들기
가상 네트워크 게이트웨이 리소스는 GatewaySubnet이라는 특정 서브넷에 배포됩니다. 게이트웨이 서브넷은 가상 네트워크를 구성할 때 지정하는 가상 네트워크 IP 주소 범위에 속합니다.
GatewaySubnet이라는 서브넷이 없는 경우 VPN 게이트웨이를 만들 때 실패합니다. /27(이상)을 사용하는 게이트웨이 서브넷을 만드는 것이 좋습니다. 예를 들어 /27 또는 /26입니다. 자세한 내용은 VPN Gateway 설정 - 게이트웨이 서브넷을 참조하세요.
az network vnet subnet create 명령을 사용하여 게이트웨이 서브넷을 만듭니다.
az network vnet subnet create --address-prefix 10.1.255.0/27 --name GatewaySubnet --resource-group TestRG1 --vnet-name VNet1
Important
게이트웨이 서브넷의 NSG(네트워크 보안 그룹)는 지원되지 않습니다. 네트워크 보안 그룹을 이 서브넷에 연결하면 가상 네트워크 게이트웨이(VPN 및 ExpressRoute 게이트웨이)가 예상대로 작동하지 않을 수 있습니다. 네트워크 보안 그룹에 관한 자세한 내용은 네트워크 보안 그룹이란?을 참조하세요.
로컬 네트워크 게이트웨이 만들기
로컬 네트워크 게이트웨이는 일반적으로 온-프레미스 위치를 가리킵니다. Azure가 참조할 수 있는 사이트 이름을 지정한 다음, 연결을 만들 온-프레미스 VPN 디바이스의 IP 주소를 지정합니다. 또한 VPN Gateway를 통해 VPN 디바이스로 라우팅될 IP 주소 접두사를 지정합니다. 사용자가 지정하는 주소 접두사는 온-프레미스 네트워크에 있는 접두사입니다. 온-프레미스 네트워크가 변경되면 이러한 접두사를 쉽게 업데이트할 수 있습니다.
다음 값을 사용합니다.
- --gateway-ip-address는 온-프레미스 VPN 디바이스의 IP 주소입니다.
- --local-address-prefixes는 온-프레미스 주소 공간입니다.
az network local-gateway create 명령을 사용하여 주소 접두사가 여러 개인 로컬 네트워크 게이트웨이를 추가합니다.
az network local-gateway create --gateway-ip-address 203.0.133.8 --name Site1 --resource-group TestRG1 --local-address-prefixes 192.168.1.0/24 192.168.3.0/24
공용 IP 주소 요청
VPN Gateway에는 공용 IP 주소가 있어야 합니다. 활성-활성 게이트웨이(권장)를 만들려면 두 개의 공용 IP 주소를 요청해야 합니다. 활성-활성 게이트웨이 구성에 대한 자세한 내용은 먼저 IP 주소 리소스를 요청한 다음 가상 네트워크 게이트웨이를 만들 때 참조하세요. VPN Gateway를 만들 때 IP 주소가 리소스에 할당됩니다. 게이트웨이를 삭제하고 다시 만드는 경우에만 공용 IP 주소가 변경됩니다. VPN Gateway의 크기 조정, 다시 설정 또는 기타 내부 유지 관리/업그레이드 시에는 변경되지 않습니다. 기본 게이트웨이 SKU를 사용하여 VPN Gateway를 만들려면 다음 값으로 공용 IP 주소를 요청합니다 --allocation-method Dynamic --sku Basic
.
az network public-ip create 명령을 사용하여 공용 IP 주소를 요청합니다.
az network public-ip create --name VNet1GWpip1 --resource-group TestRG1 --allocation-method Static --sku Standard --version IPv4 --zone 1 2 3
활성-활성 게이트웨이(권장)를 만들려면 두 번째 공용 IP 주소를 요청합니다.
az network public-ip create --name VNet1GWpip2 --resource-group TestRG1 --allocation-method Static --sku Standard --version IPv4 --zone 1 2 3
VPN 게이트웨이 만들기
가상 네트워크 VPN Gateway 만들기. 종종 선택한 게이트웨이 SKU에 따라 게이트웨이를 만드는 데 45분 이상 걸릴 수 있습니다.
다음 값을 사용합니다.
- 사이트 간 구성에 대한 --gateway-type은 Vpn입니다. 게이트웨이 유형은 항상 구현하는 구성에 따라 다릅니다. 자세한 내용은 게이트웨이 유형을 참조하세요.
- --vpn-type은 RouteBased입니다.
- 사용할 게이트웨이 SKU를 선택합니다. 특정 SKU에 대한 구성 제한이 있습니다. 자세한 내용은 게이트웨이 SKU를 참조하세요.
az network vnet-gateway create 명령을 사용하여 VPN Gateway를 만듭니다. '--no-wait' 매개 변수를 사용하여 이 명령을 실행하면 피드백 또는 출력이 보이지 않습니다. 이 매개 변수는 백그라운드에서 게이트웨이를 만드는 것을 허용합니다. SKU에 따라 게이트웨이를 만드는 데 45분 이상이 걸립니다.
활성-활성 모드 게이트웨이
az network vnet-gateway create --name VNet1GW --public-ip-addresses VNet1GWpip1 VNet1GWpip2 --resource-group TestRG1 --vnet VNet1 --gateway-type Vpn --vpn-type RouteBased --sku VpnGw2AZ --vpn-gateway-generation Generation2 --no-wait
활성 대기 모드 게이트웨이
az network vnet-gateway create --name VNet1GW --public-ip-addresses VNet1GWpip1 --resource-group TestRG1 --vnet VNet1 --gateway-type Vpn --vpn-type RouteBased --sku VpnGw2AZ --vpn-gateway-generation Generation2 --no-wait
VPN 디바이스 구성
온-프레미스 네트워크에 대한 사이트 간 연결에는 VPN 디바이스가 필요합니다. 이 단계에서는 VPN 디바이스를 구성합니다. VPN 디바이스를 구성할 때 다음 값이 필요합니다.
공유 키: 이 공유 키는 사이트 간 VPN 연결을 만들 때 지정하는 공유 키와 동일한 공유 키입니다. 예에서는 간단한 공유 키를 사용했습니다. 실제로 사용할 키는 좀 더 복잡하게 생성하는 것이 좋습니다.
가상 네트워크 게이트웨이 인스턴스의 공용 IP 주소: 각 VM 인스턴스의 IP 주소를 가져옵니다. 게이트웨이가 활성-활성 모드인 경우 게이트웨이 VM 인스턴스마다 IP 주소가 있습니다. 각 활성 게이트웨이 VM에 대해 하나씩, 총 두 개의 IP 주소로 디바이스를 구성해야 합니다. 활성-대기 모드 게이트웨이에는 IP 주소가 하나만 있습니다.
참고 항목
활성-활성 모드 VPN Gateway를 통한 S2S 연결의 경우, 각 게이트웨이 VM 인스턴스에 터널이 설정되었는지 확인합니다. 단 하나의 게이트웨이 VM 인스턴스에만 터널을 설정하는 경우 유지 관리 중에 연결이 끊어집니다. VPN 디바이스가 이 설정을 지원하지 않으면 대신 게이트웨이를 활성-대기 모드로 구성합니다.
가상 네트워크 게이트웨이의 공용 IP 주소를 찾으려면 az network public-ip list 명령을 사용합니다. 읽기 쉽도록 공용 IP 목록을 테이블 형식으로 표시하도록 출력 형식이 지정됩니다.
az network public-ip list --resource-group TestRG1 --output table
사용하고 있는 VPN 디바이스에 따라 VPN 디바이스 구성 스크립트를 다운로드할 수 있습니다. 자세한 내용은 VPN 디바이스 구성 스크립트 다운로드를 참조하세요.
다음 링크는 추가 구성 정보를 제공합니다.
호환되는 VPN 디바이스에 대한 내용은 VPN 디바이스 정보를 참조하세요.
VPN 디바이스를 구성하기 전에 알려진 디바이스 호환성 문제를 확인합니다.
디바이스 구성 설정에 대한 링크는 확인된 VPN 디바이스를 참조하세요. 당사는 최선을 다하여 디바이스 구성 링크를 제공하고 있지만, 최신 구성 정보는 항상 디바이스 제조업체에 문의하는 것이 가장 좋습니다.
목록에는 테스트한 버전이 표시됩니다. VPN 디바이스의 OS 버전이 목록에 없어도 여전히 호환될 수 있습니다. 디바이스 제조업체에 문의하세요.
VPN 디바이스 구성에 대한 기본 정보는 파트너 VPN 디바이스 구성의 개요를 참조하세요.
디바이스 구성 샘플을 편집하는 방법에 대한 정보는 샘플 편집을 참조하세요.
암호화 요구 사항은 암호화 요구 사항 및 Azure VPN Gateway 정보를 참조하세요.
구성을 완료하는 데 필요한 매개 변수에 대한 자세한 내용은 기본 IPsec/IKE 매개 변수를 참조하세요. 정보에는 IKE 버전, DH(Diffie-Hellman) 그룹, 인증 방법, 암호화 및 해시 알고리즘, SA(보안 연결) 수명, PFS( 완전 순방향 비밀성) 및 DPD(데드 피어 감지)가 포함됩니다.
IPsec/IKE 정책 구성 단계는 S2S VPN 및 VNet 간 연결에 대한 사용자 지정 IPsec/IKE 연결 정책 구성을 참조하세요.
여러 정책 기반 VPN 디바이스를 연결하려면 여러 온-프레미스 정책 기반 VPN 디바이스에 VPN 게이트웨이 연결을 참조하세요.
VPN 연결 만들기
가상 네트워크 게이트웨이와 온-프레미스 VPN 디바이스 사이의 사이트 간 VPN 연결을 만듭니다. VPN 디바이스에 구성된 공유 키 값과 일치하도록 공유 키 값에 특히 주의해야 합니다.
az network vpn-connection create 명령을 사용하여 연결을 만듭니다. 활성-활성 모드와 같은 고가용성 게이트웨이 구성을 만드는 경우 추가 연결을 만듭니다.
az network vpn-connection create --name VNet1toSite1 --resource-group TestRG1 --vnet-gateway1 VNet1GW -l eastus --shared-key abc123 --local-gateway2 Site1
잠시 후, 연결이 설정됩니다.
VPN 연결 확인
az network vpn-connection show 명령을 사용하여 연결이 성공했는지 확인할 수 있습니다. 예제에서 '--name'은 테스트하려는 연결의 이름을 나타냅니다. 연결이 계속 설정 중이면 연결 상태가 '연결 중'으로 표시됩니다. 연결이 설정되면 상태가 '연결됨'으로 변경됩니다. 환경에 대한 값으로 다음 예제를 수정합니다.
az network vpn-connection show --name <connection-name> --resource-group <resource-group-name>
다른 방법을 사용하여 연결을 확인하려면 VPN Gateway 연결 확인을 참조하세요.
일반 작업
이 섹션에는 사이트 간 구성을 작업할 때 도움이 되는 일반적인 명령이 포함되어 있습니다. CLI 네트워킹 명령의 전체 목록은 Azure CLI - 네트워킹을 참조하세요.
로컬 네트워크 게이트웨이를 보려면
로컬 네트워크 게이트웨이 목록을 보려면 az network local-gateway list 명령을 사용합니다.
az network local-gateway list --resource-group TestRG1
로컬 네트워크 게이트웨이 IP 주소 접두사를 수정하려면 - 게이트웨이 연결 없음
게이트웨이 연결이 없고 IP 주소 접두사를 추가 또는 제거하려는 경우 로컬 네트워크 게이트웨이를 만들 때 사용하는 az network local-gateway create 명령을 사용합니다. 이 명령을 사용하여 VPN 디바이스의 게이트웨이 IP 주소도 업데이트할 수 있습니다. 현재 설정을 덮어쓰려면 로컬 네트워크 게이트웨이의 기존 이름을 사용합니다. 다른 이름을 사용하면 기존 게이트웨이를 덮어쓰지 않고 새 로컬 네트워크 게이트웨이를 만들게 됩니다.
변경할 때마다 변경하려는 접두사뿐 아니라 전체 접두사 목록을 지정해야 합니다. 계속 유지할 접두사만 지정합니다. 이 예에서는 10.0.0.0/24 및 20.0.0.0/24입니다.
az network local-gateway create --gateway-ip-address 23.99.221.164 --name Site2 -g TestRG1 --local-address-prefixes 10.0.0.0/24 20.0.0.0/24
로컬 네트워크 게이트웨이 IP 주소 접두사를 수정하려면 - 기존 게이트웨이 연결
게이트웨이 연결이 있고 IP 주소 접두사를 추가 또는 제거하려는 경우 az network local-gateway update 명령을 사용하여 접두사를 업데이트할 수 있습니다. 이로 인해 VPN 연결에 약간의 가동 중지 시간이 발생합니다. IP 주소 접두사를 수정할 때 VPN Gateway를 삭제할 필요가 없습니다.
변경할 때마다 변경하려는 접두사뿐 아니라 전체 접두사 목록을 지정해야 합니다. 이 예제에서는 10.0.0.0/24 및 20.0.0.0/24가 이미 있습니다. 접두사 30.0.0.0/24 및 40.0.0.0/24를 추가하고 업데이트할 때 접두사 4개를 모두 지정합니다.
az network local-gateway update --local-address-prefixes 10.0.0.0/24 20.0.0.0/24 30.0.0.0/24 40.0.0.0/24 --name VNet1toSite2 -g TestRG1
로컬 네트워크 게이트웨이의 'gatewayIpAddress'를 수정하려면
연결하려는 VPN 디바이스의 공용 IP 주소가 변경된 경우 해당 변경 내용을 반영하도록 로컬 네트워크 게이트웨이를 수정해야 합니다. 기존 VPN Gateway 연결을 제거하지 않고도(있는 경우) 게이트웨이 IP 주소를 변경할 수 있습니다. 게이트웨이 IP 주소를 수정하려면 az network local-gateway update 명령을 사용하여 'Site2' 및 'TestRG1' 값을 사용자 고유의 값으로 바꿉니다.
az network local-gateway update --gateway-ip-address 23.99.222.170 --name Site2 --resource-group TestRG1
출력에서 IP 주소가 올바른지 확인합니다.
"gatewayIpAddress": "23.99.222.170",
공유 키 값을 확인하려면
공유 키 값이 VPN 디바이스 구성에 사용한 값과 동일한지 확인합니다. 동일하지 않은 경우 디바이스의 값을 사용하여 연결을 다시 실행하거나 반환되는 값으로 디바이스를 업데이트합니다. 값이 일치해야 합니다. 공유 키를 보려면 az network vpn-connection-list 명령을 사용합니다.
az network vpn-connection shared-key show --connection-name VNet1toSite2 --resource-group TestRG1
VPN Gateway 공용 IP 주소 보기
가상 네트워크 게이트웨이의 공용 IP 주소를 찾으려면 az network public-ip list 명령을 사용합니다. 이 예제는 읽기 쉽도록 공용 IP 목록을 테이블 형식으로 표시하도록 출력 형식이 지정됩니다.
az network public-ip list --resource-group TestRG1 --output table
다음 단계
- BGP에 대한 내용은 BGP 개요 및 BGP를 구성하는 방법을 참조하세요.
- 강제 터널링에 대한 내용은 강제 터널링 정보를 참조하세요.
- 고가용성 활성-활성 연결에 대한 자세한 내용은 고가용성 크로스-프레미스 및 VNet 간 연결을 참조 하세요.
- 네트워킹 Azure CLI 명령 목록은 Azure CLI를 참조하세요.
- Azure Resource Manager 템플릿을 사용하여 사이트 및 사이트 간의 VPN 연결을 만드는 방법에 대한 자세한 내용은 사이트 및 사이트 간의 VPN 연결 만들기를 참조하세요.
- Azure Resource Manager 템플릿을 사용하여 VNet-VNet VPN 연결을 만드는 방법에 대한 자세한 내용은 HBase 지역 복제 배포를 참조 하세요.