MD5 인증 사용
Cloud Router는 경계 Border Gateway Protocol(BGP)을 사용하여 Virtual Private Cloud(VPC) 네트워크와 피어 네트워크 간에 경로를 교환합니다. 기본적으로 Cloud Router BGP 세션은 인증되지 않습니다. 하지만 특정 제품과 함께 Cloud Router를 사용하는 경우 MD5 인증을 사용하도록 BGP 세션을 필요에 따라 구성할 수 있습니다.
MD5 인증을 사용할 수 있는 제품에는 다음이 포함됩니다.
제3자 네트워크 가상 어플라이언스에서 MD5 인증을 사용할 수도 있습니다. 자세한 내용은 Network Connectivity Center 문서의 라우터 어플라이언스를 참조하세요.
MD5 인증을 사용하도록 세션을 구성할 때는 Cloud Router를 구성할 때와 피어 라우터를 구성할 때 사용하는 보안 비밀 공유 키를 제공합니다. 필요한 설정 단계를 완료하면 Cloud Router가 해당 키를 사용하여 BGP 피어를 인증합니다. Cloud Router는 RFC 2385에 설명된 모델을 사용하여 MD5 인증을 적용합니다.
피어를 만들 때 MD5 인증을 추가할 수 있습니다. 또한 기존 세션에 인증을 추가하거나, 세션에 사용되는 키를 변경하거나, 인증을 삭제할 수 있습니다.
시작하기 전에
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Google Cloud CLI를 사용하는 경우 다음 명령어를 실행하여 프로젝트 ID를 설정합니다. 이 페이지의
gcloud
안내에서는 프로젝트 ID가 설정되었다고 가정합니다.gcloud config set project PROJECT_ID
-
다음 명령어를 실행하여 ID가 설정되었는지 확인하세요.
gcloud config list --format='text(core.project)'
인증을 사용하는 세션 만들기
일부 네트워크 연결 제품의 경우 리소스를 만드는 동안 MD5 인증을 사용하도록 BGP 피어를 구성할 수 있습니다. 이러한 제품에는 HA VPN 및 Dedicated Interconnect가 포함됩니다.
자세한 내용은 다음 섹션을 참조하세요.
- 피어 VPN 게이트웨이에 대한 HA VPN 터널 만들기
- Google Cloud 네트워크 사이에 HA VPN 터널 만들기
- VLAN 연결 만들기(Dedicated Interconnect)
Layer 2 Partner Interconnect VLAN 연결을 만드는 경우 먼저 연결을 만든 후 BGP 피어를 업데이트하여 MD5 인증을 추가합니다. BGP 세션을 업데이트하는 동안 인증을 추가하는 방법은 다음 섹션을 참고하세요. Layer 3 연결이 있으면 서비스 제공업체에 안내를 문의하세요.
기존 세션에 인증 추가
기존 BGP 피어에 인증을 추가하려면 다음 절차 중 하나를 따르세요. 인증을 추가할 때 사용하는 키와 피어 라우터에서 사용하는 키가 동일한지 확인합니다.
Google Cloud는 MD5 인증 키를 표시하지 않으며 성공적인 구성 시 키 이름만 표시합니다.
- gcloud 또는 UI를 통해 MD5 인증을 구성하면 Google Cloud가
PEER_NAME-key
형식으로 키 이름을 자동으로 생성합니다. - API를 통해 MD5 인증을 구성하면 키 이름을 지정할 수 있습니다.
콘솔
Google Cloud 콘솔에서 Cloud Router 페이지로 이동합니다.
이름 필드에서 적합한 Cloud Router 이름을 클릭합니다.
라우터 세부정보 페이지에서 수정하려는 BGP 세션의 이름을 클릭합니다.
BGP 세션 세부정보 페이지에서
수정을 선택합니다.MD5 인증을 추가하려면 다음 안내를 따르세요.
- MD5 인증 섹션에서 사용 설정을 선택합니다. 페이지가 업데이트되면서 텍스트 필드가 포함됩니다.
- 보안 키를 입력하거나 새 보안 키를 생성하려면 생성 및 복사를 클릭합니다.
- 키를 기록해 둡니다. 이 페이지에서 나가면 키를 검색할 수 없습니다.
저장을 클릭합니다.
gcloud
gcloud CLI를 사용하여 세션을 업데이트하려면 gcloud compute routers update-bgp-peer
명령어를 사용합니다.
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --region=REGION \ --md5-authentication-key=SECRET_KEY
다음 값을 바꿉니다.
ROUTER_NAME
: Cloud Router의 이름PEER_NAME
: BGP 피어의 이름REGION
: Google Cloud 리전SECRET_KEY
: 보안 비밀 공유 MD5 인증 키
API
API를 사용하여 세션을 업데이트하려면 compute.routers.patch
메서드를 사용합니다. 이 메서드를 사용하여 세션에 인증을 추가하려면 요청은 다음 두 가지 작업을 수행해야 합니다.
md5AuthenticationKeys
배열에 키 항목을 추가하기. 항목을 추가할 때 키 이름과 값을 모두 제공하세요.md5AuthenticationKeyName
필드 값을 포함하도록bgpPeers
배열 업데이트. 이 필드는 키를 이름으로 참조합니다.
md5AuthenticationKeys
배열을 패치할 때는 배열에 있는 각 항목의 name
를 제공해야 합니다(일부 항목을 삭제하려는 것이 아닌 경우).
그러나 각 항목의 key
필드 값을 제공할 필요는 없습니다.
이 값을 생략하면 Cloud Router는 사용된 이전 값을 유지합니다. 이 동작은 키의 보안을 유지하기 위해 설계되었습니다.
일반적으로 배열 항목의 각 필드에 값을 지정해야 하는 다른 패치 메서드와 다릅니다.
bgpPeers
배열을 패치할 때는 모든 항목의 모든 필드에 값을 제공해야 합니다(일부 피어 또는 일부 값을 삭제하기를 원하지 않는다면).
예를 들어 Cloud Router에 MD5 인증을 사용하는 것과 사용하지 않는 피어가 2개 있다고 가정해 봅시다. 첫 번째 피어를 변경 없이 그대로 두고 두 번째 피어에 MD5 인증을 추가하려면 다음과 같은 요청을 사용합니다.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "md5AuthenticationKeys": [ { "name": "KEY_NAME_1", }, { "name": "KEY_NAME_2", "key": "SECRET_KEY" } ], "bgpPeers": [ { "name": "PEER_NAME_1", "md5AuthenticationKeyName": "KEY_NAME_1", "interfaceName": "INTERFACE_NAME_1", "ipAddress": "IP_ADDRESS_1", "peerIpAddress": "PEER_IP_ADDRESS_1", "peerAsn": "PEER_ASN_1" }, { "name": "PEER_NAME_2", "md5AuthenticationKeyName": "KEY_NAME_2", "interfaceName": "INTERFACE_NAME_2", "ipAddress": "IP_ADDRESS_2", "peerIpAddress": "PEER_IP_ADDRESS_2", "peerAsn": "PEER_ASN_2" } ], }
다음 값을 바꿉니다.
PROJECT_ID
: Cloud Router를 포함하는 프로젝트REGION
: Google Cloud 리전ROUTER_NAME
: Cloud Router의 이름KEY_NAME_1
: 현재 (PEER_NAME_1
에서) 사용 중인 키의 이름KEY_NAME_2
:PEER_NAME_2
에 추가할 새 키의 이름. 이름을 기록해 둡니다. 나중에 API를 사용하여 변경하려면 이름이 필요합니다.SECRET_KEY
:PEER_NAME_2
에 추가할 보안 비밀 MD5 인증 키PEER_NAME_1
: 변경되지 않는 BGP 피어의 이름INTERFACE_NAME_1
: 변경되지 않는 BGP 피어링 세션의 인터페이스 이름IP_ADDRESS_1
: 변경되지 않는 피어의 Cloud Router의 IP 주소PEER_IP_ADDRESS_1
: 변경되지 않는 피어의 IP 주소PEER_ASN_1
: 변경되지 않는 피어의 BGP 자율 시스템 번호(ASN)PEER_NAME_2
: MD5 인증을 사용하도록 업데이트할 BGP 피어의 이름INTERFACE_NAME_2
: BGP 피어링 세션의 인터페이스 이름IP_ADDRESS_2
: Cloud Router의 IP 주소PEER_IP_ADDRESS_2
: 피어 라우터의 IP 주소PEER_ASN_2
: 이 BGP 피어의 BGP 자율 시스템 번호(ASN)
인증 키 업데이트
Cloud Router가 피어링 세션에 사용하는 키를 변경하려면 다음 절차 중 하나를 사용합니다. Cloud Router에서 키를 업데이트할 때는 사용하는 키와 피어 라우터에서 사용하는 키가 동일한지 확인합니다.
Google Cloud는 MD5 인증 키를 표시하지 않으며 성공적인 구성 시 키 이름만 표시합니다.
- gcloud 또는 UI를 통해 MD5 인증을 구성하면 Google Cloud가
PEER_NAME-key
형식으로 키 이름을 자동으로 생성합니다. - API를 통해 MD5 인증을 구성하면 키 이름을 지정할 수 있습니다.
콘솔
Google Cloud 콘솔에서 Cloud Router 페이지로 이동합니다.
이름 필드에서 적합한 Cloud Router 이름을 클릭합니다.
라우터 세부정보 페이지에서 수정하려는 BGP 세션의 이름을 클릭합니다.
BGP 세션 세부정보 페이지에서
수정을 선택합니다.MD5 인증 섹션에서 MD5 인증 키 업데이트를 클릭합니다.
MD5 인증 키 필드에 새 보안 비밀 인증 키를 입력하거나 필드를 자동으로 채우려면 생성 및 복사를 클릭합니다.
키를 기록해 둡니다. 이 페이지에서 나가면 키를 검색할 수 없습니다.
저장을 클릭합니다.
gcloud
세션을 업데이트하려면 gcloud compute routers update-bgp-peer
명령어를 사용합니다.
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --region=REGION \ --md5-authentication-key=SECRET_KEY
다음 값을 바꿉니다.
ROUTER_NAME
: Cloud Router의 이름PEER_NAME
: BGP 피어의 이름REGION
: Google Cloud 리전SECRET_KEY
: 사용할 새 보안 비밀 MD5 인증 키
API
세션을 업데이트하려면 compute.routers.patch
메서드를 사용합니다. 예를 들어 다음과 같은 요청을 사용합니다.
이 예시에서는 식별된 특정 피어뿐만 아니라 전체 피어 배열을 바꿉니다. 즉, PEER_NAME
을 제외한 모든 피어를 삭제합니다. KEY_NAME
을 제외한 모든 키를 삭제하고 새로운 값 UPDATED_SECRET_KEY
로 KEY_NAME
을 업데이트합니다.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "md5AuthenticationKeys": [ { "name": "KEY_NAME", "key": "UPDATED_SECRET_KEY" } ], "bgpPeers": [ { "name": "PEER_NAME", "md5AuthenticationKeyName": "KEY_NAME", "interfaceName": "INTERFACE_NAME", "ipAddress": "IP_ADDRESS", "peerIpAddress": "PEER_IP_ADDRESS", "peerAsn": "PEER_ASN" } ], }
다음 값을 바꿉니다.
PROJECT_ID
: Cloud Router를 포함하는 프로젝트REGION
: Google Cloud 리전ROUTER_NAME
: Cloud Router의 이름KEY_NAME
: 업데이트할 키의 이름. API를 사용하여 MD5 인증을 사용할 때마다 이름을 이름으로 참조해야 합니다.UPDATED_SECRET_KEY
: 새 보안 비밀 MD5 인증 키PEER_NAME
: BGP 피어의 이름INTERFACE_NAME
: BGP 피어링 세션의 인터페이스 이름IP_ADDRESS
: Cloud Router의 IP 주소PEER_IP_ADDRESS
: 피어 라우터의 IP 주소PEER_ASN
: 이 BGP 피어의 BGP 자율 시스템 번호(ASN)
인증 상태 확인
다음 단계를 따라 MD5 인증 상태를 확인합니다. Cloud Router 세부정보 보기도 참고하세요.
콘솔
Google Cloud 콘솔에서 Cloud Router 페이지로 이동합니다.
이름 필드에서 적합한 Cloud Router 이름을 클릭합니다.
라우터 세부정보 페이지에서 MD5 인증 열을 찾습니다. 이 열의 값은 각 세션에 대해 MD5 인증이 사용 설정되었는지 여부를 나타냅니다.
gcloud
gcloud CLI를 사용하여 세션을 확인하려면 gcloud compute routers get-status
명령어를 사용합니다.
gcloud compute routers get-status ROUTER_NAME \ --project=PROJECT \ --region=REGION \
다음 값을 바꿉니다.
ROUTER_NAME
: Cloud Router의 이름PROJECT
: 프로젝트 이름REGION
: Google Cloud 리전
출력에는 Cloud Router의 BGP 세션에 관한 정보가 포함된 result.bgpPeerStatus[]
객체가 포함됩니다. 각 세션에 대한 데이터에는 다음 두 필드가 포함됩니다.
md5AuthEnabled
- 세션에 MD5 인증이 사용 설정되었는지 여부를 나타내는 불리언 필드statusReason
- 세션 상태를 설명하는 필드
API
routers.getRouterStatus
메서드를 사용합니다.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME/getRouterStatus
다음을 바꿉니다.
PROJECT_ID
: Cloud Router를 포함하는 프로젝트REGION
: Cloud Router가 있는 리전ROUTER_NAME
: Cloud Router의 이름
출력에는 각 BGP 세션에 관한 정보가 포함됩니다. 각 세션에 대한 데이터에는 다음 두 필드가 포함됩니다.
md5AuthEnabled
: 세션에 MD5 인증이 사용 설정되었는지 여부를 나타내는 불리언 필드statusReason
: 세션 상태를 설명하는 필드. 이 필드는 MD5 인증에 문제가 있을 때만 표시됩니다. 이 경우 필드 값은MD5_AUTH_INTERNAL_PROBLEM
입니다.
BGP 세션의 지속적인 모니터링을 설정하려면 Cloud Logging을 사용합니다. 로깅은 정보 로그의 일부인 BGP 이벤트에 MD5 인증 상태에 관한 정보를 기록합니다.
세션에서 인증 삭제
BGP 세션에서 MD5 인증을 삭제하려면 Cloud Router와 피어 라우터 모두에서 MD5 인증을 삭제해야 합니다.
Cloud Router의 BGP 세션에서 MD5 인증을 삭제하려면 다음 절차 중 하나를 따르세요.
콘솔
Google Cloud 콘솔에서 Cloud Router 페이지로 이동합니다.
이름 필드에서 적합한 Cloud Router 이름을 클릭합니다.
라우터 세부정보 페이지에서 수정하려는 BGP 세션의 이름을 클릭합니다.
BGP 세션 세부정보 페이지에서
수정을 선택합니다.MD5 인증에서 사용 중지됨을 클릭합니다.
저장을 클릭합니다. MD5 인증 키 사용 중지 대화상자가 나타납니다.
확인 대화상자에서 확인을 클릭합니다.
gcloud
MD5 인증을 삭제하려면 gcloud compute routers update-bgp-peer
명령어를 사용합니다.
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --region=REGION \ --clear-md5-authentication-key
다음 값을 바꿉니다.
ROUTER_NAME
: Cloud Router의 이름PEER_NAME
: BGP 피어의 이름REGION
: Google Cloud 리전
API
MD5 인증을 삭제하려면 compute.routers.patch
메서드를 사용합니다.
API를 사용하여 인증을 삭제할 때 업데이트에서 다음 두 가지 작업을 수행해야 합니다.
md5AuthenticationKeys
배열 업데이트하기- 관련
bgpPeers
항목에서md5AuthenticationKey
값 삭제하기
예를 들어 Cloud Router에 BGP 피어가 2개 있고 이 중 하나에서 MD5 인증을 삭제하려는 경우가 있을 겁니다. 이 경우 다음과 같은 요청을 사용합니다.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "md5AuthenticationKeys": [ "name": "KEY_NAME_FOR_UNCHANGED_PEER", ], "bgpPeers": [ { "name": "NAME_OF_UPDATED_PEER", "interfaceName": "INTERFACE_NAME_FOR_UPDATED_PEER", "ipAddress": "IP_ADDRESS_FOR_UPDATED_PEER", "peerIpAddress": "PEER_IP_ADDRESS_FOR_UPDATED_PEER", "peerAsn": "PEER_ASN_FOR_UPDATED_PEER" }, { "name": "NAME_OF_UNCHANGED_PEER", "interfaceName": "INTERFACE_NAME_FOR_UNCHANGED_PEER", "ipAddress": "IP_ADDRESS_FOR_UNCHANGED_PEER", "peerIpAddress": "PEER_IP_ADDRESS_FOR_UNCHANGED_PEER", "peerAsn": "PEER_ASN_FOR_UNCHANGED_PEER" "md5AuthenticationKeyName": "KEY_NAME_FOR_UNCHANGED_PEER" } ], ], }
다음 값을 바꿉니다.
PROJECT_ID
: Cloud Router를 포함하는 프로젝트REGION
: Cloud Router가 위치한 Google Cloud 리전ROUTER_NAME
: Cloud Router의 이름NAME_OF_UPDATED_PEER
: 수정하려는 피어링 세션의 이름INTERFACE_NAME_FOR_UPDATED_PEER
: 수정하려는 BGP 피어의 인터페이스 이름IP_ADDRESS_FOR_UPDATED_PEER
: 수정하려는 피어에서 사용되는 Cloud Router의 IP 주소PEER_IP_ADDRESS_FOR_UPDATED_PEER
: 수정하려는 피어링 세션에 대한 피어 라우터의 IP 주소PEER_ASN
: 수정하려는 이 BGP 피어의 BGP 자율 시스템 번호(ASN)NAME_OF_UNCHANGED_PEER
: 그대로 유지할 피어링 세션의 이름INTERFACE_NAME_FOR_UNCHANGED_PEER
: 그대로 유지할 BGP 피어의 인터페이스 이름IP_ADDRESS_FOR_UNCHANGED_PEER
: 그대로 유지할 피어에서 사용하는 Cloud Router의 IP 주소PEER_IP_ADDRESS_FOR_UNCHANGED_PEER
: 그대로 유지할 피어링 세션의 피어 라우터의 IP 주소PEER_ASN_FOR_UNCHANGED_PEER
: 그대로 유지할 BGP 피어의 BGP 자율 시스템 번호(ASN)KEY_NAME_FOR_UNCHANGED_PEER
: 그대로 유지할 BGP 피어의 MD5 인증 키 이름
인증을 사용하는 세션 삭제
MD5 인증을 사용하는 피어링 세션을 삭제하려면 다음 절차 중 하나를 사용하세요.
콘솔
Google Cloud 콘솔에서 Cloud Router 페이지로 이동합니다.
- BGP 세션을 삭제할 라우터를 선택합니다.
- BGP 세션에 삭제하려는 BGP 세션을 선택합니다.
- 페이지 상단에서 삭제를 클릭한 후 삭제를 확인합니다.
gcloud
MD5 인증이 사용 설정된 BGP 세션을 삭제하려면 gcloud compute routers remove-bgp-peer
명령어를 사용합니다.
자세한 내용은 BGP 세션 중지 또는 삭제를 참조하세요.
API
MD5 인증이 사용 설정된 BGP 세션을 삭제하려면 compute.routers.patch
메서드를 사용합니다.
API를 사용하여 MD5 인증이 있는 BGP 세션을 삭제하는 경우 업데이트는 md5AuthenticationKeys
배열에서 키를 삭제하고 bgpPeer
자체를 삭제하는 2가지 작업을 수행해야 합니다.
예를 들어 Cloud Router에 피어가 두 개 있고 이 중 하나를 제거하려 한다고 가정해 보겠습니다. 이 경우 다음과 같은 요청을 사용합니다.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "md5AuthenticationKeys": [ "name": "KEY_NAME_FOR_RETAINED_PEER", ], "bgpPeers": [ { "name": "NAME_OF_RETAINED_PEER", "interfaceName": "INTERFACE_FOR_RETAINED_PEER", "ipAddress": "IP_ADDRESS_FOR_RETAINED_PEER", "peerIpAddress": "PEER_IP_ADDRESS_FOR_RETAINED_PEER", "peerAsn": "PEER_ASN_FOR_RETAINED_PEER", "md5AuthenticationKeyName": "KEY_NAME_FOR_RETAINED_PEER" } ], }
다음 값을 바꿉니다.
PROJECT_ID
: Cloud Router를 포함하는 프로젝트REGION
: Google Cloud 리전ROUTER_NAME
: Cloud Router의 이름KEY_NAME_FOR_RETAINED_PEER
: 보존하려는 피어가 사용하는 키의 이름NAME_OF_RETAINED_PEER
: 보존할 BGP 피어의 이름INTERFACE_FOR_RETAINED_PEER
: 보존할 BGP 피어의 인터페이스 이름IP_ADDRESS_FOR_RETAINED_PEER
: 보존할 피어의 Cloud Router의 IP 주소PEER_IP_ADDRESS_FOR_RETAINED_PEER
: 보존할 피어의 IP 주소PEER_ASN_FOR_RETAINED_PEER
: 유지할 피어의 BGP 자율 시스템 번호(ASN)KEY_NAME_FOR_RETAINED_PEER
: 보존할 BGP 피어의 MD5 인증 키 이름
예를 들어 다음 피어를 만들었다고 가정해 보겠습니다.
PATCH https://compute.googleapis.com/compute/v1/projects/project_id/regions/region_name/routers/cloud_router_name { "md5AuthenticationKeys": [ { "name": "first_key_name", "key": "first_secret_key_value" }, { "name": "second_key_name", "key": "second_secret_key_value" } ], "bgpPeers": [ { "name": "first_peer", "md5AuthenticationKeyName": "first_key_name", "interfaceName": "first_interface", "ipAddress": "first_address", "peerIpAddress": "first_peer_interface", "peerAsn": "first_peer_asn" }, { "name": "second_peer", "md5AuthenticationKeyName": "second_key_name", "interfaceName": "second_interface", "ipAddress": "second_address", "peerIpAddress": "second_peer_interface", "peerAsn": "second_peer_asn" } ], }
그런 다음 두 번째 피어를 삭제하려는 경우 다음과 같은 요청을 사용합니다.
PATCH https://compute.googleapis.com/compute/v1/projects/project_id/regions/region_name/routers/cloud_router_name { "md5AuthenticationKeys": [ { "name": "first_key_name", } ], "bgpPeers": [ { "name": "first_peer", "md5AuthenticationKeyName": "first_key_name", "interfaceName": "first_interface", "ipAddress": "first_address", "peerIpAddress": "first_peer_interface", "peerAsn": "first_peer_asn" } ], }