Ana Sayfa » *nix » Unbound ile Güvenli Recursive DNS Kurulumu

Unbound ile Güvenli Recursive DNS Kurulumu


BerbatKötüİdare EderGüzelHarika (Henüz Puan Verilmedi. Oy kullanarak siz de katkı yapabilirsiniz.)
Loading...

Unbound, güvenlik önplanda tutularak geliştirilen bir sunucusudur. validating (DNSSec), recursive ve caching modları bulunan bu daemon'ı ile kendi alan adlarınızına ait kayıtlarını barındırmak üzere authoritative DNS sunucusu kurabileceğiniz gibi üzerinde alan adı barındırmadan sadece çözümleme yapan recursive bir DNS sunucusu da kurabilirsiniz.

Ben bu yazıda unbound kullanarak hızlıca bir recursive DNS kurulum ve yapılandırmasının nasıl gerçekleştirilebileceğini anlatacağım.

Kurulum

BSD sistemler, / ve Debian/Ubuntu gibi popüler dağıtımlar için precompiled paketleri bulunan unbound ilgili sistemlerin paket yöneticileri üzerinden kolayca kurulabilmektedir.

Debian/Ubuntu

Debian'larda unbound paketi öntanımlı depolarda bulunuyor bu nedenle apt-get ile doğrudan kurabiliyoruz:

# apt-get install unbound

/

/'larda unbound base repolarda bulunmadığı için öncesinde sisteme epel repositorysini ekliyoruz. (Şu an güncel epel repo sürümü 6.8 ancak etmeden yeni bir sürüm var mı diye kontrol etmenizi öneririm.) ve ardında da unbound kurulumunu gerçekleştiriyoruz.

# rpm -Uvh https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# yum install unbound
# chkconfig unbound on

FreeBSD Sistemlerde

FreeBSD sistemlerde ise aşağıdaki adımları izleyerek kurulum yapıyoruz.

# pkg_add -i unbound
# echo 'unbound_enable="YES"' >> /etc/rc.conf
# cd /usr/local/etc/unbound && cp unbound.conf.sample unbound.conf

 

Recursive DNS Yapılandırması

unbound'un ana yapılandırma dosyası Linux dağıtımlarda /etc/unbound/unbound.conf FreeBSD'lerde ise (biraz evvel örnekten kopyaladığımız) /usr/local/etc/unbound/unbound.conf ‘dur ve hemen tüm tanımlamalar bu dosya içerisinde yapılmaktadır.

Sunucumuzu recursive dns servisi olarak hizmet verecek şeklide düzenlemel için öncesinde varolan unbound.conf dosyasının içeriğini boşaltalım:

## RHEL/Debian vs.
# :> /etc/unbound/unbound.conf

## FreeBSD
# > /usr/local/etc/unbound/unbound.conf

Sonrasında da ilgili dosyaya aşağıdaki ibareleri ekleyelim:

server:
	interface: 0.0.0.0
        access-control: 10.0.0.0/8 allow 
        access-control: 172.16.0.0/12 allow
        access-control: 192.168.0.0/16 allow
        verbosity: 1

forward-zone:
      name: "."
      forward-addr: 8.8.8.8        # Google Public DNS
      forward-addr: 8.8.4.4        # Google Public DNS

Bu ifadelere göre:

  • unbound kendisini 0.0.0.0 (sistemdeki tüm interface'ler)'e bind edecek,
  • 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 networklerinden gelecek dns querylerini kabul edecek,
  • ve çözümlemeyi Google Public DNS'leri üzerinden yapıp istekte bulunana döndürecektir.
  • verbosity ifadesi, loglamanın ne kadar detaylı yapılacağını belirtmekte ve 0 ile 5 arası bir değer alabilmektedir.

Yapılandırma konusunda dikkat edilecek önemli bir husus access-control'ün doğru düzenlenmesidir. Bu kısımda sadece recursive dns hizmeti vermek istediğiniz networkleri tanımlamanız gerekir.

Tanımlamaları bitirdikten sonra sunucuyu başlatalım:

service unbound start

Herşey yolunda gidip gitmediğiniz sunucunun kendi üzerinden bir dns sorgulaması yaparak test edebilirsiniz:

nslookup -q=mx google.com 127.0.0.1

Sistem düzgün çalışıyorsa sorgunuzun cevabını almanız gerekir.

Unbound ile ilgili tüm detaylar için http://unbound.net/index.html adresine göz atabilirsiniz.

Visited 1.060 times, 1 visit(s) today
Kategoriler: *nix |

Bu yazılar da ilginizi çekebilir:


- DjbDNS ile Caching DNS Server Kurulumu
- Rsnapshot ile Uzak Linux Hostların Backuplarını Almak
- HAProxy ile SMTP Load Balancing
- VMWare Üzerine Backtrack 4 Kurulumu
- Php5 (PHP-FPM) + MySQL destekli Nginx Kurulumu

Yorumlar


Henuz yorum yapilmamis.

Yorumda bulunun.