Azure DNS hizmeti ile DNS’e giriş

İster sistemci olun ister yazılımcı, eninde sonunda internete açık bir web sitesi yayımlamak istediğinizde yolunuz öyle ya da böyle DNS’e düşer. Çünkü DNS internet sitelerine erişim için hayatidir. Peki, nedir DNS?

İnternet ortamındaki sunucuların veya hizmetlerin internetteki lokasyonlarını belirleyen adreslere IP adresleri deriz. DNS (Domain Naming System) size abcd.com alan adı altında hizmet veren sunucuya ulaşmak için hangi IP adresine gitmeniz gerektiğini söyler.

Eğer size isim karşılığında hangi adrese gitmeniz gerektiğini söyleyen bir sistem olmazsa internetin ne hale gelebileceğini düşünün. DNS’i telefon rehberine benzetebiliriz. Arayacağınız kişi veya kurumun ismini bilirsiniz fakat telefon numarasını öğrenmek için rehbere bakarsınız. abcd.com adresine gitmek istediğinizde olanları örneklemek gerekirse:

  • Tarayıcınız adres satırına abcd.com sitesinin adresini yazdığınızı algılar.
  • Bilgisayarınız, DNS sistemini kullanarak abcd.com sitesinin name server’larını öğrenir.
  • ns1.xyz.com ve ns2.xyz.com name server’larına karşılık gelen sunucu IP adresleri öğrenilir.
  • Bilgisayarınız name server’lara abcd.com için A kaydını (IP adresi) sorar.
  • Namer server’lar 123.321.123.321 IP adresiyle cevap verir.
  • Bilgisayarınız 123.321.123.321 IP adresine, gitmek istediğiniz web sayfasını da içeren bir istek gönderir.
  • abcd.com sitesini barındıran sunucu, web tarayıcınıza istenilen sayfayı gönderir.

İnternette veya yerel ağınızdaki bir hizmeti çağırmanın en temel yolu olan DNS, tam olarak bu sebeple siber saldırılara karşı korunması gereken en önemli hizmetlerden biridir. Zira sizin onlarca node’dan oluşan, %99.99 SLA ve yüksek performansla sunmak için gece gündüz çabaladığınız hizmetiniz (kurumsal web siteniz veya mail hizmetiniz), o hizmeti sunan sunuculara hiç dokunulmadan, sadece bir DNS hijacking saldırısı ile kullanılmaz hale gelebilir. Bakınız Temmuz 2017'de video streaming devi Netflix’e yapılan DNS saldırısı.

Yıllardır bu sektörün içerisinde olan bir birey olarak şunu diyebilirim: Public DNS hizmetinizi asla kendi lokal sistem odanızda barındırdığınız sunucular üzerinde vermemelisiniz. Zira DNS Security başlı başına bir konu ve bunu komik fiyatlara, sizin sağlayamayacağınız SLA seviyeleri ile verebilen birçok bulut hizmeti sağlayıcısı var. Yazımızda bunlardan bir tanesi olan Azure DNS Zone’a örnek vereceğiz. Hizmet hakkında genel bir bilgiye buradan, fiyatlandırma hakkında bilgiye ise buradan ulaşabilirsiniz. Ücretlendirmeler cidden komik. “Bu hizmetin yükünü lokal sistem odamda onca sunucu ve güvenlik donanımı/lisansı ve personel pahasına taşımam gerekiyor mu?” diyeceksiniz.

Azure portala giriş yapıp, sol üstteki “Create a resource” butonuna bastıktan sonra “DNS Zones” u seçip ilerleyelim.

Yukardaki ekran görüntüsünde “Name” kısmına hosting firmasından satın aldığınız alan adınızı yazın. Bu, her alan adımız için bir DNS Zone oluşturacağımız anlamına geliyor. Örneğimizde şahsıma ait olan “mollaoglu.org” domain adını kullanacağız. Resource Group ve Location seçimini yapıp ilerleyelim. Dipnot: Azure DNS, DNS hizmetinin doğası gereği global bir hizmettir ve hangi Azure veri merkezi lokasyonunu seçerseniz seçin hizmet, bütün Azure veri merkezleri tarafınca verilir.

DNS Zone oluştuktan sonra bu şekilde bir panel ile karşılaşacaksınız. Gelelim konfigürasyona. Yukarda DNS’in çalışma adımlarını örneklerken name server’lardan bahsetmiştim. İşte sarı ile işaretlediğim alanlar tam olarak name server’ları işaret ediyor. Alan adımızın DNS yönetimini Azure DNS’e taşımak için ilk yapacağımız şey, bu name server adreslerini, alan adınızı satın aldığınız hosting firmasının kontrol panelinde tanımlamak.

Hosting firmasına göre bu tanımlama ayarları değişir fakat genellikle “Name Server Güncelle”, “Ad Sunucuları Ekle/Değiştir” gibi tanımlarla ifade edilir. Örneğimizde paneldeki ayar aşağıdaki gibi gözüküyordu:

“Ad Sunucularını Yönet” linkine girdikten sonra halihazırda girili olan değerleri, Azure DNS’in name server bilgileriyle değiştirelim.

Bu değişikliği yaptıktan sonra, bu alan adınıza ait bütün DNS kaydı açma, silme, güncelleme işlemini artık Azure DNS panelinden yapabileceğiz. Tekrar Azure paneline dönelim ve örnek bir A kaydı açalım, zira en çok kullanacağımız DNS kayıt türleri arasında A ve CNAME kayıtları var.

Eğer web sitemizi doğrudan alan adımız (mollaoglu.org)ile yayımlamak istiyorsak Name kısmına “@” yazalım, Type kısmında A seçili olsun. IP adresine de web hizmetini veren sunucumuzun public IP adresini girelim.

Eğer web sitemizi test.mollaoglu.org gibi bir sub-domain altında yayımlamak istersek o zaman Name kısmına “test” yazacağız.

DNS kısmında yapılacak ayarlar bu kadar. Bundan sonraki kısım, sitenizi host ettiğiniz sunucudaki web server’ın (IIS, Apache vb.) kontrol paneline girip sitenizin hostname parametresini tanımlamak ve gerekli firewall ayarlarını yapmak oluyor. Örnek olması için Windows Server üzerindeki IIS’te bu ayarı nasıl yapacağınızı gösterelim.

Daha önceden burada kurulumunu yaptığımız Azure DevOps Server 2019 RC’nin web yönetim panelini kullanabiliriz. Administrative Tools’tan Internet Information Services Manager’ı açalım.

Sites’ın altında web sitemizin üzerine sağ tıklayalım ve “Edit Bindings” seçeneğine tıklayalım.

Add butonuna basıp host name kısmına alan adımızı yazalım.

IIS tarafında da hazırız geriye firewall kalıyor. Windows Firewall üzerinde ihtiyaca göre 80 ve 443 portlarını açtıktan sonra artık web sitemize, seçtiğimiz alan adı üzerinden erişilebilirz. Eğer sunucuz Azure’da bir sanal makine ise Windows Firewall ayarlarına ek olarak aynı portları Azure panelindeki Network Security Group üzerinden de açmanız gerekiyor.

Başka bir makalede görüşmek üzere.

--

--