Azure Point-to-Site VPN with Azure Active Directory Credentials

By | 11 February 2020

Uzun yıllardır Azure üzerindeki VPN hizmetlerini hybrid ortamlarda yapılandırdım ve yapılandırmaya da devam ediyorum. VPn dediğimizde akla ilk gelen site2site VPN oluyor. Ancak bu yazımda sizlere point2site VPN’den bahsedeceğim.

Point2site VPN konfigürasyonu yaparken işin içine çoğu zaman sertifika süreçleri de giriyordu. Yani VPN client’ın bağlanması için gerekli root ve client sertifikalarını oluşturup bağlantının iki tarafı içinde bu sertifikalar ile konfigürasyonlar yapılması gerekiyordu.

Tabi bu sertifika süreçlerinde sertifika süreleri dolduğunda bunların tekrar yenilenmesi gibi bazı iş yükleri de ortaya çıkıyordu. Ek olarak sertifikaya sahip olan herkes Azure platformuna VPN yapabiliyordu.

Bu sınırlılıklardan ötürü önce OpenVPN desteği ardından Azure Active Directory ile entegrasyon özelliği VPN Gateway servisine getirildi. Böylelikle VPN bağlantılarını Azure AD üzerindeki credential’lar ile yapabilir hale geldik.

Bu yazımda da bunu nasıl çok kısa sürede yapılandırabileceğinizi anlatacağım.

Öncelikle bağlanmak istediğiniz network’e entegre bir adet Virtual Network Gateway servisine ihtiyacınız var. Bu serivisi portal üzerinden oluşturmakta oldukça basit. Aşağıdaki gibi Virtual network gateway bölümü üzerinden ilgili parametreleri vererek bu resource’u kolaylıkla oluşturabilirsiniz.

VPN Gateway üzerinde “point-to-site-configuration” bölümüne gelindiğinde, P2S VPN için gerekli bir kaç konfigürasyon adımı ile karşılaşılır.

Burada öncelikle VPN kullanıcıları bağlandığı zaman onlara atanacak IP adresleri için bir havuz belirlenir.

Tunnel type bölümünde ise desteklenen tunnel tipleri listelenmektedir.

Burada Azure AD kimlik doğrulamasını kullanmak için OpenVPN seçeneği ile devam edilmesi gerekir ve kimlik doğrulama tipi olarak Azure Active Directory seçilmelidir.

Ardından kimlik doğrulama süreçlerinde VPN resource’unun Azure AD ile konuşabilmesi için gerekli parametreler ve girilmesi gereken değerler aşağıdaki gibi olmalıdır.

Tenant: https://login.microsoftonline.com/<tenan id>/

Audience: 41b23e61-6c1e-4545-b367-cd054e0ed4b4

Issuer: https://sts.windows.net/<tenant id>/

Bu bilgileri konfigüre edip save’ledikten sonra yapılması gereken son bir işlem daha vardır. Azure VPN Client uygulaması Azure AD üzerinde bir application’ a ihtiyaç duyar. Kimlik doğrulama sürecini bu App üzerinden yapar.

Bunun için yukarıdaki resimde bulunan “Grant administrator consent for Azure VPN client application” sçeneğine tıklamak yeterlidir. Bu link’in gideceği URL aşağıdaki gibidir.

https://login.microsoftonline.com/common/oauth2/authorize?client_id=41b23e61-6c1e-4545-b367-cd054e0ed4b4&response_type=code&redirect_uri=https://portal.azure.com&nonce=1234&prompt=admin_consent

Bu linke gidildiğinde aşağıdaki gibi bir popup karşımıza çıkar.

Onayladığınız taktirde Azure platformu üzerinde bir application oluşur.

Sunucu tarafındaki konfigürasyon bu şekildedir. Bu işlemlerin ardından client tarafının konfigürasyonuna başlayabiliriz.

Bunun için öncelikle aşağıdaki link kullanılarak Azure VPN client’ının client makine üzerine yüklenmesi gereklidir.

https://www.microsoft.com/en-us/p/azure-vpn-client-preview/9np355qt2sqb?rtc=2&activetab=pivot:overviewtab

Basit bir kurulumun ardından client yazılımı makinemizde hazır hale gelir. Şimdi de bu yazılım için gerekli konfigürasyonu indirmek gereklidir.

Bu amaçla Virtual Network Gateway üzerindeki point-to-site-configuration bölümüne gelip aşağıdaki gibi “download VPN client” seçeneği ile VPN client configürasyonu download edilmelidir.

Zipli dosya içerisindeki Azure VPN klasörü altında gerekli konfigürasyon xml’ini bulabilirsiniz.

OpenVPN yazılımının sol alt köşesindeki import seçeneğini kullanarak ilgili xml dosyasını import edebilirsiniz.

Bu işlemin ardından client için gerekli bütün konfigürasyon aşağıdaki gibi ekranda listelenecektir.

Svae diyerek kaydettikten sonra connect butonuna basarak bağlantınızı sağlayabilirsiniz. Bağlanmanız sırasınra sizden Azure Ad kullanıcı adı ve parolanızı isteyecektir. Bu bilgileri sağladığınızda connection sağlanacaktır.

Umarım faydalı olmuştur. Bir sonraki makalede görüşmek üzere.
Fırat

Leave a Reply