
Rabu, 21 Oktober 2009
di
12.19
|
0
komentar
sedikit kasih tutorial singkat bagaimana membuat DNS server menggunakan BIND (Berkeley Internet Name Domain)
sebelum kita membangunnya ada sedikit teori untuk mengenal lebih jauh tentang DNS. Ada pepatah mengatakan "tak kenal maka tak sayang"
, sebelum kita mengerti "DNS poisoning" atau apapun namanya sudah pasti harus mengenal dulu apa itu DNS dan bagaimana dia bekerja. Saatnya sebentar kita pakai topi putih
Komponen DNS
Kompnen DNS dibagi menjadi 4 bagian yaitu:
1. DNS server
Komputer yang bertugas menjalankan program dari server DNS, contoh BIND. BIND menampung database DNS berisi informasi struktur pohon atau pengartian nama dari sebuah permintaan DNS client.
2. DNS Zone
Merupakan penampung dari penamaan untuk server yang berhak atasnya. Contoh sebuah server DNS memiliki otoritas untuk university.ac.id dan university.edu dan setiap zone dapat disertakan satu atau lebih domain
3. DNS resolver
sebuah service yang menggunakan protocol DNS untuk meminta informasi dari DNS server
4. Resource record
arah masuknya database DNS yang digunakan untuk menjawab permintaan client.
Informasi yang dikirim client ke DNS server:
- Nama domain DNS dengan status sebagai FQDN (Full Quallified Domain Name)to untuk menghasilkan FQDN apabila tidak disediakan oleh program client>
- Tipe permintaan yang spesifik ke sebuah sumber daya record berdasarkan tipe atau spesialisasi tipe operasi permintaan
- spesifik kelas untuk nama domain DNS
Resolusi DNS
secara skenario mendasar DNS client menghubungi DNS server untuk melakukan process terhadap database dari sumber daya record.
Proses permintaan DNS
Permintaan terhadap DNS server dibagi 2 proses:
1. Name request yang dimulai dari komp client kemudian dilewatkan ke DNS client untuk resolusi.
2. ketika request tidak dapat diartikan secara lokal, DNS Server dapat melakukan proses untuk mengartikan nama DNS
Instalasi DNS server pada mesin RedHat 9
umumnya setiap distro linux menggunakan paket aplikasi BIND untuk mengaktifkan DNS server nya. Biasanya tersedia di dalam CD distribusinya, disini saya menggunakan bind-9.2.1-16.i386.rpm
ada baiknya kita cek dulu paket tersebut sudah tersedia di dalam sistem kita atau belum
jika belum tersedia silahkan instal BIND melalui paket rpm nya
jika sudah terinstall kita akan masuk ke tahap konfigurasi, berikut saya asumsikan contoh kasusnya:
step 1
edit file /etc/named.conf
tambahkan baris untuk melakukan penambahan domain terpilih:
step2
setelah dibentuk nama file zone untuk domain,yang dalam kondisi default diletakkan di direktori /var/named, maka berikutnya file /var/named/domainku.or.id.zone dan /var/named/202.154.20.rev perlu dibuat.
namefile </var/named/domainku.or.id.zone>
step3
namefile </var/named/202.154.20.rev>
resolver pada client
semua aplikasi yang membutuhkan DNS memakai resolver.
proses resolving:
1. mengajukan permintaan terhadap name server
2. menginterpretasikan permintaan (resolve), dan memberikan response
3. mengembalikan informasi kepada program yang memintanya
resolver akan menjawab dengan 2 cara yaitu:
1. melihat isi dari cache yang pernah ditanyakan sebelumnya
2. menanyakan kepada DNS server untuk mendapatkan hasilnya
resolver yang biasa dipergunakan untuk mencari informasi tentang DNS adalah nslookup
untuk mengaktifkan fungsi resolver pada OS Linux adalah dengan melakukan konfigurasi pada file /etc/resolv.conf
namefile </etc/resolv.conf>
thanks for:5yn_4ck
sebelum kita membangunnya ada sedikit teori untuk mengenal lebih jauh tentang DNS. Ada pepatah mengatakan "tak kenal maka tak sayang"


