Pada tulisan ini saya akan berbagi sekilas mengenai cara membuat nameserver sendiri untuk domain web. Sebagaimana kita ketahui ketika sebuah alamat web diakses maka ada peran DNS yg menerjemahkan domain tsb ke suatu ip server. Misalnya ketika mengakses domain servers.id maka ada DNS yg bertugas melakukan resolving domain tsb ke server hosting yg digunakan.
Tugas resolving domain ini biar gampang anti-ribet kadang kita serahkan pada third party DNS provider macam Cloudflare, ClouDNS atau DNS yg disediakan oleh provider hosting misal Linode, Vultr, Digitalocean, dll. Kita tinggal tentuin saja A recordnya akan mengarah ke ip mana maka beres sudah. Atau bisa juga kita setup sendiri dengan melakukan instalasi aplikasi misal BIND atau NSD. Nah bagi yg ingin punya DNS sendiri bisa dicoba nih tutorial instalasi/seting Nameserver Daemon atau NSD di VPS maupun dedicated server Linux.
Salah satu keunggulan NSD dibanding dengan BIND adalah dia lebih ringan dan setupnya pun simpel, dalam waktu singkat domain yg diseting akan langsung resolve ke ip yg dikehendaki. Cocok lah untuk materi belajar para sysadmin Linux level pemula. Namun jg cocok dijalankan untuk productional server kalian.
Di postingan yg ini saya bagikan trik seting nameserver pake NSD lebih lanjut yaitu cara seting domain secara masal (dalam jumlah banyak) menggunakan sebuah bash/shell script.
OK. Di sini saya menggunakan sebuah cloud server atau VPS dengan sistem operasi CentOS 7 64 bit. Langkahnya setelah login ke ssh server adalah sebagai berikut:
-
- Lakukan update dahulu
yum update -y
- Kemudian
yum install -y epel-release
- Lalu instal NSD nya
yum install -y nsd
dan tunggu sampe selesai - Masuk ke direktori NSD
cd /etc/nsd
- Cadangkan file konfigurasi asli dan nantinya kita akan modifikasi filenya sesuai keperluan
mv nsd.conf nsd.conf.bak
- Sekarang bikin konfigurasi yg baru
vim nsd.conf
- Isikan seperti ini:
ip-address: 142.133.182.65 hide-version: yes ip4-only: yes database: "/var/lib/nsd/nsd.db" identity: "" server-count: 1 pidfile: "/var/run/nsd/nsd.pid" port: 53 zonesdir: "/etc/nsd/master" zone: name: "eudns.ch" zonefile: "eudns.ch.zone"
- Trus bikin direktori yg dibutuhkan sesuai dengan isi nsd.conf di atas
mkdir -p /var/lib/nsd/ /var/run/nsd/ /var/nsd/master/
- Juga bikin file-filenya
touch /var/lib/nsd/nsd.db /var/run/nsd/nsd.pid
- Set ownershipnya, kalo ga dia akan gagal running
chown nsd.nsd /var/lib/nsd/nsd.db
- Masuk ke direktori master
cd /var/nsd/master
- Sesuai contoh konfigurasi di atas, sekarang bikin file zone untuk domain eudns.ch yaitu
vim eudns.ch.zone
- Isikan begini:
; ; NSD data file for eudns.ch ; $TTL 3h @ IN SOA ns1.eudns.ch. admin.eudns.ch. ( 1 ; Serial 3h ; Refresh after 3 hours 1h ; Retry after 1 hour 1w ; Expire after 1 week 1h ) ; Negative caching TTL of 1 day ; @ IN NS ns1.eudns.ch. @ IN NS ns2.eudns.ch. eudns.ch. IN A 198.46.131.177 ns1 IN A 142.132.182.61 ns2 IN A 142.132.182.61 www IN CNAME eudns.ch.
- Save file tsb dan enable NSD
systemctl enable nsd
- Selanjutnya kita jalankan aplikasi NSD yg sudah kita instal
service nsd start
atausystemctl start nsd
- Kalo ga ada error maka NSD akan berjalan dengan status active (running)
- Langkah penting berikutnya yaitu segera login ke registrar domain yg digunakan (godaddy, namecheap, dsb) untuk membuat private nameserver sesuai dengan prefix yg dipake pada contoh di tulisan ini yaitu ns1 dan ns2. Jangan lupa arahkan masih-masing prefix tsb ke ip server NSD. Setelah semua langkah dikerjakan dengan benar maka alhasil kita akan punya private nameserver yaitu:
NS1.EUDNS.CH dan NS2.EUDNS.CH. Pada contoh di sini domain eudns.ch ini mengarah ke server webhosting yaitu 198.46.131.177 (lihat isi file eudns.ch.zone pada bagian A record di atas).
- Lakukan update dahulu
Selanjutnya jika ingin menambahkan domain-domain berikutnya caranya cukup melakukan modifikasi nsd.conf dengan cara menambahkan zone di bawah zone yg sudah ada dan membuat zone file untuk domain yg ditambahkan di direktori master.
.......
zone:
name: "eudns.ch"
zonefile: "eudns.ch.zone"
zone:
name: "example.cc"
zonefile: "example.cc.zone"
Selamat mencoba, semoga lancar dan bermanfaat. Jika ada pertanyaan maka jangan segan-segan untuk ga usah nanya. Semangat hehehe!!!