Azure Application Proxy

Azure Application Proxy

Web uygulamalarınızı; port yönlendirme, dmz bölgesinde yapılandırma, vpn çözümlerini uygulama vb. adımları uygulamadan Internet’ten erişilebilir kılmak için bir çözüm arıyorsanız​​ Azure Application Proxy​​ servisini inceleyebilirsiniz. ​​ Araştırmam​​ sonrasındaki​​ düşüncelerimi paylaşayım.

İlk etapta göze çarpan özellikleri:

  • Reverse Proxy, VPN, DMZ vb. ek yapılandırmalara gerek kalmıyor.

  • Outlook Web Access,​​ Sharepoint veya diğer​​ line of business​​ uygulamalarınız ile entegre olabiliyor.

  • Authorization kontrolü gibi önemli güvenlik alanlarında zengin özellikler sunuyor.

  • Single Sign On, Pass through authentication seçimlerini sunuyor.

  • Integrated​​ windows authentication veya form based authentication kullanan uygulamalarınız ile entegre olabiliyor.

  • Remote desktop​​ gateway arkasından sunulan​​ uygulamalar ile entegre olabiliyor.

 

Servisin yapılandırması nasıl?​​ 

Öncelikle​​ geçerli​​ bir MS Azure ve Azure AD Premium​​ aboneliği gerekiyor. Yapılandırma adımlarını ilgili öğeleri farklı renk ile belirterek aktarayım.

 

Application Proxy bölümünden​​ connector​​ yazılımını temin ediyoruz.​​ Connector, Internet’ten erişilebilir kılmak istediğimiz uygulama sunucusuna yükleyeceğimiz küçük​​ boyutlu​​ bir yazılımdır.​​ Connector​​ yazılımı Azure AD API’ları ile sunucu arasındaki iletişimi sağlıyor.

 

 

İletişimin sağlanması için connector’ün yüklendiği sunucunun Azure AD API’lerına​​ erişimi(inbound yönde değil!) gerekiyor.

Connector’ün yüklenmesi ile uygulama sunucusuna iki yeni​​ windows service​​ kuruluyor.

 

 

Connector; kurulumu sırasında​​ kendisini​​ Azure AD Application Proxy​​ servisine kayıt ettiyor. Aşağıda connector’ün kayıt olduğu default group’u görebiliriz.​​ teappproxy01​​ string’i, lokalde çalışan uygulama sunucusunun​​ hostname’idir.

 

 

Inbound​​ trafiğin kapalı olduğu uygulamayı Azure Application Proxy’ye ekleme adımına​​ geldik. Üstte görülen Enterprise application bölümünden ilerleyeceğiz.

 

 

Bir​​ application​​ ekledim. Eklediğim application’ın detaylarını aşağıda aktarıyorum.

 

 

Internal Url​​ ​​ Lokal​​ ortamımızda çalışan uygulamanın​​ binding​​ ’ini belirtiyorum.​​ 

External Url​​ ​​ Azure aboneliğinizde doğrulanmış dns domain’lerinizin herhangi birini kullanabilirsiniz.​​ 

Pre Authentication​​ ​​ Azure Active Directory’de tanımlı IDENTITY’ler ile uygulamaya erişebilirsiniz. Lokal Active Directory ’nizi Azure AD’ye​​ sync​​ ederek de ilerleyebilirsiniz.

 

Connector kurulumu sırasında kendini default group’a kayıt ettirmişti. Onu​​ connector group​​ kısmından seçiyoruz.

 

Web uygulamanıza az karmaşık kullanıcı dostu isimler ile erişmek isterseniz, DNS > CNAME yapılandırmasını kullanabilirsiniz.

 

Son olarak, web uygulamanıza ait ssl sertifikasını üstte görülen Certificate kısmından yüklemelisiniz. Aksi durumda güvenli uyarısı ile karşılaşırsınız.​​ (Araştırma ortamımda ssl sertifikası yüklemedim)

 

Geldiğimiz nokta:

Lokal ortamdaki uygulama sunucusuna​​ connector kurduk. Azure Application Proxy’ye kayıt oldu. Lokal ortamdaki uygulamamızı Azure Application Proxy’ye​​ tanıttık. Uygulamaya erişimde authentcation’ının Azure​​ Active​​ Directory​​ ’den denetlenmesini sağladık. Son olarak,​​ Azure​​ Active​​ Directory​​ ’deki hangi user’ın(hangi identity’nin) uygulamaya erişebileceğini belirtiyoruz.​​ 

 

 

 

Üstte görülen identity’ye, azure application proxy üzerinden lokaldeki uygulamaya erişim izni vermiş olduk. Test zamanı.

 

Uygulamaya erişmek istediğimde aşağıdaki görüldüğü üzere authentication için yönlendiriliyorum.​​ 

 

İzin verdiğim kullanıcı ile üstteki formu doldurup​​ authenticate​​ oluyorum.

 

 

Sonuç olarak​​ application proxy​​ üzerinden, lokal ortamımdaki uygulamaya erişiyorum.​​ 

Normal şartlarda, lokal ortamınızdaki uygulamanın Internet erişilebilir hale getirilmesi süreçleri şu şekillerde gelişir.

  • 3 tier yapıda web, app , db sunucularınız mevcuttur.

  • Internet’ten gelenlere hizmet verecek Web sunucunuzu​​ DMZ ağında yapılandırırsınız.

  • DMZ ile App veya​​ DB arasında gereken trafiği açarsınız(inbound)

  • DMZ’ye gelen trafiği açarsınız(inbound)

  • Kritik bir detay varsa, önce VPN sonra erişim sağlarsınız, vb.

 

Üstteki teste gördüğümüz üzere application proxy ile inbound yönde bir port açmadan erişimi sağladık.​​ 

Farklı uygulamalarınızı​​ application​​ proxy ile entegre ederek erişimi tek​​ noktadan​​ kontrol edebilir, örneğin işten ayrılan bir personelin tüm erişimini hızlıca iptal edebilirsiniz.​​ 

 

İyi çalışmalar.

 

 

 

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *