Today Keys : endpoint, service, private link, private endpoint, paas, azure, cloud, 클라우드, secure
이번 포스팅은 Azure의 PaaS 서비스를 VNet 내에서 인터넷을 차단한 상태에서도 접근이 가능하도록 해주는
Service Endpoint와 Private Endpoint에 대한 예제입니다.
각 서비스에 대한 설명은 별도 포스팅으로 다룰 예정이며, 내년 1월에 있을 Microsoft Ignite 세션에서도 다루게 될 것 같습니다.
아래 예제가 그닥 친절한 설명은 아니라서, Ignite에 오셔서 함께 보셔도 좋을 것 같습니다!
다음 그림은 초기 구성 환경입니다.
VNet에는 1대의 가상 머신이 있고, Blob을 인터넷을 통해서 통신하고 있습니다.
현재 구성에서는 blob에 zigiblob.html 이라는 파일이 하나 있습니다.
ZIGI-VNet은 인터넷이 연결되어 있으며,
ZIGI-VNet에서 blob을 접근하게 되면, 인터넷을 통해서 blob을 접근합니다.
이제 ZIGI-VNet에 라우팅을 조정해서, 인터넷 경로를 차단하고 나서 다시 확인합니다.
인터넷과 인터넷을 경유하는 blob에 접근할 수 없는 것을 볼 수 있습니다.
이제 Blob에 접근하기 위한 2가지 방법에 대해서 살펴봅니다.
우선 Service Endpoint를 이용하는 방법입니다.
서브넷에 Service Endpoint를 추가합니다.
당연히 모든 Azure 서비스에 대한 Endpoint가 지원되지는 않지만, 지속적으로 늘어나고 있습니다.
Service Endpoint가 생성된 후에 확인해보면, blob은 여전히 Public IP로 서비가 되고 있지만,
blob에 정상적으로 접근을 할 수 있게 되었음을 확인 할 수 있습니다.
물론 blob에만 접근이 되고, 인터넷은 여전히 통신이 안되는 것도 확인 할 수 있습니다.
다음은 Private Endpoint를 통해서 접근하는 예입니다.
Private Endpoint는 아직까지는 Preview로 제공되고 있습니다.(2019.12.23일 현재)
먼저 Private Endpoint를 생성합니다.
Private Endpoint로 연결할 리소스를 지정합니다.
Private Endpoint가 생성될 네트워크와 DNS를 지정합니다.
설정한 정보를 확인 후, Private Endpoint를 생성합니다.
생성된 Private Endpoint 정보를 확인하면 다음과 같습니다.
아래를 확인해보면, VNet 내의 서브넷의 IP로 Private Endpoint가 생성된 것을 볼 수 있습니다.
이제 VNet의 가상 머신에서 blob 접근을 해보면 정상적으로 접근이 되는 것을 볼 수 있습니다.
그리고 그 접근 주소를 확인해보면 Public가 아닌 Private Endpoint로 생성된 사설 IP로 매핑된 것을 확인할 수 있습니다.