acikkaynak.blog_
← tüm yazılar Ağ & İzleme

Pardus Üzerine Bind9 DNS Server Kurulumu

✍ Emre Karabulut📅 30 Mayıs 2020⏱ 4 dakika okuma

DNS’in Yapısı

Pardus Bind9 DNS Server

DNS sistemi, isim sunucuları ve çözümleyicilerinden oluşur. İsim sunucuları olarak düzenlenen bilgisayarlar, host isimlerine karşılık gelen IP adresi bilgilerini tutarlar. Çözümleyiciler ise DNS istemcilerdirDNS istemcilerdeDNS sunucu ya da sunucuların adresleri bulunur.

Bir DNS istemci bir bilgisayarın ismine karşılık IP adresini bulmak istediği zaman isim sunucuya başvurur. İsim sunucu, yani DNS sunucu da eğer kendi veritabanında öyle bir isim varsa, bu isme karşılık gelen IP adresini istemciye gönderir. DNS veritabanına kayıtların elle, tek tek girilmesi gerekir.

Daha Detaylı Bilgi İçin Lütfen Tıklayınız…

Öncelikle Pardus 19.2 Sunucumu güncelliyorum…

sudo apt update

sudo apt upgrade

Etki alan adını veya IP adresini çözümleyen DNS sunucusunu yapılandırmak için BIND‘ı yüklüyoruz. BIND (İsim çözümlemeye yarayan açık kaynaklı bir program paketidir.)

apt -y install bind9 bind9utils dnsutils

Daha sonra Dns yapılandırma dosyamızın yer aldığı /etc/bind/named.conf dizinimize giriyoruz ve oluşturacağımız zone tanımlamalarını belirliyoruz.

nano /etc/bind/named.conf

"/etc/bind/named.conf.options";

"/etc/bind/named.conf.local";

Yorumla

# "/etc/bind/named.conf.default-zones";

# "/etc/bind/named.conf.external-zones";

Ekle

"/etc/bind/named.conf.internal-zones";

Alt Text

Daha sonra bind9 servisini yeniden başlatıyoruz…

sudo systemctl restart bind9

Şimdi ise yeni bir internal-zones oluşturuyoruz. Ben nano düzenleyicisi ile oluşturup içine aşağıda ki satırları ekleyip kendi ortamıma göre ip ve alan adımı yazıyorum…

nano /etc/bind/named.conf.internal-zones

# define for internal section

view "internal" {

        match-clients {

                localhost;

                192.168.1.0/24;

        };

        # set zone for internal

        zone "pardus.lab" {

                type master;

                file "/etc/bind/pardus.lab.lan";

                allow-update { none; };

        };

        # set zone for internal *note

        zone "0.0.10.in-addr.arpa" {

                type master;

                file "/etc/bind/16.1.168.192.db";

                allow-update { none; };

        };

        include "/etc/bind/named.conf.default-zones";

};

Alt Text

Daha sonra izin verdiğimiz sınır aralıklarını tanımlıyoruz.

nano /etc/bind/named.conf.options

options {

        directory "/var/cache/bind";



        // If there is a firewall between you and nameservers you want

        // to talk to, you may need to fix the firewall to allow multiple

        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113



        // If your ISP provided one or more IP addresses for stable

        // nameservers, you probably want to use them as forwarders.

        // Uncomment the following block, and insert the addresses replacing

        // the all-0's placeholder.



        // forwarders {

        //      0.0.0.0;

        // };

        # query range you allow

        allow-query { localhost; 192.168.1.0/24; };

        # the range to transfer zone files

        allow-transfer { localhost; 192.168.1.0/24; };

        # recursion range you allow

        allow-recursion { localhost; 192.168.1.0/24; };

        //========================================================================

        // If BIND logs error messages about the root key being expired,

        // you will need to update your keys.  See https://www.isc.org/bind-keys

        //========================================================================

        dnssec-validation auto;



        auth-nxdomain no;    # conform to RFC1035

        # change if not use IPV6

        listen-on-v6 { none; };

};

Alt Text

Sunucumuzda Forward Primary Zone‘ da kayıt oluşturmak için aşağıda ki ayarları yapıyoruz.

nano /etc/bind/pardus.lab.lan

$TTL 86400

@   IN  SOA     pc.pardus.lab. root.pardus.lab. (

        2019071601  ;Serial

        3600        ;Refresh

        1800        ;Retry

        604800      ;Expire

        86400       ;Minimum TTL

)

        # define name server

        IN  NS      pc.pardus.lab.

        # define name server's IP address

        IN  A       192.168.1.16

        # define mail exchanger

        IN  MX 10   pc.pardus.lab.



# define IP address of the hostname

pc     IN  A       192.168.1.16



Alt Text

Daha Sonra PTR sorguları için** reverse zone** dosyası oluşturuyoruz ve aşağıda ki şekilde düzenliyoruz.

$TTL 86400

@   IN  SOA     pc.pardus.lab. root.pardus.lab. (

        2019071601  ;Serial

        3600        ;Refresh

        1800        ;Retry

        604800      ;Expire

        86400       ;Minimum TTL

)

        # define name server

        IN  NS      pc.pardus.lab.

        # define the range of this domain included

        IN  PTR     pc.pardus.lab.

        IN  A       255.255.255.0



# define hostname of the IP address

16      IN  PTR     pc.pardus.lab.

Alt Text

Şimdi ise BIND‘ı yeniden başlatıyorum ve servisimin durumunu görüntülüyorum.

sudo systemctl restart bind9.service



sudo systemctl status bind9.service



Görüldüğü üzere bind servisimiz sağlıklı bir şekilde çalışmakta…

Alt Text

Daha sonra Syntax hatalarını kontrol etmek için komutunu çalıştırıyorum.

named-checkzone pardus.lab /etc/bind/pardus.lab.lan

Ve son olarak Dig (domain information groper) yani DNS kayıtlarına bakmak için ve yaptığımız işlemlerin doğrulunu test etmek için aşağıda ki komutu kullanıyorum.

dig pardus.lab

Alt Text

İP adresine karşılık gelen makine adresini bulmak için de;

dig -x 192.168.1.16

Alt Text

Pardus 19.2 Sunucumuz üzerine DNS kurma işleminin sonuna gelmiş bulunmaktayız…Kolay Gelsin

İyi Çalışmalar

Açık Kaynak Yazılımları