Neler yeni

Yazılım Forum

Tüm özelliklerimize erişmek için şimdi bize katılın. Kayıt olduktan ve giriş yaptıktan sonra konu oluşturabilecek, mevcut konulara yanıt gönderebilecek, itibar kazanabilecek, özel mesajlaşmaya erişebilecek ve çok daha fazlasını yapabileceksiniz! Bu hizmetlerimiz ise tamamen ücretsiz ve kurallara uyulduğu sürece sınırsızdır, o zaman ne bekliyorsunuz? Hadi, sizde aramıza katılın!

Adım Adım DNS Sunucusu Yapılandırma Rehberi: Temel Kurulumdan Gelişmiş Ayarlara

DNS Sunucusu Yapılandırma Rehberi: Temel Kurulumdan Gelişmiş Ayarlara

İnternet dünyasının görünmez kahramanlarından biri olan Alan Adı Sistemi (DNS), aslında bir telefon rehberi gibidir. İnternet sitelerine erişmek için karmaşık IP adreslerini hatırlamak yerine, google.com gibi okunabilir alan adları kullanırız. DNS, bu alan adlarını ilgili IP adreslerine çevirerek web tarayıcılarımızın doğru sunuculara ulaşmasını sağlar. Bir DNS sunucusunu doğru bir şekilde yapılandırmak, ağınızın performansı, güvenliği ve erişilebilirliği için hayati öneme sahiptir. Bu kapsamlı rehberde, bir DNS sunucusunu baştan sona nasıl yapılandıracağınızı, temel kurulumdan gelişmiş ayarlara kadar adım adım inceleyeceğiz.

1. DNS Neden Bu Kadar Önemli?
DNS, modern ağ altyapısının temel taşıdır. E-posta göndermekten web sitelerine göz atmaya, hatta bulut hizmetlerine erişmeye kadar hemen her çevrimiçi etkinlik DNS çözümlemesine dayanır. Hatalı bir DNS yapılandırması, ağ kesintilerine, yavaş erişim hızlarına ve güvenlik açıklarına yol açabilir. Kendi DNS sunucunuzu yönetmek, alan adlarınız üzerinde tam kontrol sağlamanıza, yerel ağınızdaki çözümleme süreçlerini optimize etmenize ve dış bağımlılıkları azaltmanıza olanak tanır.

2. DNS Sunucu Türleri
Bir DNS sunucusu yapılandırmaya başlamadan önce, farklı türlerini anlamak önemlidir:
  • Yetkili (Authoritative) Sunucular: Belirli bir alan adına ait bilgileri (IP adresleri, posta sunucuları vb.) doğrudan tutar ve sorgulara bu bilgileri vererek yanıt verir. Örneğin, example.com'un yetkili sunucusu, www.example.com'un IP adresini bilir.
  • Özyinelemeli (Recursive) Sunucular: Müşteriden gelen sorguları alır ve eğer kendi önbelleğinde yoksa, yetkili sunuculara doğru sorguyu ileterek cevabı bulmaya çalışır. Cevabı bulduktan sonra hem müşteriye döner hem de önbelleğine kaydeder.
  • Önbellekleme (Caching) Sunucular: Sadece sorguları önbelleğinde tutar ve aynı sorgu tekrar geldiğinde daha hızlı yanıt verir. Çoğu özyinelemeli sunucu aynı zamanda önbellekleme yapar.
Genellikle, kendi ağınız için hem yetkili hem de özyinelemeli/önbellekleme hizmeti verebilecek bir DNS sunucusu yapılandırırsınız.

