Security Researcher, Entrepreneur, Senior Linux Admin

22 Ağustos 2014 Cuma

Bind Dns Sunucu Kurulumu ve Ayarları

Linux üzerinde djbdns kurulumunu daha çok sevmeme rağmen kurulumdaki adımlarından dolayı Bind kurmak ve ayarlamak daha kolay geliyor. Bind her linux dağıtımında bulunmaktadır. Biz yine ubuntu için kurulum yapıyoruz. Ancak diğer dağıtımalrda kurulum komutu bind9 dedinizmi genelde gelir. Ayaları hepsinde aynıdır. Bind yazılımı ile birlikte dns sorgulama araçları vs birlikte kuruyorum.

Bind kurulumunda alan adına ve sunucunun ip adresine göre kurulum yapılır. Ben burada aşağıdaki bilgileri kullanıcam. 

Alan Adı (Domain) = Linuxuzmani.net
IP olarak                = 74.125.136.121

apt-get install bind9 bind9 bind9utils bind9-doc

Alan Adlarının Veritabanı Ayarları

İlk olarak alan adımıza ait bilgilerin tutulacağı ayar dosyasının yolunu göstereceğiz. Bunun için bind sunucunun named.conf.local dosyasına aşağıdaki ayarları ekleyeceğiz. PTR kaydı için genelde sunucu panellerinden ayarlanır. Ancak biz yinede ekleyelim. Burada Ip adresini son kısmı olmadan sağdan sola okunarak yazılır. Son kısımdaki rakamı daha sonra o ayar dosyasının içine girerizki sorgulamada değeri döndürsün. Bu bir  sefer ayarlanır. Onun için fazla takılmayın.

mcedit /etc/bind/named.conf.local


#bu ayarı her alan adı için yapacağız

zone "mekaniker.com" {
    type master;
    file "/etc/bind/zones/db.linuxuzmani.net";
};


#aşağıdaki ayar bir kere oluyor. 
#Ip Adresimiz 74.125.136.121

zone "136.125.74.in-addr.arpa" {
    type master;
    file "/etc/bind/zones/db.136.125.74";
};

Alan Adına Ait Tanımlama Dosya Ayarları

Önceki ayardaki Zones (Bölgeler) klasörünü oluşturuyoruz.

mkdir -p /etc/bind/zones

Şimdide alan adımıza ait dosyamızı oluşturuyoruz. Burada satır sonlarındaki . (nokta) işaretlerine dikkat ediniz. Eğer eklemezseniz ayarlarınız geçerli olmaz.

cd /etc/bind/zones

mcedit db.linuxuzmani.net

;
; BIND data file for local loopback interface
;
$TTL    14400
@       IN      SOA     ns1.linuxuzmani.net. admin.linuxuzmani.net. (
                             2014082001         ; Serial
                             3600         ; Refresh
                             600         ; Retry
                             2419200         ; Expire
                             84600 )        ; Negative Cache TTL
;
linuxuzmani.net.  IN      NS      ns1.linuxuzmani.net.
linuxuzmani.net.  IN      NS      ns2.linuxuzmani.net.
@              IN      A       74.125.136.121
s1              IN      A       74.125.136.121
ns1            IN      A       74.125.136.121
ns2            IN      A       74.125.136.121
www          IN      A       74.125.136.121


;Mail Sunucu kendi üzerimizde ise aşağıdaki gibi girmelisiniz. 
;SPF kaydıda hazırlandığından spama düşme ihtimallerinden biri elenmiş olur.
;Eğer Gmail veya Yandex üzerinde tutacaksanız aşağıdaki değerleri silip yerine Google ve Yandex diye adlandırılan diğer paragrafları kullanın.

mail          IN      A       74.125.136.121
@              IN     MX    5 mail.linuxuzmani.net.
@    3600  IN    TXT   "v=spf1  74.125.136.121 a mx ~all"
mail          IN TXT "v=spf1 a -all"

