1. DNS Sunucusu Nedir ve Neden Önemlidir?
DNS (Domain Name System), alan adlarını IP adreslerine çevirerek internet üzerindeki cihazların iletişim kurmasını sağlayan kritik bir sistemdir. Bir DNS sunucusu, alan adlarının doğru IP adreslerine yönlendirilmesini yönetir ve internet trafiğinin doğru şekilde yönlendirilmesini sağlar.Şirketler ve bireyler, kendi DNS sunucularını kurarak internet erişimini daha verimli hale getirebilir, güvenliği artırabilir ve özel alan adlarını yönetebilirler.
2. DNS Sunucusu Kurulumu İçin Gereksinimler
Bir DNS sunucusu kurmadan önce aşağıdaki bileşenlere ihtiyacınız vardır:- Bir Linux sunucu (Ubuntu, Debian, CentOS veya başka bir dağıtım)
- Root erişimi veya sudo yetkilerine sahip bir kullanıcı
- Statik bir IP adresi
- İnternet bağlantısı
3. Ubuntu ve CentOS Üzerinde Bind9 DNS Sunucusu Kurulumu
3.1. Ubuntu 22.04 Üzerinde Bind9 Kurulumu
Ubuntu üzerinde DNS sunucusu kurmak için Bind9 en yaygın kullanılan yazılımlardan biridir.1. Sistem Güncellemelerini Yapın
Bash:
sudo apt update && sudo apt upgrade -y
2. Bind9 Paketini Yükleyin
Bash:
sudo apt install bind9 bind9-utils -y
3. Bind9 Servisini Başlatın ve Etkinleştirin
Bash:
sudo systemctl start bind9
sudo systemctl enable bind9
3.2. CentOS 8 Üzerinde Bind9 Kurulumu
CentOS kullanıyorsanız, aşağıdaki adımları takip edebilirsiniz:1. Sistem Güncellemelerini Yapın
Bash:
sudo dnf update -y
2. Bind9 Paketini Yükleyin
Bash:
sudo dnf install bind bind-utils -y
3. Bind9 Servisini Başlatın ve Etkinleştirin
Bash:
sudo systemctl start named
sudo systemctl enable named
4. DNS Yapılandırma Dosyalarının Düzenlenmesi
4.1. Ana Konfigürasyon Dosyası (named.conf)
Ana yapılandırma dosyası/etc/bind/named.conf.options
(Ubuntu) veya /etc/named.conf
(CentOS) dizininde bulunur.Dosyayı düzenlemek için:
Bash:
sudo nano /etc/bind/named.conf.options # Ubuntu
sudo nano /etc/named.conf # CentOS
Bash:
options {
directory "/var/cache/bind";
recursion yes;
allow-query { any; };
forwarders {
8.8.8.8; # Google DNS
8.8.4.4;
};
};
5. Bölge Dosyalarının (Zone Files) Yapılandırılması
5.1. Forward (İleri Yönlendirme) Bölgesi
İleri yönlendirme bölgesi, alan adlarını IP adreslerine çevirir.Ubuntu’da:
Bash:
sudo nano /etc/bind/db.example.com
Bash:
sudo nano /var/named/example.com.zone
Bash:
$TTL 86400
@ IN SOA example.com. root.example.com. (
2024020901 ; Serial
3600 ; Refresh
1800 ; Retry
604800 ; Expire
86400 ) ; Minimum TTL
;
@ IN NS ns1.example.com.
ns1 IN A 192.168.1.100
www IN A 192.168.1.101
Ubuntu için:
Bash:
sudo nano /etc/bind/named.conf.local
Bash:
sudo nano /etc/named.conf
Bash:
zone "example.com" {
type master;
file "/etc/bind/db.example.com";
};
6. DNS Sunucusunun Test Edilmesi
Bind yapılandırmasını doğrulamak için:
Bash:
sudo named-checkconf
Bash:
sudo named-checkzone example.com /etc/bind/db.example.com
Bash:
sudo systemctl restart bind9 # Ubuntu
sudo systemctl restart named # CentOS
Bash:
nslookup example.com 127.0.0.1
Bash:
dig example.com @127.0.0.1
7. DNS Güvenliği İçin Öneriler
Bir DNS sunucusu kurduktan sonra güvenliğini sağlamak çok önemlidir. İşte bazı öneriler:- Recursive sorguları sınırlandırın: DNS sunucunuzun sadece belirli IP’lerden sorgu almasını sağlayın.
- DNSSEC kullanın: DNSSEC, DNS sorgularının sahte yanıtlarla değiştirilmesini önler.
- Firewall Kuralları Ekleyin:
Bash:sudo ufw allow 53/tcp sudo ufw allow 53/udp sudo ufw reload
- Güncellemeleri düzenli yapın:
Bash:sudo apt update && sudo apt upgrade -y # Ubuntu sudo dnf update -y # CentOS
Eğer kendi DNS sunucunuzu kurmayı düşünüyorsanız, yukarıdaki adımları takip ederek başarılı bir yapılandırma oluşturabilirsiniz.