Cara membuat private nameserver dengan BIND di Ubuntu/Debian

By | April 13, 2018

Cara merancang private nameserver (child name server) atau dikenal dengan name server dengan domain sendiri di server Linux Ubuntu menggunakan BIND9 hanya dengan 1 IPv4.

Sistem ini pun dikenal dengan vanity nameserver yaitu name server dengan branding domain yang kamu tentukan sendiri. Nah bagi mewujudkan hal tersebut, kita akan menjalankan konfigurasi BIND DNS server.

Hasilnya nanti Sahabat akan mempunyai nameserver seperti:

  • ns1.domainanda.com
  • ns2.domainanda.com

Di panduan ini, selaku contoh domain yang digunakan yaitu idnetter.com dengan IPv4 192.168.0.1, jadi silahkan diganti dengan nama domain dan IP server kamu.

Informasi update:

  • Artikel diperbarui di 04 September 2018, Uji coba menggunakan Linux CentOS 7
  • Diperbarui di Sabtu, 22 September 2018, Uji coba Ubuntu 18.04 Bionic Beaver

Cara install BIND di Ubuntu/Debian

Sebelum install BIND9 pastikan aplikasi telah terupdate

apt-get update -y
apt-get install bind9 bind9utils -y

Buka konfigurasi default bind9 dan modifikasi

nano /etc/default/bind9

Set BIND ke mode IPv4, tambahkan -4 di baris kode seperti berikut:

# startup options for the server
OPTIONS=-4 -u bind

Simpan perubahan.

Konfigurasi DNS server

Karena IP hanya satu karenanya ns2 pun akan memakai IP yang sama dengan ns1 yaitu 192.168.0.1 selaku contoh.

nano /etc/bind/named.conf.options

Tambahkan blok baru bernama trusted di baris sangat atas, dan set sesuai IP aktual.

acl trusted {
192.168.0.1; # ns1, daftarkan IP slave (ns2, ns3 dst.) disini
};

options {

directory /var/cache/bind;

recursion yes;
allow-recursion {trusted; };
listen-on { 192.168.0.1; };
allow-transfer { none; };
version Onde onde; # menyamarkan versi

forwarders {
8.8.8.8;
8.8.4.4;
};

dnssec-validation auto;

auth-nxdomain no; # conform to RFC1035
# listen-on-v6 { any; }; # kita ingin IPv4 saja
};

Catatan:

Setiap awal baris di di pada konfigurasi block seperti ada spasi kan? tapi itu bukan karakter spasi melainkan karakater Tab,  kalau gunakan spasi nanti terdeteksi selaku option, kalau dicek nanti kelihatan error unknown option ' '

Menambahkan forward dan reverse zone

Langkah berikutnya menambahkan forward dan reverse lookup zone, buka file /etc/bind/named.conf.local

nano /etc/bind/named.conf.local

Tambahkan baris berikut, jangan lupa di sesuaikan dengan domain dan IPv4 server Sahabat

zone idnetter.com {
     type master;
     file /etc/bind/zones/db.idnetter.com;
     allow-transfer { 192.168.0.1; }; # catatan: ini IP slave (ns2), jikalau ada
};

zone 168.192.in-addr.arpa {
     type master;
     file /etc/bind/zones/db.168.192;
     allow-transfer { 192.168.0.1; }; # ns2
};

Konfigurasi forward lookup dan reverse lookup zone

Bikin folder baru bernama zones bagi menyimpan file konfigurasi forward dan reverse zone BIND.

mkdir /etc/bind/zones

Bikin file db.idnetter.com di pada folder /etc/bind/zones

nano /etc/bind/zones/db.idnetter.com

Isi dengan konfig berikut, sesuaikan

$TTL 604800
@INSOAns1.idnetter.com.admin.idnetter.com. (
3; Serial
604800; Refresh
86400; Retry
2419200; Expire
604800); Negative Cache TTL
;
; name servers - NS records
@14400INNSns1.idnetter.com.
@14400INNSns2.idnetter.com.

; name servers - A records
@14400INA192.168.0.1
ns114400INA192.168.0.1
ns214400INA192.168.0.1
mail14400INA192.168.0.1

; CNAME
www14400INCNAMEidnetter.com.

; MX records - sangat tak ada 2 mx (backup)
@14400INMX10idnetter.com.
@14400INMX20mail.idnetter.com.

; TXT value - SPF
@14400INTXTv=spf1 a mx ip4:192.168.0.1 all

; DMARC1
_dmarc 14400INTXTv=DMARC1; p=none

Kemudian merancang file reverse zone

nano /etc/bind/zones/db.168.192

Isinya selaku berikut, sesuaikan :

$TTL 604800
@INSOAns1.idnetter.com.admin.idnetter.com. (
3; Serial
604800; Refresh
86400; Retry
2419200; Expire
604800); Negative Cache TTL

; Name servers
@14400INNSns1.idnetter.com.
@14400INNSns2.idnetter.com.

; PTR Records
1.014400INPTR idnetter.com.; 192.168.0.1
1.014400INPTR ns1.idnetter.com.; 192.168.0.1
1.014400INPTR ns2.idnetter.com. ; 192.168.0.1
1.014400INPTR mail.idnetter.com.; 192.168.0.1

Hingga di titik ini BIND telah selesai disetup. Bagi mengetahui berhasil tidaknya sebelum service BIND direstart, sebaiknya cek konfigurasi satu persatu agar dapat diketahui bersama jikalau ada kesalahan di konfigurasi.

Cek konfigurasi BIND

Cek konfigurasi BIND dengan petunjuk berikut:

named-checkconf

Kalu tak ada output apa-apa berarti konfigurasi telah benar.

Cek konfigurasi file named forward lookup zone

named-checkzone idnetter.com /etc/bind/zones/db.idnetter.com

Hasilnya

zone idnetter.com/IN: loaded serial 3
OK

Cek konfigurasi reverse zone file

named-checkzone 168.129.in-addr.arpa /etc/bind/zones/db.168.192

kalau berhasil, jawabanya

zone 168.129.in-addr.arpa/IN: loaded serial 3
OK

Restart BIND

Setiap kali mengedit konfigurasi named, jangan lupa restart service bind9 dengan menjalankan petunjuk berikut:

service bind9 restart

Selesai..

Kini saatnya menuju panel domain, kemudian merancang child nameserver ns1.idnetter.com dan ns2.idnetter.com yang diarahkan ke IP VPS. Berikutnya arahkan nameservernya ke ns1.idnetter.com dan ns2.idnetter.com , pastinya ganti dengan nama domain milik Sahabat sendiri.

Selamat mencoba, semoga berhasil. Namun seandainya gagal, jangan ragu bagi order  jasa setting VPS di idnetter.com ya.


Sumber https://idnetter.com