GNU/Linux >> Belajar Linux >  >> Linux

Cara Menginstal dan Mengkonfigurasi Server DNS di Linux

Domain Name Service (DNS) adalah layanan internet yang memetakan alamat IP ke nama domain yang memenuhi syarat (FQDN) dan sebaliknya.

BIND adalah singkatan dari Berkley Internet Naming Daemon.

BIND adalah program paling umum yang digunakan untuk memelihara server nama di Linux.

Dalam tutorial ini, kami akan menjelaskan cara menginstal dan mengkonfigurasi server DNS.

Jika Anda baru mengenal DNS, Anda harus terlebih dahulu memahami dasar-dasar DNS dan cara kerjanya.

1. Informasi Jaringan

Dalam tutorial ini, kita akan menyiapkan server DNS lokal untuk jaringan yang ditunjukkan pada diagram di bawah.

Kami akan menggunakan domain "thegeekstuff.net" sebagai contoh untuk instalasi DNS ini. “mail”, “web”, “ns” adalah host yang berada dalam domain ini.

Dimungkinkan untuk mengonfigurasi satu sistem untuk bertindak sebagai server nama caching, primer/master dan sekunder/slave. Kami akan mengkonfigurasi DNS ini sebagai server DNS Primay/Master serta Caching.

Kami akan memasang server DNS di “10.42.0.83”.

2. Instal Bind

Instal paket bind9 menggunakan utilitas manajemen paket yang sesuai untuk distribusi Linux Anda.

Pada rasa Debian/Ubuntu, lakukan hal berikut:

$ sudo apt-get install bind9

Pada rasa Redhat/CentOS/Fedora, lakukan hal berikut:

# yum install bind9

Semua konfigurasi DNS disimpan di bawah direktori /etc/bind. Konfigurasi utama adalah /etc/bind/named.conf yang akan menyertakan file lain yang diperlukan. File bernama /etc/bind/db.root menjelaskan server nama root di dunia.

3. Konfigurasi Server Nama Cache

Tugas server caching DNS adalah menanyakan server DNS lain dan men-cache responsnya. Lain kali ketika kueri yang sama diberikan, itu akan memberikan respons dari cache. Cache akan diperbarui secara berkala.

Harap dicatat bahwa meskipun Anda dapat mengonfigurasi bind agar berfungsi sebagai Primer dan sebagai server Caching, tidak disarankan untuk melakukannya karena alasan keamanan. Sebaiknya memiliki server caching terpisah.

Yang harus kita lakukan untuk mengkonfigurasi Cache NameServer adalah dengan menambahkan server DNS ISP (Internet Service Provider) Anda atau server OpenDNS ke file /etc/bind/named.conf.options. Misalnya, kami akan menggunakan server DNS publik Google, 8.8.8.8 dan 8.8.4.4.

Batalkan komentar dan edit baris berikut seperti yang ditunjukkan di bawah ini di file /etc/bind/named.conf.options.

forwarders {
    8.8.8.8;
    8.8.4.4;
};

Setelah perubahan di atas, restart server DNS.

$ sudo service bind9 restart

4. Uji Server Nama Cache

Anda dapat menggunakan perintah dig untuk menguji layanan DNS. Contoh perintah DIG menjelaskan lebih lanjut tentang cara melakukan pencarian DNS.

$ dig ubuntu.com

;; Query time: 1323 msec

Sekarang ketika kedua kalinya Anda menjalankan penggalian, seharusnya ada peningkatan dalam waktu Query. Seperti yang Anda lihat di bawah, hanya butuh 3 mdtk untuk kedua kalinya, karena mendapatkan info dari server DNS caching kami.

$ dig ubuntu.com

;; Query time: 3 msec

5. Konfigurasi Server Nama Utama/Master

Selanjutnya, kita akan mengkonfigurasi bind9 menjadi Primary/Master untuk domain/zona “thegeekstuff.net”.

Sebagai langkah pertama dalam mengonfigurasi Server Nama Utama/Master kami, kami harus menambahkan resolusi Maju dan Mundur ke bind9.

Untuk menambahkan resolusi DNS Forward dan Reverse ke bind9, edit /etc/bind9/named.conf.local.

zone "thegeekstuff.net" {
    type master;
    file "/etc/bind/db.thegeekstuff.net";
};
zone "0.42.10.in-addr.arpa" {
        type master;
        notify no;
        file "/etc/bind/db.10";
};

Sekarang file /etc/bind/db.thegeekstuff.net akan memiliki detail untuk menyelesaikan nama host ke alamat IP untuk domain/zona ini, dan file /etc/bind/db.10 akan memiliki detail untuk menyelesaikan alamat IP ke nama host .

6. Bangun Resolusi Penerusan untuk Server Nama Utama/Master

Sekarang kita akan menambahkan detail yang diperlukan untuk resolusi penerusan ke /etc/bind/db.thegeekstuff.net.

Pertama, salin /etc/bind/db.local ke /etc/bind/db.thegeekstuff.net

$ sudo cp /etc/bind/db.local /etc/bind/db.thegeekstuff.net