3. Ön Hazırlıklar
Kuruluma başlamadan önce şunları gözden geçirin:
  • İşletim Sistemi: Rehberimizde Linux (Debian/Ubuntu) üzerinde Bind9 kullanımına odaklanacağız, ancak adımlar diğer Linux dağıtımları veya Windows Server için de benzer mantıktadır.
  • Sabit IP Adresi: DNS sunucunuzun sabit bir IP adresine sahip olması kritik öneme sahiptir. Dinamik IP adresleri sorunlara yol açabilir.
  • Güvenlik Duvarı (Firewall): DNS trafiği için gerekli portların (UDP/TCP 53) açık olduğundan emin olun.
  • Alan Adı: Kendi yetkili alan adınızı (örn. ornekalanadi.com) belirleyin.

4. Bind9 Kurulumu (Linux)
Bind9, Linux dünyasında en yaygın kullanılan DNS sunucusu yazılımıdır. Kurulumu oldukça basittir:
Kod:
sudo apt update
sudo apt install bind9 bind9utils bind9-doc
Kurulumdan sonra Bind9 servisi otomatik olarak başlayacaktır. Durumunu kontrol etmek için:
Kod:
systemctl status bind9
Eğer sorunsuz çalışıyorsa, bir sonraki adıma geçebiliriz.

5. Temel DNS Yapılandırması
Bind9'un ana yapılandırma dosyası genellikle `/etc/bind/named.conf.options` ve yerel alan adları için `/etc/bind/named.conf.local` dosyalarıdır.

named.conf.options: Bu dosya global ayarları içerir. Örnek bir yapılandırma:
Kod:
options {
    directory "/var/cache/bind";
    // Eğer dış DNS sunucularından sorgu yapmak istiyorsanız forwarders kullanın.
    // Google DNS: 8.8.8.8, 8.8.4.4
    forwarders {
        8.8.8.8;
        8.8.4.4;
    };
    
    // Ağınızdaki hangi istemcilerin DNS sorgusu yapmasına izin verileceğini belirtin.
    allow-query { any; }; // Veya belirli IP aralıkları: { 192.168.1.0/24; localhost; };
    
    // DNSSEC doğrulamayı etkinleştirin (isteğe bağlı ama önerilir)
    dnssec-validation auto;
    
    auth-nxdomain no;    // RFC1035
    listen-on { any; };  // Veya belirli bir IP adresi: { 192.168.1.100; };
};
named.conf.local: Bu dosya, kendi yönettiğiniz alan adları (zonelar) için kullanılır.
Kod:
// İleriye Yönelik Sorgu Alanı (Forward Lookup Zone)
zone "ornekalanadi.com" {
    type master;
    file "/etc/bind/db.ornekalanadi.com"; // Bu dosya oluşturulacak
    allow-update { none; }; // Dinamik güncellemeleri kapat
};

// Geriye Yönelik Sorgu Alanı (Reverse Lookup Zone) - IP'den alan adına
zone "1.168.192.in-addr.arpa" { // Ağınızın ters IP'si (192.168.1.x ise 1.168.192)
    type master;
    file "/etc/bind/db.199"; // Bu dosya oluşturulacak
    allow-update { none; };
};

6. Bölge (Zone) Dosyaları Oluşturma
Şimdi `named.conf.local` içinde belirttiğimiz zone dosyalarını oluşturmalıyız.

İleriye Yönelik Sorgu Dosyası (db.ornekalanadi.com):
Kod:
;
; BIND data file for ornekalanadi.com
;
$TTL    604800
@       IN      SOA     ns1.ornekalanadi.com. admin.ornekalanadi.com. (
                          2023102601 ; Seri numarası (yyyyMMddNN)
                          604800     ; Yenileme (Refresh)
                          86400      ; Tekrar Dene (Retry)
                          2419200    ; Süresi Doldu (Expire)
                          604800 )   ; Önbellek TTL (Negative Cache TTL)