Komponen DNS
Kompnen DNS dibagi menjadi 4 bagian yaitu:
1. DNS server
Komputer yang bertugas menjalankan program dari server DNS, contoh BIND. BIND menampung database DNS berisi informasi struktur pohon atau pengartian nama dari sebuah permintaan DNS client.
2. DNS Zone
Merupakan penampung dari penamaan untuk server yang berhak atasnya. Contoh sebuah server DNS memiliki otoritas untuk university.ac.id dan university.edu dan setiap zone dapat disertakan satu atau lebih domain
3. DNS resolver
sebuah service yang menggunakan protocol DNS untuk meminta informasi dari DNS server
4. Resource record
arah masuknya database DNS yang digunakan untuk menjawab permintaan client.
![]() | ![]() | ![]() |
![]() | Code: DNS resource records types: TYPE Value and meaning Reference ----------- --------------------------------------------- --------- A 1 a host address [RFC1035] NS 2 an authoritative name server [RFC1035] MD 3 a mail destination (Obsolete - use MX) [RFC1035] MF 4 a mail forwarder (Obsolete - use MX) [RFC1035] CNAME 5 the canonical name for an alias [RFC1035] SOA 6 marks the start of a zone of authority [RFC1035] MB 7 a mailbox domain name (EXPERIMENTAL) [RFC1035] MG 8 a mail group member (EXPERIMENTAL) [RFC1035] MR 9 a mail rename domain name (EXPERIMENTAL) [RFC1035] NULL 10 a null RR (EXPERIMENTAL) [RFC1035] WKS 11 a well known service description [RFC1035] PTR 12 a domain name pointer [RFC1035] HINFO 13 host information [RFC1035] MINFO 14 mailbox or mail list information [RFC1035] MX 15 mail exchange [RFC1035] TXT 16 text strings [RFC1035] RP 17 for Responsible Person [RFC1183] AFSDB 18 for AFS Data Base location [RFC1183] X25 19 for X.25 PSDN address [RFC1183] ISDN 20 for ISDN address [RFC1183] RT 21 for Route Through [RFC1183] NSAP 22 for NSAP address, NSAP style A record [RFC1706] NSAP-PTR 23 for domain name pointer, NSAP style [RFC1348] SIG 24 for security signature [RFC4034][RFC3755][RFC2535] KEY 25 for security key [RFC4034][RFC3755][RFC2535] PX 26 X.400 mail mapping information [RFC2163] GPOS 27 Geographical Position [RFC1712] AAAA 28 IP6 Address [RFC3596] LOC 29 Location Information [RFC1876] NXT 30 Next Domain - OBSOLETE [RFC3755][RFC2535] EID 31 Endpoint Identifier [Patton] NIMLOC 32 Nimrod Locator [Patton] SRV 33 Server Selection [RFC2782] ATMA 34 ATM Address [ATMDOC] NAPTR 35 Naming Authority Pointer [RFC2915][RFC2168] KX 36 Key Exchanger [RFC2230] CERT 37 CERT [RFC4398] A6 38 A6 (Experimental) [RFC3226][RFC2874] DNAME 39 DNAME [RFC2672] SINK 40 SINK [Eastlake] OPT 41 OPT [RFC2671] APL 42 APL [RFC3123] DS 43 Delegation Signer [RFC4034][RFC3658] SSHFP 44 SSH Key Fingerprint [RFC4255] IPSECKEY 45 IPSECKEY [RFC4025] RRSIG 46 RRSIG [RFC4034][RFC3755] NSEC 47 NSEC [RFC4034][RFC3755] DNSKEY 48 DNSKEY [RFC4034][RFC3755] DHCID 49 DHCID [RFC4701] NSEC3 50 NSEC3 [RFC5155] NSEC3PARAM 51 NSEC3PARAM [RFC5155] Unassigned 52-54 HIP 55 Host Identity Protocol [RFC5205] NINFO 56 NINFO [Reid] RKEY 57 RKEY [Reid] Unassigned 58-98 SPF 99 [RFC4408] UINFO 100 [IANA-Reserved] UID 101 [IANA-Reserved] GID 102 [IANA-Reserved] UNSPEC 103 [IANA-Reserved] Unassigned 104-248 TKEY 249 Transaction Key [RFC2930] TSIG 250 Transaction Signature [RFC2845] IXFR 251 incremental transfer [RFC1995] AXFR 252 transfer of an entire zone [RFC1035] MAILB 253 mailbox-related RRs (MB, MG or MR) [RFC1035] MAILA 254 mail agent RRs (Obsolete - see MX) [RFC1035] * 255 A request for all records [RFC1035] Unassigned 256-32767 TA 32768 DNSSEC Trust Authorities [Weiler] 2005-12-13 DLV 32769 DNSSEC Lookaside Validation [RFC4431] Unassigned 32770-65279 Private use 65280-65534 Reserved 65535 | ![]() |
![]() | ![]() | ![]() |
Informasi yang dikirim client ke DNS server:
- Nama domain DNS dengan status sebagai FQDN (Full Quallified Domain Name)
- Tipe permintaan yang spesifik ke sebuah sumber daya record berdasarkan tipe atau spesialisasi tipe operasi permintaan
- spesifik kelas untuk nama domain DNS
Resolusi DNS
secara skenario mendasar DNS client menghubungi DNS server untuk melakukan process terhadap database dari sumber daya record.
Proses permintaan DNS
Permintaan terhadap DNS server dibagi 2 proses:
1. Name request yang dimulai dari komp client kemudian dilewatkan ke DNS client untuk resolusi.
2. ketika request tidak dapat diartikan secara lokal, DNS Server dapat melakukan proses untuk mengartikan nama DNS
Instalasi DNS server pada mesin RedHat 9
umumnya setiap distro linux menggunakan paket aplikasi BIND untuk mengaktifkan DNS server nya. Biasanya tersedia di dalam CD distribusinya, disini saya menggunakan bind-9.2.1-16.i386.rpm
ada baiknya kita cek dulu paket tersebut sudah tersedia di dalam sistem kita atau belum
![]() | ![]() | ![]() |
![]() | Code: $ rpm -qa | grep bind | ![]() |
![]() | ![]() | ![]() |
jika belum tersedia silahkan instal BIND melalui paket rpm nya
![]() | ![]() | ![]() |
![]() | Code: $ rpm -Uvh bind-9.2.1-16.i386.rpm | ![]() |
![]() | ![]() | ![]() |
jika sudah terinstall kita akan masuk ke tahap konfigurasi, berikut saya asumsikan contoh kasusnya:
![]() | ![]() | ![]() |
![]() | Code: sistem IP addr interface default IP gateway ============= ============================== ====================== ========================== router 202.154.20.2 (public) eth0 202.154.20.1(public) 192.168.2.1 (private) eth1 DNS server 202.154.20.3 (public) eth0 202.154.20.1(public) client-client 192.168.2.2-254 net adapter win32 192.168.2.1(private) | ![]() |
![]() | ![]() | ![]() |
step 1
edit file /etc/named.conf
tambahkan baris untuk melakukan penambahan domain terpilih:
![]() | ![]() | ![]() |
![]() | Code: zone "domainku.or.id" in { type master; file "domainku.or.id.zone"; }; zone "20.154.202.in-addr.arpa" { type master; file "202.154.20.rev"; }; | ![]() |
![]() | ![]() | ![]() |
step2
setelah dibentuk nama file zone untuk domain,yang dalam kondisi default diletakkan di direktori /var/named, maka berikutnya file /var/named/domainku.or.id.zone dan /var/named/202.154.20.rev perlu dibuat.
namefile </var/named/domainku.or.id.zone>
![]() | ![]() | ![]() |
![]() | Code: ; Domains defined in this file: ; domainku.or.id.zone ; $TTL 86400 $ORIGIN domainku.or.id. @ IN SOA domainku.or.id. hostmaster.domainku.or.id. ( 2006042500 ; serial 28800 ; refresh 7200 ; retry 604800 ; expire 86400 ; minimum ) IN A 202.154.20.3 IN NS domainku.or.id. IN MX 10 domainku.or.id. ; localhost IN A 127.0.0.1 gw IN A 202.154.20.1 gw IN A 192.168.2.1 router IN A 202.154.20.2 host IN A 202.154.20.3 www IN CNAME host.domainku.or.id. ftp IN CNAME host.domainku.or.id. pop IN CNAME host.domainku.or.id. smtp IN CNAME host.domainku.or.id. | ![]() |
![]() | ![]() | ![]() |
step3
namefile </var/named/202.154.20.rev>
![]() | ![]() | ![]() |
![]() | Code: ; Domains defined in this file: ; 202.154.20.rev ; $ORIGIN 20.154.202.in-addr.arpa. @ IN SOA domainku.or.id. hostmaster.domainku.or.id. ( 2006042500 ; serial 28800 ; refresh 7200 ; retry 604800 ; expire 86400 ; minimum ) IN NS domainku.or.id. 1 IN PTR gw.domainku.or.id. 2 IN PTR router.domainku.or.id. 3 IN PTR host.domainku.or.id. | ![]() |
![]() | ![]() | ![]() |
resolver pada client
semua aplikasi yang membutuhkan DNS memakai resolver.
proses resolving:
1. mengajukan permintaan terhadap name server
2. menginterpretasikan permintaan (resolve), dan memberikan response
3. mengembalikan informasi kepada program yang memintanya
resolver akan menjawab dengan 2 cara yaitu:
1. melihat isi dari cache yang pernah ditanyakan sebelumnya
2. menanyakan kepada DNS server untuk mendapatkan hasilnya
resolver yang biasa dipergunakan untuk mencari informasi tentang DNS adalah nslookup
untuk mengaktifkan fungsi resolver pada OS Linux adalah dengan melakukan konfigurasi pada file /etc/resolv.conf
namefile </etc/resolv.conf>
![]() | ![]() | ![]() |
![]() | Code: # /etc/resolv.conf - DNS setup file # domain domainku.or.id search domainku.or.id nameserver 202.154.20.2 # antisipasi jika domain dalam terjadi masalah maka akan diteruskan ke DNS public misal ISP # nameserver 202.154.1.2 # ns1.rad.net.id nameserver 202.154.3.2 # ns2.rad.net.id | ![]() |
![]() | ![]() | ![]() |
thanks for:5yn_4ck
Diposting oleh
*
Label:
internet,
mahasiswa,
networking,
TUGAS TKJ,
tutorial