Malum güvenlik duvarı kavramına hepimiz alışkınız, uzun yıllardır bu sektörde olan veya sektöre yeni girmiş birisi dahi olsa güvenlik duvarı kavramı çok tanıdık geliyor. Öyle ki ev kullanıcıları bile özellikle çocuklarını veya kişisel verilerini korumak için artık bu kavramların peşine düşmüş durumda. Hal böyle olunca Azure Firewall nedir başlığı atılır mı diyebilirsiniz? Evet atılır çünkü ne yazık ki hala ülkemizde bulut okur yazarlığı ve bilgisi, ilgisi düşük. Hayatında hiç Azure veya benzeri global bulut sağlayıcıların panelini açmamış o kadar çok sektör çalışanı var ki bulut dediğiniz zaman aklına sadece iki servis geliyor, 1-Sanal makine, 2-yedekleme. Oysaki 150 ye yakın servis sunan bu üreticilerin bu konuda daha çok övgüyü hak ettiği aşikar. Bulut yerli mi olmalı, milli mi olmalı, global mi olmalı o ayrı bir konu ama yer li de olsa global de olsa bu teknolojileri bilmeliyiz, en azından karşılaştırma, daha iyi bir hizmet sunma, daha iyi bir hizmet alma için bu şart.
Peki bu kadar giriş sonrası isterseniz teknik kısımlara başlayalım.
Temel olarak Azure Firewall bulut temelli ve yine bulut network alt yapısını koruyan bir güvenlik duvarı hizmetidir. Hizmetidir diyorum çünkü bulut üzerinde pek çok üreticinin kendi firewall hizmetini alabilir ama yapılandırmasını sizin yapmanız gerekir, burada ise sadece ara yüzden kural yazarak yönettiğiniz bir hizmetten bahsediyorum. Yani bu firewall hizmetinin altında çalışan cihazların kapasite, performans, yedeklenmesi, yüksek erişilebilirlik gibi konuları bizi ilgilendirmiyor. Belki de bulutun sunduğu en iyi nimetlerden birisi bu. Aslında aynı sanal makinelerde olduğu gibi, bizi üst katman ilgilendiriyor.
Yukarıda temel bir topoloji görüyorsunuz. Azure ile şirket networkünüz ve internet birbirine bağlı olabilir. Yani temelde azure kaynakları, şirket kaynakları ve internetin kesiştiği bir ortam düşünün, böyle bir ortamda azure kaynaklarınızı koruyan firewall, Azure Firewall olarak isimlendirilir. Tabi ki illaki senaryonun böyle olmasına gerek yok, örneğin Onprem hiçbir sistem olmadan doğrudan azure üzerinde açtığınız sanal makineler içinde azure firewall koruma sağlayacaktır.
Azure abonelikleri ve virtual network – sanal ağlar arasında merkezi olarak kural oluşturup yöneteceğiniz, loglarını görebileceğiniz (Azure Monitor ile) aynı yerleşik ağlarınızda kullandığınız gibi temel bir güvenlik duvarı özelliği sunar. Tabi burada özellikle büyük projelerde en sık karşımıza çıkan soru azure firewall mu kullanmalıyız yoksa azure üzerinde pek çok güvenlik üreticisinin sunduğu kendi ürünlerini mi kullanmalıyız? Aslında bu sorunun cevabı için müşteri ihtiyaçlarını çok iyi bilmemiz gerekiyor. Örneğin müşteride Azure Firewall gibi yine azure üzerinde sunulan Application Gateway hizmetini konumlandırmak istediniz, ancak müşteri on-prem üzerinde F5 kullanıyor ve pek çok path based rule ihtiyacı var, projeye başlıyorsunuz bir bakıyorsunuz performans nedeni ile Azure üzerinde Application GW için path based rule sınırı 100, hop geçmiş olsun. Yani Azure Firewall için de benzer durumlar yaşayabilirsiniz. Bu nedenle özelliklerini iyi biliyor olmamız gerekiyor. Temel olarak azure firewall aşağıdaki özellikleri bize sunmaktadır;
- Built-in high availability
- Availability Zones
- Unrestricted cloud scalability
- Application FQDN filtering rules
- Network traffic filtering rules
- FQDN tags
- Service tags
- Threat intelligence
- Outbound SNAT support
- Inbound DNAT support
- Multiple public IP addresses
- Azure Monitor logging
- Forced tunneling
- Certifications
Peki nedir bu özellikler hızlıca bir bakalım isterseniz.
İlk özellik malum makalemin başında da söylediğim gibi yönetilen bir hizmet olduğu için kesintisiz çalışması için Microsoft tarafından HA bir alt yapı sunulmaktadır. Buna ek olarak yine Azure mimarisini bilenler için AZ sunmaktadır, yani olası güncelleme ve benzer iyileştirme çalışmalarından minimum etkilenmesi için (zaten HA olduğundan node bazlı etkilenir komple sistem gitmez) %99.99 SLA verilmektedir. Burada önemli olan bir konu AZ yapılandırması sadece Azure Firewall deploy ederken seçebilirsiniz, yapılandırılmış olan bir Azure firewall hizmeti için availability zone ayarı yapamazsınız.
Unrestricted cloud Scalability, yine yönetilen bir hizmet olmasının bir avantajı olarak bize sunduğu üst limitler dahilinde gelen trafiğe göre kendisi otomatik olarak kaynaklarını güncellemektedir. Yani yine bizim büyük veya küçük bir network için ayrı ayar yapmamıza gerek yok, ama tabi ki yukarıda verdiğim gibi mutlaka üst limitleri kontrol etmekte fayda var. Çünkü bazen belirli müşterilerin çok uç istekleri olabiliyor, ama bu hizmet tüm müşterilere sunulduğu için genel performans değerleri daha önemli, zaten böyle müşteriler de kendine özel bir üreticiye ait olan servisi ek olarak azure üzerinde satın alıyor.
Application FQDN filtering rules
Bu özellikle sayesinde HTTP/S ve Azure SQL trafiğinde outbound yönünde wildcard destekli FQDN sınırlamaları yapabiliyoruz. Malum kurumsal şirketler Onprem firewall da bunu çok yapıyorlar. Örneğin sunucuların internete çıkması yasak olmalı, bu artık güvenliğin en temel özelliği ancak bu sunucular izleme olsun, yedekleme olsun veya başka bir nedenden ötürü mutlaka cloud ile veya internet ile görüşmek zorunda olabilir bu durumda ilgili port için internete çıkış izni vermek yeterli bir sınırlama değil çünkü zaten pek çok bahsi geçen servis 443 nolu portu kullanıyor ancak bir malware de bu sunucuya buluşur ise o da ilgili port üzerinden komuta merkezine çıkabilir, bu nedenle sunucuların bu protlar üzerinden internete çıkışı için ip bazlı izinler verilir. Ancak gelin görün ki azure gibi pek çok büyük bulut alt yapı sağlayıcıda yüzlerce hatta binlerce ip olabilir, bunları tek tek firewall’ a girilmesi veya güncellenmesi akıl işi değil, bu nedenle Onprem firewall üzerinde şöyle bir kural yazabiliyoruz.
A sunucusu *.microsoft.com için 443 nolu port üzerinden çıkabilir, aynısını Azure firewall ile yapabilirsiniz.
Network traffic Filtering rules
Ağ trafiği filtreleme kuralları
Kaynak ve hedef IP adresi, bağlantı noktası ve protokole göre merkezi olarak ağ filtreleme kuralları oluşturabiliriz (izin veya yasak). Azure Güvenlik Duvarı belki de firewall konusunda sorulması gereken en temel konu olan “stateful” bir firewall dur. stateful packet inspection sayesinde kullanılan protokolün amacı dışında farklı protokoller için kullanımını yönetip engelleyebilir.
FQDN Tags, aslında çok kullanışlı bir özellik, çok sık kullandığınız uygulamalar için kural setlerine etiket atayabiliyorsunuz, örnek windows update için bir kural seti oluşturdunuz, bunu etiketlemeniz halinde application rule dediğimiz uygulama kurallarını firewall kurallarına daha kolay bir şekilde ekleyebiliyorsunuz. Bu arada bu anlattıklarım çok temel firewall özellikleridir, evet şaşırmayın, neden? Çünkü malum insanlarda yerel ürünlerdeki pek çok özelliğin cloud üzerinde olmadığına dair bir algı var, aslında hem haklı hem haksızlar. Servise göre aslında tam tersi. Örneğin sanallaştırma katmanı gözü ile bakarsanız ya da Docker, Kubernetes yapısı (AKS) Azure on prem sistemlere göre çok daha gelişmiş özellikler sunmaktadır. Ancak bazı servisler içinde örneğin application gateway için bir örnek verdik bazen sınırlara takılabilirsiniz. Ondan bu ne ya en temel firewall da bile olan şeyleri neden yazıyor demeyin 😊
Service tags
Bu etiketleme de azure servisleri için kullanılır, malum azure üzerinde pek çok servis olduğu için ilgili servislere ait bir kural yazmanız gerekir ise yukarıda da bahsettiğim gibi bunların ip adreslerini tek tek yazmak yerine servis etiketlerini kullanabilirsiniz. Bu etiketleri Microsoft yönetir, yani bir kendimiz ip adresi ekleyemeyiz ki zaten servis Microsoft’ a ait bir servistir.
Threat intelligence
Tehdit istihbaratı tabanlı filtreleme, güvenlik duvarınızın bilinen kötü amaçlı IP adresleri ve etki alanlarından gelen / giden trafiği uyarması ve reddetmesi için etkinleştirilebilir. IP adresleri ve etki alanları Microsoft Threat Intelligence servisi tarafından sağlanır. Pek çok üretici gibi Microsoft da Dünya üzerinde yoğun bir trafik izlemekte ve bu sayede pek çok ip adresi, domain hakkında istihbarat bilgisine sahip olmaktadır. Bu istihbarat bilgisini de bize sunduğu Azure Firewall hizmeti içerisine bir özellik olarak eklemektedir.
Yine bir firewall da olmazsa olmaz olan Outbound SNAT Source Network Address Translation ve inbound DNAT Destination Network Address Translation desteği sunuyor.
Büyük müşteriler için lazım olacak bir bilgi, 250 public ip ye kadar firewall’ a ip tanımı yapılabilir.
Azure monitoring servisi ile tüm aktiviteleri takip edebiliriz. Aslında aynı diğer firewall ürünlerinde olduğu gibi aslında loglama için başka bir ürün veya servis şart. Burası önemli çünkü özellikle iç network aktivitelerini izleyen müşteriler için hangi aktiviteleri izleyebileceğinizin detaylarına bu link üzerinden ulaşabilirsiniz.
https://docs.microsoft.com/en-us/azure/firewall/firewall-diagnostics
Yine güzel bir özellik olan Azure Firewall forced tunneling sayesinde internet trafiğini doğrudan Microsoft veri merkezi üzerinden çıkarmak yerine kendi Onprem üzerinde ki veya istediğiniz başka bir hedefe yönlendirebilirsiniz. Yani bu trafiği ayrıca loglamak veya süzmek gibi ek ihtiyaçlarınız var ise bu özelliği kullanabilirsiniz.
Son olarak özellikle ödeme sistemleri ve benzeri kritik iş yükleri için servisin ve doğal olarak kullanılan alt yapının sertifikaları önemlidir. Örneğin bizdeki zaman damgası gibi düşünebilirsiniz, yani veri trafiği olsun, üretilen logların gerçekliği olsun bilinen bütün büyük otoritelerin regülasyonlarına uygundur. (Payment Card Industry (PCI), Service Organization Controls (SOC), International Organization for Standardization (ISO), ve ICSA Labs)
Evet hızlı bir şekilde temel olarak Azure Firewall’ un ne olduğundan bahsetmeye çalıştım. Umarım faydalı bir yazı olmuştur. Bir sonraki yazımda yavaş yavaş Azure Firewall uygulamaları ile devam edeceğiz.