;
@       IN      NS      ns1.ornekalanadi.com. ; Nameserver kaydı
@       IN      A       192.168.1.100         ; Ana alan adının IP'si (DNS sunucusunun IP'si olabilir)
ns1     IN      A       192.168.1.100         ; Nameserver'ın IP'si
www     IN      A       192.168.1.101         ; www.ornekalanadi.com
mail    IN      A       192.168.1.102         ; mail.ornekalanadi.com
ftp     IN      CNAME   www                   ; ftp.ornekalanadi.com -> www.ornekalanadi.com
Geriye Yönelik Sorgu Dosyası (db.199 - örn. 192.168.1.199 için):
Kod:
;
; BIND reverse data file for 192.168.1.x
;
$TTL    604800
@       IN      SOA     ns1.ornekalanadi.com. admin.ornekalanadi.com. (
                          2023102601 ; Seri
                          604800     ; Yenile
                          86400      ; Tekrar Dene
                          2419200    ; Süresi Doldu
                          604800 )   ; Önbellek TTL
;
@       IN      NS      ns1.ornekalanadi.com.
100     IN      PTR     ns1.ornekalanadi.com. ; 192.168.1.100'ün alan adı
101     IN      PTR     www.ornekalanadi.com.
102     IN      PTR     mail.ornekalanadi.com.
Dosyaları kaydettikten sonra, izinlerini doğru ayarlamayı unutmayın:
Kod:
sudo chown root:bind /etc/bind/db.*
sudo chmod 644 /etc/bind/db.*

7. Yapılandırmayı Kontrol Etme ve Servisi Yeniden Başlatma
Değişiklikleri uygulamadan önce, yapılandırma dosyalarınızda hata olup olmadığını kontrol etmek önemlidir:
Kod:
sudo named-checkconf
sudo named-checkzone ornekalanadi.com /etc/bind/db.ornekalanadi.com
sudo named-checkzone 1.168.192.in-addr.arpa /etc/bind/db.199
Eğer herhangi bir hata mesajı almazsanız, her şey yolunda demektir. Şimdi Bind9 servisini yeniden başlatın:
Kod:
sudo systemctl restart bind9
sudo systemctl enable bind9 ; (otomatik başlatma için)

8. DNS Çözümlemesini Test Etme
DNS sunucunuzun doğru çalıştığından emin olmak için dig veya nslookup araçlarını kullanabilirsiniz:
Kod:
dig @192.168.1.100 www.ornekalanadi.com
dig @192.168.1.100 -x 192.168.1.101
Çıktıda beklediğiniz IP adresleri veya alan adları görünüyorsa, DNS sunucunuz başarıyla çalışıyor demektir. Kendi istemcinizin `/etc/resolv.conf` dosyasını DNS sunucunuzun IP adresini gösterecek şekilde güncelleyerek ağ genelinde test yapabilirsiniz.

9. Gelişmiş DNS Konuları (Kısaca)
  • DNSSEC (DNS Security Extensions): DNS verilerinin doğruluğunu ve bütünlüğünü kriptografik imzalarla sağlar. Önbellek zehirlenmesi gibi saldırılara karşı koruma sunar. `named.conf.options` içinde `dnssec-validation auto;` satırını etkinleştirerek temel DNSSEC doğrulamayı açabilirsiniz.
  • Dinamik DNS (DDNS): DHCP sunucularıyla entegre olarak istemcilerin IP adresleri değiştiğinde DNS kayıtlarını otomatik olarak güncellemenizi sağlar. Bu, özellikle sık IP değişikliği olan ortamlarda büyük kolaylık sağlar.
  • Gizli (Stealth) Ana Sunucu: Harici ağlara sadece ikincil DNS sunucularınızın göründüğü, birincil sunucunun gizli kaldığı bir yapı. Güvenliği artırır.
  • Split-Horizon DNS: Aynı alan adı için iç ağdaki kullanıcılara farklı, dış ağdaki kullanıcılara farklı DNS yanıtları veren bir yapılandırma. İç IP adreslerinin dışarıya sızmasını engeller.

