Linux Sunucular Üzerinde Dns Recursion Özelliğini Kapatmak

DNS Recursion özelliğinin açık olması, “DNS Amplification Attack” saldırılara maruz kalmanız demektir. Bu atak DNS kuvvetlendirmeli DDOS saldırısı olarakta bilinir. Bu nedenle DNS Recursion özelliğinin kapatılması gerekiyor ve biz bu işlemi nasıl yapacağımıza bakacağız. DDOS saldırısının sonuçlarına az/çok aşina olduğunuzu varsayarak, DNS Amplification Attack nedir.? çok fazla ayrıntıda boğmadan durumu anlatan güzel bir videoyu buraya bırakıyorum.

https://www.youtube.com/watch?v=xTKjHWkDwP0

Şimdi ilgili DNS sunucusunda Recursion özelliği açık/kapalı mı.? Herhengi bir kullanıcı makinasından sorgu göndererek test edelim. Ben linux bir client kullanıcam. Aslında DNS sunucusunun yapılandırma dosyasına bakıp bu durumu anlayabiliz ki zaten değişiklik DNS sunucusunun conf dosyasında yapılacak.

Testi “nmap” komutu ile yapacağım.

> sudo nmap -sU -p 53 -sV -P0 –script “dns-recursion” (DNS inizin IP si)

Yukarıdaki ss den de anlaşılacağı üzere DNS Recursion özelliği açık ve DNS Amplification Attack larına karşı savunmasız durumda. Şimdi Recursion özelliğini “/etc/named.conf” dosyasından disable edelim.

Recursion özelliğini disable etmek için “/etc/named.conf” dosyasının “options” bölümüne “recursion no;” satırı eklenmelidir. Aşağıda ss ile de gösterilmiştir.

Şimdi tekrar “nmap” komutumuzla test yapalım ve recursion özelliğinin son durumunu görelim.

> sudo nmap -sU -p 53 -sV -P0 –script “dns-recursion” (DNS inizin IP si)

Yukarıdan da anlaşılacağı üzere recursion özelliği pasif durumda.

BIND Servisi Sorgu Logları Nasıl Aktif-Pasif Edilir.

Bunun için kontrol etmemiz gereken değişken query logging parametresidir. Yani bu parametre On ise sorgu log’u düşüyor, Off ise düşmüyor.

İlk önce durumunu kontrol edelim. Bunun için çalıştıracağımız ilk komut rndc status komutudur. Ve bu komutu çalıştırıdığımızda aşağıdaki gibi query logging is OFF olduğunu görünüyoruz.

> rndc status

Aktif etmek için, yani log’ları alabilmek için rndc querylog komutunu çalıştırıyoruz.

> rndc querylog yada (rndc querylog ON)

Tekrar rndc status ile durum kontrolü yapalım ve aşağıdaki gibi ON olduğunu görelim.

> rndc status

Tail komutu ile de çıktıyı alıp teyit edelim.

> tail -f /var/log/messages

Burada tekrar OFF yapmak için rndc querylog yada (rndc querylog OFF)komutunu çalıştırabilirsiniz. Bu komutu her çalıştığında durumunu tersine çevirir. OFF ise ON, ON ise OFF yapar.