Giriş
DNS (Alan Adı Sistemi) sunucusu, internet üzerindeki alan adlarını IP adreslerine çeviren kritik bir bileşendir. BIND (Berkeley Internet Name Domain), en yaygın kullanılan DNS sunucusu yazılımlarından biridir. Rocky Linux 9 üzerinde BIND kurulum süreci adım adım açıklanacaktır.
Gereksinimler
Rocky Linux 9 yüklü bir sunucuya sahip olunmalıdır. Sunucuda root yetkilerine veya sudo yetkilerine sahip bir kullanıcı ile işlem yapılması gerekmektedir. Ayrıca, sistemin güncel olduğundan emin olunmalıdır. Aşağıdaki komut kullanılarak güncellemeler kontrol edilebilir:
“`bash
sudo dnf update
“`
BIND Kurulumu
BIND yazılımının kurulumu için `dnf` paket yöneticisi kullanılacaktır. Aşağıdaki komut, BIND paketinin kurulumu için gereklidir:
“`bash
sudo dnf install bind bind-utils
“`
Kurulum tamamlandıktan sonra, BIND servisi sistem üzerinden etkinleştirilmelidir. Bunu yapmak için ilgili servis başlatılmalı ve her yeniden başlatmada otomatik olarak başlaması sağlanmalıdır:
“`bash
sudo systemctl start named
sudo systemctl enable named
“`
BIND Konfigürasyonu
BIND, genellikle `/etc/named.conf` dosyası üzerinden yapılandırılır. Bu dosya, DNS sunucusunun ana yapılandırma dosyasıdır. Varsayılan yapılandırmayı incelemek ve gerekli değişiklikleri yapmak için dosya bir metin editörü ile açılmalıdır:
“`bash
sudo vi /etc/named.conf
“`
Bu dosyada, dinlenecek IP adresleri ve bölgeler (zones) tanımlanmalıdır. Örnek bir yapılandırma aşağıdaki gibidir:
“`conf
options {
listen-on port 53 { any; };
allow-query { any; };
};
zone “example.com” IN {
type master;
file “/var/named/example.com.db”;
};
“`
Bölge Dosyası Oluşturma
DNS kayıtları, bölge dosyasında tanımlanır. Yukarıdaki örnekte belirtilen `example.com` için bir bölge dosyası oluşturulması gerekmektedir. Öncelikle bu dosya `var/named` dizininde oluşturulmalıdır:
“`bash
sudo vi /var/named/example.com.db
“`
Aşağıda verilen örnek, bir bölge dosyası içeriğini göstermektedir:
“`dns
$TTL 86400
@ IN SOA ns.example.com. admin.example.com. (
2023101901 ; seri numarası
3600 ; güncelleme süresi
1800 ; yeniden deneyim süresi
604800 ; TTL
86400 ) ; maksimum TTL
; İsim sunucuları
@ IN NS ns.example.com.
; A kayıtları
@ IN A 192.168.1.10
ns IN A 192.168.1.10
; CNAME kayıtları
www IN CNAME example.com.
“`
İzinlerin Kontrolü
BIND’in düzgün çalışabilmesi için bölge dosyasının izinleri kontrol edilmelidir. BIND hizmetinin kullanıcı olarak çalıştığı `named` kullanıcısına uygun izinlerin verilmesi önemlidir:
“`bash
sudo chown named:named /var/named/example.com.db
sudo chmod 640 /var/named/example.com.db
“`
Firewall Ayarları
DNS servisi için gerekli olan 53 numaralı portun açık olması gerekmektedir. Firewall ayarlarının güncellenmesi için aşağıdaki komut kullanılmalıdır:
“`bash
sudo firewall-cmd –add-port=53/tcp –permanent
sudo firewall-cmd –add-port=53/udp –permanent
sudo firewall-cmd –reload
“`
Servisin Yeniden Başlatılması
Yapılandırma dosyası üzerinde değişiklikler yapıldıktan sonra BIND servisi yeniden başlatılmalıdır. Aşağıdaki komut bu işlemi gerçekleştirmek için kullanılabilir:
“`bash
sudo systemctl restart named
“`
DNS Kayıtlarının Test Edilmesi
BIND kurulduktan ve yapılandırma tamamlandıktan sonra, DNS kayıtlarının doğru çalıştığını doğrulamak için `dig` veya `nslookup` araçları kullanılabilir. Örneğin, aşağıdaki komut ile `example.com` için bir DNS sorgusu yapılabilir:
“`bash
dig @localhost example.com
“`
Bu komut, sunucuya yapılan sorgunun sonuçlarını gösterecektir. Eğer yapılandırma düzgünse, ilgili IP adresi dönecektir.
Sorun Giderme
Eğer DNS sunucusunun çalışmasında sorunlar yaşanıyorsa, BIND’in log dosyaları kontrol edilmelidir. Log dosyaları genellikle `/var/log/messages` veya `/var/named/data/named.run` konumunda bulunur. Aşağıdaki komut ile log dosyaları incelenebilir:
“`bash
sudo tail -f /var/log/messages
“`
Sonuç
Rocky Linux 9 üzerinde BIND ile DNS sunucusu kurulumu, adım adım da tanımlandığı gibi gerçekleştirilmiştir. Sunucunun yapılandırılması, DNS kayıtlarının eklenmesi ve test edilmesi süreci tamamlandıktan sonra çalışma durumu kontrol edilmelidir. Bu işlem ile birlikte, belirtilen alan adı ve IP adresleri arasındaki ilişki sağlanmış olur.