10. Sık Karşılaşılan Sorunlar ve Çözümleri
  • Servis Başlamıyor: Genellikle yapılandırma dosyasındaki bir sözdizimi hatasından kaynaklanır. `named-checkconf` ve `journalctl -xeu bind9` komutlarını kullanarak detaylı hata mesajlarını kontrol edin.
  • Sorgular Çözümlenmiyor:
    • Güvenlik duvarı (firewall) port 53'ü engelliyor olabilir.
    • `allow-query` ayarı istemcinizin IP'sini içermiyor olabilir.
    • Zone dosyasındaki kayıtlar hatalı olabilir (`named-checkzone` kullanın).
    • DNS sunucunuzun doğru forwarders'a sahip olup olmadığını kontrol edin.
  • Önbellek Sorunları: Bazen eski veriler önbellekte kalabilir. `rndc reload` komutu ile Bind9'u yeniden yükleyebilir veya `rndc flush` ile önbelleği temizleyebilirsiniz.
  • İzin Hataları: Zone dosyalarının ve Bind dizinlerinin `bind` kullanıcısı tarafından okunabilir olduğundan emin olun.

Unutmayın, iyi yapılandırılmış bir DNS sunucusu, ağınızın omurgasıdır. Performans ve güvenlik için düzenli bakım ve izleme şarttır.

dns-server-diagram.png

Yukarıdaki diyagram, tipik bir DNS çözümleme sürecini göstermektedir: İstemci DNS sunucusuna sorgu yapar, DNS sunucusu önbelleğinden veya diğer yetkili sunuculardan cevabı bulur ve istemciye geri döner.

Sonuç
Kendi DNS sunucunuzu kurmak ve yönetmek, başlangıçta göz korkutucu görünse de, adım adım yaklaşıldığında oldukça yönetilebilir bir süreçtir. Bu rehberde ele alınan temel kurulum ve yapılandırma adımları, kendi ağınız için sağlam bir DNS altyapısı oluşturmanızda size yol gösterecektir. Güvenlik, performans ve esneklik açısından sağladığı avantajlar göz önüne alındığında, DNS sunucusu yönetimi her ağ yöneticisi için değerli bir beceridir. Düzenli yedeklemeler yapmayı, yazılım güncellemelerini takip etmeyi ve DNS sunucunuzun performansını izlemeyi alışkanlık haline getirin. Daha fazla bilgi ve detaylı belgeler için ISC BIND Dokümantasyonu sayfasını ziyaret edebilirsiniz.
 
shape1
shape2
shape3
shape4
shape5
shape6
Üst

Bu web sitenin performansı Hazal Host tarafından sağlanmaktadır.

YazilimForum.com.tr internet sitesi, 5651 sayılı Kanun’un 2. maddesinin 1. fıkrasının (m) bendi ve aynı Kanun’un 5. maddesi kapsamında Yer Sağlayıcı konumundadır. Sitede yer alan içerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır.

YazilimForum.com.tr, kullanıcılar tarafından paylaşılan içeriklerin doğruluğunu, güncelliğini veya hukuka uygunluğunu garanti etmez ve içeriklerin kontrolü veya araştırılması ile yükümlü değildir. Kullanıcılar, paylaştıkları içeriklerden tamamen kendileri sorumludur.

Hukuka aykırı içerikleri fark ettiğinizde lütfen bize bildirin: lydexcoding@gmail.com

Sitemiz, kullanıcıların paylaştığı içerik ve bilgileri 6698 sayılı KVKK kapsamında işlemektedir. Kullanıcılar, kişisel verileriyle ilgili haklarını KVKK Politikası sayfasından inceleyebilir.

Sitede yer alan reklamlar veya üçüncü taraf bağlantılar için YazilimForum.com.tr herhangi bir sorumluluk kabul etmez.

Sitemizi kullanarak Forum Kuralları’nı kabul etmiş sayılırsınız.

DMCA.com Protection Status Copyrighted.com Registered & Protected