Harici Bir Ağ İçin BIND DNS Sunucusu Nasıl Yapılandırılır
Categories:
5 dk. okuma süresi
BIND DNS Sunucusu (Berkeley İnternet Adı Alanı), hem dahili hem de harici ağlar için en yaygın kullanılan DNS sunucusu yazılım çözümlerinden biridir. BIND’i harici bir ağ için yapılandırmak, internet kullanıcıları için alan adlarını çözebilen genel kullanıma açık bir DNS sunucusu oluşturmayı içerir. Bu kılavuz, AlmaLinux’ta harici DNS sorgularını güvenli ve verimli bir şekilde işlemek için bir BIND DNS sunucusunu kurma ve yapılandırma konusunda adım adım talimatlar sağlayacaktır.
DNS Sunucusu Nedir?
Bir DNS sunucusu, insan tarafından okunabilen alan adlarını (örneğin example.com
) makine tarafından okunabilen IP adreslerine (örneğin 192.168.1.1
) dönüştürür. Harici ağlar için DNS sunucuları, internete ad çözümleme hizmetleri sağlamak açısından kritik öneme sahiptir.
Harici Ağlar için DNS Sunucusunun Temel Özellikleri
- Yetkili Çözümleme: Yönettiği alan adları için yetkili yanıtlarla yanıt verir. 2. Yinelenen Çözümleme: Yönetmediği etki alanları için sorguları diğer DNS sunucularına başvurarak işler (etkinleştirilmişse).
- Önbelleğe Alma: Sorgu süresini azaltmak ve performansı artırmak için yanıtları depolar.
- Ölçeklenebilirlik: Büyük ölçekli etki alanı yönetimini ve yüksek sorgu yüklerini destekler.
Genel DNS Sunucusu İçin AlmaLinux Neden Kullanılmalıdır?
- Kurumsal Düzeyde Kararlılık: Sağlam performansa sahip üretim ortamları için üretilmiştir.
- Güvenlik: SELinux’u içerir ve modern güvenlik protokollerini destekler.
- Uyumluluk: BIND ve ilgili DNS araçlarıyla kolayca entegre olur.
Harici Ağlar İçin BIND Kurulumu İçin Ön Koşullar
Sunucuyu yapılandırmadan önce:
- AlmaLinux Kurulu: AlmaLinux 8 veya sonraki sürümünün temiz bir kurulumunu kullanın. 2. Kök Ayrıcalıkları: Yönetici erişimi gereklidir.
- Statik Genel IP: Sunucunun sabit bir genel IP adresine sahip olduğundan emin olun.
- Kayıtlı Alan: DNS delegasyonu için bir alan adına ve kayıt kuruluşuna erişime ihtiyacınız vardır.
- Güvenlik Duvarı Erişimi: DNS trafiği (TCP/UDP) için 53 numaralı portu açın.
1. Adım: AlmaLinux’a BIND yükleyin
1.1. Adım: Sistemi Güncelleyin
Sistem paketlerinizi en son sürümlere güncelleyin:
sudo dnf update -y
1.2. Adım: BIND ve Yardımcı Programları Yükleyin
BIND DNS sunucusu paketini ve yardımcı programlarını yükleyin:
sudo dnf install bind bind-utils -y
1.3. Adım: Kurulumu Doğrulayın
BIND’in yüklendiğinden emin olun ve sürümünü kontrol edin:
named -v
2. Adım: BIND’i Harici Ağlar için Yapılandırın
2.1. Adım: Varsayılan Yapılandırmayı Yedekleyin
Varsayılan yapılandırma dosyasının bir yedeğini oluşturun:
sudo cp /etc/named.conf /etc/named.conf.bak
Adım 2.2: Yapılandırma Dosyasını Düzenleme
Düzenleme için yapılandırma dosyasını açın:
sudo nano /etc/named.conf
Aşağıdaki bölümleri değiştirin:
- Genel IP’de Dinle:
127.0.0.1
‘i sunucunuzun genel IP adresiyle değiştirin:
options {
listen-on port 53 { 192.0.2.1; }; # Genel IP'nizle değiştirin
allow-query { any; }; # Herhangi bir IP'den gelen sorgulara izin ver
recursion no; # Güvenlik için recursion'ı devre dışı bırak
};
- Alanınız için Bir Bölge Ekleyin: Harici alan adınız için bir bölge tanımlayın:
zone "example.com" IN {
type master;
file "/var/named/example.com.zone";
};
Adım 2.3: Kaydet ve Çık
Dosyayı kaydet (Ctrl + O) ve çık (Ctrl + X).
Adım 3: Alan Adınız İçin Bir Bölge Dosyası Oluştur
Adım 3.1: Bölge Dosyasını Oluştur
/var/named/
dizininde yeni bir bölge dosyası oluştur:
sudo nano /var/named/example.com.zone
Adım 3.2: DNS Kayıtları Ekle
Alan adınız için DNS kayıtlarını tanımla:
$TTL 86400
@ IN SOA ns1.example.com. admin.example.com. (
2023120901 ; Seri
3600 ; Yenile
1800 ; Yeniden Dene
1209600 ; Son Kullanma Tarihi
86400 ); ; Minimum TTL
IN NS ns1.example.com.
IN NS ns2.example.com.
ns1 IN A 192.0.2.1 ; Genel IP'nizle değiştirin
ns2 IN A 192.0.2.2 ; İkincil DNS sunucusu
www IN A 192.0.2.3 ; Örnek web sunucusu
@ IN A 192.0.2.3 ; Kök etki alanı web sunucusuna işaret ediyor
Adım 3.3: İzinleri Ayarla
Bölge dosyasının doğru sahipliğe ve izinlere sahip olduğundan emin olun:
sudo chown root:named /var/named/example.com.zone
sudo chmod 640 /var/named/example.com.zone
Adım 4: BIND Hizmetini Başlatın ve Etkinleştirin
Adım 4.1: BIND’i Önyüklemede Başlatacak Şekilde Etkinleştirin
sudo systemctl enable named
Adım 4.2: Hizmeti Başlatın
sudo systemctl start named
Adım 4.3: Hizmet Durumunu Kontrol Edin
Hizmetin çalıştığını doğrulayın:
sudo systemctl status named
Adım 5: Güvenlik Duvarını Yapılandırın
Adım 5.1: DNS Trafiğine İzin Verin
Hem TCP hem de UDP trafiği için 53 numaralı portu açın:
sudo firewall-cmd --add-service=dns --permanent
sudo firewall-cmd --reload
Adım 5.2: Güvenlik Duvarı Kurallarını Doğrulayın
DNS trafiğine izin verildiğinden emin olun:
sudo firewall-cmd --list-all
Adım 6: Alan Adınızı Delege Edin
Alan adı kayıt kuruluşunuzda, alan adınızın NS (Ad Sunucusu) kayıtlarını DNS sunucunuzu işaret edecek şekilde yapılandırın. Örneğin:
- NS1:
ns1.example.com
->192.0.2.1
- NS2:
ns2.example.com
->192.0.2.2
Bu, etki alanınız için harici sorguların BIND sunucunuza yönlendirilmesini sağlar.
7. Adım: DNS Sunucunuzu Test Edin
7.1. Adım: dig
komutunu kullanın
dig
komutunu kullanarak etki alanı çözümlemesini test edin:
dig @192.0.2.1 example.com
7.2. Adım: nslookup
komutunu kullanın
Alternatif olarak, nslookup
komutunu kullanın:
nslookup example.com 192.0.2.1
7.3. Adım: Günlükleri İzleyin
Herhangi bir hata veya sorgu ayrıntısı için BIND günlüklerini kontrol edin:
sudo tail -f /var/log/messages
Güvenlik ve Performans için Gelişmiş Yapılandırma
Seçenek 1: DNSSEC’yi Etkinleştirin
DNS sunucunuzu DNSSEC ile güvence altına alarak sahtecilik:
- DNSSEC anahtarları oluşturun:
dnssec-keygen -a RSASHA256 -b 2048 -n ZONE example.com
- Anahtarları bölge dosyanıza ekleyin.
Seçenek 2: Hız Sınırlaması
Sorgu hızlarını sınırlayarak kötüye kullanımı önleyin:
rate-limit {
responses-per-second 10;
};
Seçenek 3: İkincil bir DNS Sunucusu Kurun
İkincil bir DNS sunucusuyla güvenilirliği artırın. Birincil sunucunun yapılandırmasını güncelleyin:
allow-transfer { 192.0.2.2; }; # İkincil sunucu IP'si
Yaygın Sorunları Giderme
Sorun 1: “DNS Sunucusu Yanıt Vermiyor”
- Neden: Güvenlik duvarı trafiği engelliyor.
- Çözüm: 53 numaralı bağlantı noktasının açık ve DNS hizmetinin etkin olduğundan emin olun.
Sorun 2: “Bölge Dosyası Hataları”
- Neden: Bölge dosyasında sözdizimi sorunları.
- Çözüm: Bölge dosyasını doğrulayın:
named-checkzone example.com /var/named/example.com.zone
Sorun 3: “BIND Hizmeti Başlatılamıyor”
- Neden:
/etc/named.conf
dosyasında yapılandırma hataları. - Çözüm: Sözdizimi hatalarını kontrol edin:
named-checkconf
Sonuç
AlmaLinux’ta harici bir ağ için BIND’yi yapılandırmak, alan adlarını barındıran veya halka açık DNS hizmetlerini yöneten herkes için kritik bir görevdir. Bu kılavuzu izleyerek, internet için alan adlarını çözebilen sağlam ve güvenli bir DNS sunucusu kurabilirsiniz.
DNSSEC, ikincil sunucular ve hız sınırlaması gibi gelişmiş seçeneklerle, DNS altyapınızın güvenliğini ve performansını daha da artırabilirsiniz. Sorunlarla karşılaşırsanız veya paylaşacak ipuçlarınız varsa, aşağıya bir yorum bırakın. İyi barındırmalar!
Geribildirim
Bu sayfa yararlı oldu mu?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.