; Email hizmetini google üzerinde tutarsanız aşağıdaki ayarları ekleyebilirsiniz.
; Goolgle için MX Kayıtları
@    3600    IN    MX    1      ASPMX.L.GOOGLE.COM.
@    3600    IN    MX    5      ALT1.ASPMX.L.GOOGLE.COM.
@    3600    IN    MX    5      ALT2.ASPMX.L.GOOGLE.COM.
@    3600    IN    MX    10    ASPMX2.GOOGLEMAIL.COM.
@    3600    IN    MX    10    ASPMX3.GOOGLEMAIL.COM.
@    3600    IN    TXT   "v=spf1 include:_spf.google.com ~all"
mail            3600    IN    CNAME    ghs.google.com.


; Email hizmetini yandex üzerinde tutarsanız aşağıdaki ayarları ekleyebilirsiniz.
; Yandex için MX Kayıtları

linuxuzmani.net 3600      MX         10   mx.yandex.net.
linuxuzmani.net 3600      TXT        "v=spf1 redirect=_spf.yandex.net"
mail                    3600     CNAME    domain.mail.yandex.net.


PTR Kaydı için Tanımlama Dosyası Ayarı

mcedit /etc/bind/zones/db.136.125.74

;
; BIND reverse data file for local loopback interface
;
$TTL    14400
@       IN      SOA     linuxuzmani.net. admin.linuxuzmani.net. (
                                     5         ; Serial
                           604800         ; Refresh
                             86400         ; Retry
                         2419200         ; Expire
                           604800 )       ; Negative Cache TTL
;
@       IN      NS      ns1.linuxuzmani.net.
@       IN      NS      ns2.linuxuzmani.net.
74      IN      PTR     www.linuxuzmani.net.

Bütün ayarlar tamam. Bunların aktif olması için servisimizi yeniden başlatıyoruz.

/etc/init.d/bind restart

Dns Test İşlemleri

dig @8.8.8.8 +short NS linuxuzmani.net

ns2.linuxuzmani.net.
ns1.linuxuzmani.net.

dig linuxuzmani.net  MX +noall +answer

; <<>> DiG 9.9.5-3-Ubuntu <<>> linuxuzmani.net MX +noall +answer
;; global options: +cmd
linuxuzmani.net.        21599   IN      MX      10 mx.yandex.net.

dig -x 74.125.136.121 +short

www.linuxuzmani.net



8 yorum:

  1. yillar sonra gelen yorumda size cok tesekkür etmek istiyorum,sayenizde su lanet dns server olayini yaptim:)

    YanıtlaSil
  2. Tebrik ederim :) Yardımcı olabildiğime sevindim. Selamlar.

    YanıtlaSil
  3. abi seni googleden de yakaladım :)

    YanıtlaSil
    Yanıtlar
    1. Hey maşallah :) Öğrenmişindir o zaman. Selamlar.

      Sil
  4. zone mekaniker.com yerine vps server kendi adımıza ait domain mi yazılmalı(Örnek aliemlek.com.tr vps serverda web yayını yapacaksak) yoksa nic.tr den alındığı için nic.tr mi yazmalıyız.Cevap için teşekkür

    YanıtlaSil
    Yanıtlar
    1. Kendi domain adınızı yazmalısınız. aliemlek.com.tr gibi.

      Sil
  5. Gerek local gerek yurt dışı kaynaklarda karman-çorman dokümanlara taş çıkarırcasına bu kadar sade ve sonuca odaklı anlatım için teşekkür ederim. 2 gündür incelemediğim kaynak kalmamıştı. Bind DNS konusunda okuduğum en kısa makale bu. Fakat sorunumu çözen tek makale de bu oldu. Emeğinize sağlık.

    YanıtlaSil
  6. Hocam çok teşekkürler,
    size sorum olacak, local network üzerindeki ip leri nasıl dahil edebiliriz? mesela adana.linuxuzmani.net için 192.168.1.10
    saygılarımla.

    YanıtlaSil

Etiketler