Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
DNS adalah salah satu jenis sistem yang melayani permintaan pemetaan IP Address ke FQDN (Fully Qualified Domain Name) dan FQDN ke IP Address.
FQDN lebih mudah untuk diingat oleh manusia daripada IP Address. Pada sistem operasi Linux, DNS diimplementasikan dengan menggunakan software Berkeley Internet Name Domain (BIND), BIND ini memiliki dua sisi, yaitu sisi client dan sisi server. Sisi client disebut resolver. Resolver ini bertugas membangkitkan pertanyaan mengenai informasi domain name yang dikirimkan kepada sisi server. Sisi server BIND ini adalah sebuah daemon yang disebut named (baca: name di). Ia yang akan menjawab query-query dari resolver yang diberikan kepadanya. kemudian bagaimana cara membangunnya. Berikut adalah langkah-langkahnya :
1. Periksa apakah BIND sudah terinstall di mesin slackware
# ls /var/log/packages/ | grep bind
bind-9.4.3_P2-i486-2
kdebindings-4.2.4-i486-1
terlihat bahwa di mesin slackware telah terinstall paket bind-9.4.3_P2-i486-2 (Slackware-current), untuk paket bind-9.4.3_P2-i486-1 (Slackware 12.2). Ada beberapa file installasi default yang berkaitan dengan ini, antara lain :
/var/named/caching-example/named.ca
/var/named/caching-example/named.local
1 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
/var/named/caching-example/localhost.zone
/etc/rc.d/rc.bind
/etc/named.conf
named.ca , named.local dan localhost.zone adalah contoh dari konfigurasi bind9, file selanjutnya adalah init script (rc.bind) dan konfigurasi dari bind (named.conf). Untuk setting BIND ini, file-file yang harus Anda perhatikan adalah:
1./etc/resolv.conf
Berisi alamat domain atau alamat IP dari name.
2./etc/named.conf
Berisi keterangan letak dan jenis databases yang dibutuhkan oleh BIND
3./var/named/named.ca
Berisi informasi data yang berada dalam domain root, yang akan dipergunakan name server jika ada resolver yang akan meminta nama domain diluar nama domain lokal.
4./var/named/named.local
2 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
Berisi alamat loopback untuk alamat ke diri sendiri dengan alamat 127.0.0.1
2. Persiapan setting Domain baru
untuk memudahkan dalam pemahaman setting DNS server, maka data-data yang saya siapkan antara lain :
Hostname : ns1
Nama Domain : gslack.net
Nama DNS Server : ns1.gslack.net
Edit file /etc/named.conf
File /etc/named.conf merupakan konfigurasi utama untuk bind. File ini merupakan kumpulan statemen yang nilainya kita tentukan sesuai dengan DNS seperti apa yang kita inginkan. Berikut ini adalah isi file /etc/named.conf bawaan di slackware-current tetapi isi file ini sama dengan di slackware 12.2:
options {
directory “/var/named”;
/*
3 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
};
//
// a caching only nameserver config
//
4 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
zone “.” IN {
type hint;
file “/var/named/named.root”;
};
zone “localhost” IN {
type master;
file “/var/named/localhost.zone”;
allow-update { none; };
};
zone “0.0.127.in-addr.arpa” IN {
type master;
file “/var/named/named.local”;
5 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
allow-update { none; };
};
1.pada blok pertama
options {
directory “/var/named”;
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
6 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
*/
// query-source address * port 53;
};
blok ini merupakan global setting dari BIND, dimana direktory “/var/named” (dibaca : tanpa tanda kutip) adalah direktori kerja dari bind, di direktoru tersebut ditempatkan file-file konfigurasi domain yang biasa disebut zone (perintah yang digunakan untuk menunjukkan domain yang dilayani oleh name server). Dan tidak disarankan untuk mengedit blok ini, kecuali jika anda tahu dan anda memahami blok ini. Blok ini memberitahukan kepada Server BIND dimana file-file zone tersimpan.
2.pada blok kedua
zone “.” IN {
type hint;
file “/var/named/named.root”;
};
Blok ini merupakan blok root zone atau kasarnya alamat-alamat dari domain-domain international. Kita membutuhkan blok root zone ini. Tetapi pada bagian file “/var/named/named.root”, bagian ini sudah saya pindahkan dimana difault_nya berada pada direktori cacing-example yang ada dalam direktori named, tetapi saya keluarkan dari direktori difault_nya ini hanya selera saja.
7 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
3.Pada blok ketiga
zone “localhost” IN {
type master;
file “/var/named/localhost.zone”;
allow-update { none; };
};
Blok ini merupakan forward localhost, dalam arti jika dns server mendapatkan perintah untuk mengetahui alamat ip dari localhost maka bagian blok ini yang mengurusnya.
4.Pada blok keempat adalah blok tambahan
zone “0.0.127.in-addr.arpa” IN {
type master;
file “/var/named/named.local”;
8 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
allow-update { none; };
};
Baris-baris pada bagian blok dibawah ini menyatakan bahwa kita akan mendefinisikan DNS server sebagai Primary Name Server untuk domain gslack.net dan file-file forward adalah nama file yang merupakan zona file dari domain gslack.net. Dan ini merupakan nama domain yang akan didaftarkan di /etc/named.conf.
#Baris di bawah untuk menterjemahkan FQDN ke IP Address (Forward Zone) dengan domain gslack.net
zone “gslack.net” IN {
type master;
file “/var/named/db.gslack”;
allow-update { none; } ;
};
Baris-baris dibawah ini adalah berisi reverse DNS Zone. Ini diperlukan agar DNS Server Anda dapat menterjemahkan dari nomor IP Address ke mana host pemilik IP Address dalam jaringan.
#Baris untuk menterjemahkan IP Address ke FQDN
9 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
#reverse Zone
zone “68.45.128.in-addr.arpa” IN {
type master;
file “/var/named/db.128.45.68″;
allow-update { none; };
};
Lalu untuk mendapatkan key adalah dengan cara mengetikkan
# rndc-confgen
Maka akan muncul seperti tulisan dibawah ini
# Start of rndc.conf
key “rndc-key” {
10 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
algorithm hmac-md5;
secret “CrNUrLFcedX/AIQSAF6oEw==”;
};
options {
default-key “rndc-key”;
default-server 127.0.0.1;
default-port 953;
};
# End of rndc.conf
# Use with the following in named.conf, adjusting the allow list as needed:
# key “rndc-key” {
# algorithm hmac-md5;
11 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
# secret “CrNUrLFcedX/AIQSAF6oEw==”;
# };
#
# controls {
# inet 127.0.0.1 port 953
# allow { 127.0.0.1; } keys { “rndc-key”; };
# };
# End of named.conf
Salah satu bagian keluaran tadi , ambillah bagian setelah tulisan Use with the following in named.conf, adjusting the allow list as needed , dengan menghapus tanda pagar lalu paste-kan ke named.conf bagian paling bawah. Contoh seperti dibawah ini
options {
directory “/var/named”;
12 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
};
//
// a caching only nameserver config
13 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
//
zone “.” IN {
type hint;
file “/var/named/named.root”;
};
zone “localhost” IN {
type master;
file “/var/named/localhost.zone”;
allow-update { none; };
};
zone “0.0.127.in-addr.arpa” IN {
type master;
14 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
file “/var/named/named.local”;
allow-update { none; };
};
zone “gslack.net” IN {
type master;
file “/var/named/db.gslack”;
allow-update { none; } ;
};
zone “68.45.128.in-addr.arpa” IN {
type master;
file “/var/named/db.128.45.68″;
15 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
allow-update { none; };
};
key “rndc-key” {
algorithm hmac-md5;
secret “CrNUrLFcedX/AIQSAF6oEw==”;
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { “rndc-key”; };
};
Kemudian pada bagian atas copylah dan pastekan pada rndc.conf :
key “rndc-key” {
16 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
algorithm hmac-md5;
secret “CrNUrLFcedX/AIQSAF6oEw==”;
};
options {
default-key “rndc-key”;
default-server 127.0.0.1;
default-port 953;
Kemudian pada bagian key “rndc-key” copylah dan pastekan ke /etc/rndc.key:
key “rndc-key” {
algorithm hmac-md5;
secret “CrNUrLFcedX/AIQSAF6oEw==”;
17 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
};
Semua kode harus sama pada named.conf, rndc.conf dan rndc.key
Setting file zone
Selanjutnya adalah mengkonfigurasi Primary Name Server untuk Domain gslack.net pada host ns1.gslack.net dengan IP Address 128.45.68.1. Berdasarkan pada file /etc/named.conf kita akan membuat file sebagaimana yang didefinisikan pada file /etc/named.conf kita akan membuat file sebagaimana yang didefinisikan pada file /etc/named.conf file tersebut bernama “db.gslack” dan reversenya “db.128.45.68”.
root@gslack:/var/named/caching-example#ls
named.ca named.root localhost.zone named.local
file dalam direktory caching-example saya keluarkan dan saya masukkan kedalam direktory named ini hanya soal selera, dimana saya tidak ingin membuka direktory terlalu banyak maka saya pindahkan file yang ada dalam direktory tersebut dan melakukan rename untuk localhost.zone dengan db.gslack dan named.local dengan db.128.45.68. Caranya seperti ini :
root@gslack:/var/named# mv /var/named/caching-example/* /var/named/
root@gslack:/var/named#ls
caching-example named.ca named.root
18 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
localhost.zone named.local
root@gslack:/var/named#cp localhost.zone db.gslack
root@gslack:/var/named#cp named.local db.128.45.68
root@gslack:/var/named#ls
caching-example db.gslack named.ca named.root db.128.45.68 localhost.zone named.local
edit zona file db.gslack.net
Langkah selanjutnya adalah mengkonfigurasikan name server untuk domain gslack.net pada host gslack.net pada IP Address 128.45.68.1 sebagai berikut
root@gslack:/var/named#nano db.gslack
$TTL 86400
@ IN SOA ns1.gslack.net root.gslack.net. (
42 ; serial (d. adams)
3H ; refresh
19 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS ns1.gslack.net.
gslack.net. IN A 128.45.68.1
www.gslack.net. IN A 128.45.68.1
penjelasan
1.TTL (Time To Live) yang mendefinisikan waktu lamanya data berada dalam database.
2.SOA (Start of Authority) mendefinisikan hostname yang merupakan awal dari suatu zone.
3.42;serial: merupakan nomor serial dari zone file yang akan bertambah jika ada perubahan data.
4.3H;refresh: merupakan selang waktu yang diperlukan secondary name server untuk memeriksa perubahan pada Primary Name Server.
20 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
5.15M;retry: merupakan selang waktu secondary name server untuk mengulang pengecekan pada primary name server.
6.IN NS ns1.gslacknet: mendefinisikan bahwan hostname ns1.gslack.net yang memegang tanggung jawab terhadap domain gslack.net.
7.IN A 128.45.68.1 mendefinisikan bahwa hostname ns1.gslack.net mempunyai IP Address 128.45.68.1.
8.www IN A 128.45.68.1 mendefinisikan bahwa hostname ns1.gslack.net mempunyai nama www.gslack.net.
root@gslack:/var/named#nano db.128.45.68
$TTL 86400
@ IN SOA ns1.gslack.net. root.gslack.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
21 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
3600000 ; Expire
86400 ) ; Minimum
IN NS ns1.gslack.net.
1 IN PTR gslack.net.
Penjelasan:
1.Penjelasan yang lain sama dengan penjelasan pada bagian gslack.net
2.IN PTR gslack.net mendefinisikan bahwa hostname gslack.net mempunyai IP Address 128.45.68.1
Pada rndc.key ambillah bagian key nya seperti dibawah ini:
# nano /etc/rndc.key
key “rndc-key” {
algorithm hmac-md5;
secret “CrNUrLFcedX/AIQSAF6oEw==”;
22 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
};
selanjutnya adalah menjalankan dan test domain
root@gslack:~# chmod +x /etc/rc.d/rc.bind (enter)
untuk mengaktifkan service bind
root@gslack:~# /etc/rc.d/rc.bind start (enter)
untuk menjalankan bind
root@gslack:~# /etc/rc.d/rc.bind restart (enter)
untuk merestart bind
root@gslack:~# /etc/rc.d/rc.bind stop (enter)
untuk menonaktifkan bind
Setelah perintah service bind dijalankan jangan lupa untuk melakukan pengecekan terhadap konfigurasi DNS yang kita bangun dengan perintah nslookup [DNS_server]. Jika terjadi pesan kesalahan seperti ini.
23 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
root@gslack:~#nslookup gslack.net
Server: 128.45.68.1
Address: 128.45.68.1#53
** server can’t find gslack.net: gslack.net
berarti pada bagian /etc/resolf.conf kita belum di masukkan alamat dari nameserver kita, untuk mengatasinya maka edit file /etc/resolve.conf.
root@gslack:~#nano /etc/resolve.conf
nameserver 128.45.68.1
Maksud dari perintah di atas adalah memasukkan IP komputer kita menjadi nama server, karena DNS yang kita gunakan menggunakan IP 128.45.68.1. kemudian ulangi perintah nslookupnya. Jika senuanya lancar hasilnya akan begini :
root@gslack:~# nslookup gslack.net
Server: 128.45.68.1
Address: 128.45.68.1#53
24 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
Name: gslack.net
Address: 128.45.68.1
kemudian jika kita melakukan nslookup dengan menggunakan IP addressnya hasilnya akan seperti ini
root@gslack:~# nslookup 128.45.68.1
Server: 128.45.68.1
Address: 128.45.68.1#53
1.68.45.128.in-addr.arpa name = gslack.net.
Dan pada saat dilakukan nmap pun berjalan
root@gslack:~# nmap 128.45.68.1
Starting Nmap 5.00 ( http://nmap.org ) at 2009-08-24 11:06 WIT
Interesting ports on gslack.net (128.45.68.1):
25 / 26
Membangun DNS Server Pada Slackware Ditulis oleh Tutor TKJ CLUB Selasa, 24 Januari 2012 19:44 -
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
37/tcp open time
53/tcp open domain
113/tcp open auth
Nmap done: 1 IP address (1 host up) scanned in 0.35 seconds
root@gslack:~# dig gslack.net
; DiG 9.4.3-P2 gslack.net
;; global options: printcmd
;; Got answer:
;; ->>HEADER
26 / 26