Home Tutorial Tutorial Install, Setting & Konfigurasi BIND9 DNS di Ubuntu Server

Tutorial Install, Setting & Konfigurasi BIND9 DNS di Ubuntu Server

222
0
Ilustrasi BIND9 DNS di Ubuntu Server (Image: AI Generated)
Ilustrasi BIND9 DNS di Ubuntu Server (Image: AI Generated)
Apa itu DNS?

Sebenarnya DNS adalah kepanjangan dari Domain Name System yang merupakan sebuah service pada sistem berbasis Linux untuk mengubah cara akses pada server. Ibaratnya DNS adalah “buku telepon internet” yang menerjemahkan nama domain yang mudah dipahami oleh manusia (eg, example.com) menjadi alamat IP publik yang dapat dibaca oleh mesin (eg, 233.14.67.89). DNS memungkinkan seseorang untuk mengakses sebuah situs web tanpa perlu menghafal alamat IP numerik, dengan mengandalkan jaringan server terdistribusi untuk dengan cepat menemukan dan menghubungkan perangkat secara global.

Lalu Apa sih BIND9 Itu?

BIND9 adalah akronim dari Berkeley Internet Name Domain version 9, yang merupakan software Domain Name System (DNS) open-source dan gratis yang paling banyak digunakan di internet hingga hari ini. BIND9 mampu menerjemahkan nama domain ke alamat IP, kemudian bertindak sebagai server otoritatif, resolver rekursif, atau keduanya, dan umumnya digunakan pada sistem berbasis OS Linux untuk mengelola infrastruktur jaringan.

Aspek Kunci BIND9:
  • Fungsionalitas: Dapat bertindak sebagai server utama maupun master (menyimpan catatan DNS) atau sebagai resolver caching / rekursif (mencari informasi catatan DNS).
  • Penggunaan Utama: Merupakan standar industri untuk catatan DNS server hosting dan mengelola resolusi nama jaringan internal atau publik.
  • Keamanan & Fitur: Mendukung DNSSEC (Ekstensi Keamanan DNS), DNS over HTTPS (DoH), dan DNS over TLS (DoT).
  • Komponen: Termasuk dalam kategori named daemon (name server) dan tools seperti dig, nslookup, dan rndc untuk melakukan kueri dan mengelola server.
  • Dukungan OS: Terutama berjalan pada sistem berbasis UNIX/Linux, meskipun dapat berjalan pada Windows.
  • Pemeliharaan: Dikembangkan dan didukung oleh Internet Systems Consortium (ISC).

BIND9 sangat sering digunakan oleh Sistem Administrator untuk memelihara catatan domain dan oleh penyedia layanan internet (ISP) untuk menyelesaikan kueri user.

Nah, di tutorial kali ini saya akan membagikan tutorial dan panduan install, setting dan konfigurasi BIND9 DNS di Ubuntu server. Pastikan Anda sudah familiar dengan command-line Linux dan juga SSH konsol / terminal (bisa PuttY, Linux Terminal, maupun Windows Powershell). Selain itu, pastikan juga Anda punya hak akses root penuh ke server anda untuk memasang dan mengkonfigurasi BIND9.

CATATAN:

  • Untuk mempercepat propagasi DNS, buat DNS zone dengan TTL rendah misalnya 300 – 100
  • Selalu perbarui “Serial” pada DNS zone sesuai tanggal setingnya (misal 2015102525 / YYYYMMDD##)
  • Buat filenya lewat Nano Editor / WinSCP / Filezilla di direktori /etc/bind/zones (Opsional)
Tutorial Install BIND9 untuk setting NS (Name server) untuk Domain Website:

1.) Langkah Pertama login ke root SSH server via Putty / Linux Terminal / Windows Powershell, lalu ketikan username root beserta password-nya.

BIND9 DNS on Debian/Ubuntu-based OS
BIND9 DNS on Debian/Ubuntu-based OS

2.) Langkah kedua, sekarang kita install BIND9 dulu beserta software dependency nya, ketik command berikut ini:

$ sudo apt install bind9 bind9utils libcap2

3.) Langka ketiga, setelah BIND9 terinstall, sekarang edit file named.conf.local dengan nano editor. Ketikan comand berikut:

$ nano /etc/bind/named.conf.local

4.) Langkah keempat, copy paste atau ketikkan kode berikut dalam file .conf td:

zone "domainmu.com" {
type master;
file "/etc/bind/zones/domainmu.com.db";
};

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

NOTE:
– Blok dan copy kode diatas. Trus buka putty dan klik kanan untuk mem-paste kode tersebut.
– Ganti domainmu.com dengan domain anda sendiri
– Kalo sudah selesai edit, tekan Ctrl+O trus tekan ENTER untuk menyimpan lalu TEKAN Ctrl+X untuk EXIT.