Selanjutnya, edit /etc/bind/db.thegeekstuff.net dan ganti yang berikut ini.

  1. Di baris yang memiliki SOA:localhost. – Ini adalah FQDN dari server yang bertanggung jawab untuk domain ini. Saya telah menginstal bind9 di 10.42.0.83, yang nama hostnya adalah "ns". Jadi ganti "localhost." dengan "ns.thegeekstuff.net.". Pastikan diakhiri dengan titik (.).
  2. Di baris yang memiliki SOA:root.localhost. – Ini adalah alamat E-Mail dari orang yang bertanggung jawab atas server ini. Gunakan titik (.) alih-alih @. Saya sudah ganti dengan lak.localhost.
  3. Di baris yang memiliki NS:localhost. – Ini mendefinisikan server Nama untuk domain (NS). Kita harus mengubah ini ke nama domain yang memenuhi syarat dari server nama. Ubah ke "ns.thegeekstuff.net.". Pastikan Anda memiliki "." di akhir.

Selanjutnya, tentukan data A dan data MX untuk domain tersebut. Sebuah record adalah record yang memetakan hostname ke alamat IP, dan record MX akan memberitahu server mail untuk digunakan untuk domain ini.

Setelah perubahan selesai, file /etc/bind/db.thegeekstuff.net akan terlihat seperti berikut:

$TTL    604800
@   IN  SOA ns.thegeekstuff.net. lak.localhost. (
             1024       ; Serial
             604800     ; Refresh
              86400     ; Retry
            2419200     ; Expire
             604800 )   ; Negative Cache TTL
;
@   IN  NS  ns.thegeekstuff.net.
thegeekstuff.net.    IN      MX      10      mail.thegeekstuff.net.
ns  IN  A   10.42.0.83
web IN  A   10.42.0.80
mail IN A   10.42.0.70

6. Bangun Resolusi Terbalik untuk Server Nama Utama/Master

Kami akan menambahkan detail yang diperlukan untuk resolusi terbalik ke file /etc/bind/db.10. Salin file /etc/bind/db.127 ke /etc/bind/db.10

$ sudo cp /etc/bind/db.127 /etc/bind/db.10

Selanjutnya, edit file /etc/bind/db.10, dan pada dasarnya ubah opsi yang sama seperti /etc/bind/db.thegeekstuff.net

$TTL    604800
@   IN  SOA ns.thegeekstuff.net. root.localhost. (
             20         ; Serial
             604800     ; Refresh
              86400     ; Retry
            2419200     ; Expire
             604800 )   ; Negative Cache TTL
;
@   IN  NS  ns.

Selanjutnya, untuk setiap record A di /etc/bind/db.thegeekstuff.net, tambahkan record PTR.

$TTL    604800
@   IN  SOA ns.thegeekstuff.net. root.thegeekstuff.net. (
             20     ; Serial
             604800     ; Refresh
              86400     ; Retry
            2419200     ; Expire
             604800 )   ; Negative Cache TTL
;
@    IN  NS  ns.
83   IN  PTR ns.thegeekstuff.net.
70   IN  PTR mail.thegeekstuff.net.
80   IN  PTR web.thegeekstuff.net.

Setiap kali Anda memodifikasi file db.thegeekstuff.net dan db.10, Anda juga perlu menambahkan nomor “Serial”. Biasanya admin menggunakan DDMMYYSS untuk nomor seri dan ketika mereka memodifikasi, mengubah nomor seri dengan tepat.

Terakhir, mulai ulang layanan bind9:

$ sudo service bind9 restart

7. Uji server DNS

Sekarang kita telah mengkonfigurasi server DNS untuk domain kita. Kami akan menguji server DNS kami dengan melakukan ping ke mail.thegeekstuff.net dari web.thegeekstuff.net.

Jika ping berhasil, maka kita telah berhasil mengkonfigurasi DNS.

Anda juga dapat menggunakan nslookup dan menggali untuk menguji server DNS.

Di server web.thegeekstuff.net, tambahkan berikut ini ke /etc/resolv.conf

nameserver 10.42.0.83

Sekarang ping, mail.thegeekstuff.net, yang seharusnya menyelesaikan alamat dengan tepat dari server DNS yang baru saja kita konfigurasi.

$ ping mail.thegeekstuff.net

PING mail.thegeekstuff.net (10.42.0.70) 56(84) bytes of data.
64 bytes from mail.thegeekstuff.net (10.42.0.70): icmp_req=1 ttl=64 time=0.482 ms
64 bytes from mail.thegeekstuff.net (10.42.0.70): icmp_req=2 ttl=64 time=0.532 ms

Linux
  1. Cara Menginstal dan Mengonfigurasi Arch Linux sebagai Server

  2. Cara Menginstal dan Mengonfigurasi EMC PowerPath di Linux

  3. Cara Menginstal dan Mengonfigurasi Server dan Klien NTP Linux

  1. Cara menginstal dan mengkonfigurasi server DHCP di Linux

  2. Cara menginstal dan mengkonfigurasi server pemantauan Zabbix di Linux

  3. Cara menginstal dan mengkonfigurasi Nagios di Linux

  1. Cara Menginstal dan Mengkonfigurasi Server DNS di Ubuntu 16.04 LTS

  2. Cara Menginstal dan Mengkonfigurasi Memcached di Ubuntu Linux

  3. Cara Menginstal dan Mengonfigurasi Server NFS di Sistem Linux