5.) Langkah kelima, setelah di save dan keluar dari nano editor. Maka selanjutnya kita tinggal buat file-nya. Ketikkan command berikut ini (ingat: ketik satu persatu trus enter) atau langsung buat filenya lewat WinSCP / Filezilla / Filemanager Linux di direktori /etc/bind/zones:

$ cd /etc/bind
$ mkdir zones
$ cd /etc/bind/zones
$ nano domainmu.com.db

6.) Kemudian langkah keenam, copy paste kode berikut ke dalam notepad untuk diedit terlebih dulu:

; BIND data file for domainmu.com
;
$TTL 14400
@ IN SOA ns1.domainmu.com. server.domainmu.com. (
20260301 ; Serial
7200 ; Refresh
3600 ; Retry
2419200 ; Expire
10800 ; Default TTL
)

;
domainmu.com. IN NS ns1.domainmu.com.
domainmu.com. IN NS ns2.domainmu.com.

domainmu.com. IN MX 10 mail.domainmu.com.
domainmu.com. IN A 192.184.92.158

ns1 IN A 192.184.92.158
ns2 IN A 192.184.92.158
www IN CNAME domainmu.com.
mail IN A 192.184.92.158
ftp IN CNAME domainmu.com.
domainmu.com. IN TXT v=spf1 ip4: 192.184.92.158 a mx ~all
mail IN TXT v=spf1 a -all
NOTE:

– Ganti domainmu.com dengan domain anda.
– Ganti server.domainmu.com dengan hostname VPS server anda.
– Ganti 192.184.92.158 dengan IP VPS server anda.
– Setelah diedit di notepad, kemudian copy paste kan ke nano editor di SSH terminal dengan cara klik kanan pada mouse.
– Setelah itu, jangan lupa disave dengan comand CTRL+O untuk menyimpan, kemudian tekan ENTER dan CTRL+X untuk keluar dari nano editor.

7.) Langkah ketujuh, kita edit file yang satunya lagi. Ketik comand berikut:

nano /etc/bind/zones/rev.3.2.1.in-addr.arpa

Selanjutnya copy paste kode berikut ke dalam notepad untuk diedit terlebih dulu:

@ IN SOA domainmu.com. server.domainmu.com. (
20260301;
28800;
10800;
10800;
86400 );

IN NS ns1.domainmu.com.
4 IN PTR domainmu.com.

NOTE:

– Ganti domainmu.com dengan domain anda.
– Ganti server.domainmu.com dengan hostname VPS anda.
– Setelah diedit di notepad, kemudian copy paste kan ke nano editor di SSH terminal dengan cara klik kanan pada mouse.
– Setelah itu, jangan lupa disave dengan comand CTRL+O untuk menyimpan, kemudian tekan ENTER dan CTRL+X untuk keluar nano editor.
——————————————————————–

8.) Sekarang edit file resolv.conf dengan mengetikan command:

nano /etc/resolv.conf

Kemudian tambahkan kode berikut di sana dan ganti domainmu.com dengan domainmu sendiri. Tambahkan juga DNS Resolver dari Google dan Cloudflare:

search domainmu.com
nameserver 8.8.8.8
nameserver 1.1.1.1

Jangan lupa disave dengan comand CTRL+O untuk menyimpan, kemudian tekan ENTER dan CTRL+X untuk keluar nano editor.

9.) Sekarang restart Bind service dengan mengetikan command:

$ sudo /etc/init.d/bind9 restart

ATAU

$ systemctl restart bind9

10.) Langkah kesupuluh, sebenarnya kita sudah selesai di tahap ini, namun kita masih perlu mengetestnya dengan DNS Utility. Pertama kita install dulu bind9-dnsutils dengan command:

$ sudo apt install dnsutils bind9-dnsutils

Kemudian ketik command berikut dan ganti domainmu.com dengan domain milikmu sendiri:

$ dig domainmu.com

Lihat hasilnya pada test di atas, kalo semuanya benar pasti ada tulisannya NOERROR.

11.) Buka file /etc/bind/named.conf.options dan edit forwarders seperti di bawah ini. Ganti IP address 167.88.125.16 dengan alamat IP publik dari server VPS Anda:

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 {
167.88.125.16;
};

//========================================================================
// 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
listen-on-v6 { any; };
};
--------------------------------------------------------------------

12.) Kita sudah selesai disini, tinggal setting private nameserver (child-ns) di registrar domain kita masing-masing. Saya rasa caranya bisa berbeda-beda, yang jelas tambahkan hostname dengan NS1 dan NS2, lalu isikan dengan IP publik dari VPS server Anda dan NS2 isikan lagi dengan IP karena disini VPS kita menggunakan satu IP Address.

LEAVE A REPLY

Please enter your comment!
Please enter your name here