Minggu, 06 Maret 2016

Home » » Install BIND and Configure DNS Server on CentOS

Install BIND and Configure DNS Server on CentOS


dns-definition

Install BIND and Configure DNS Server on CentOS

Install BIND and Configure DNS Server on CentOS – DNS (Domain Name System) adalah sebuah sistem yang menyimpan informasi tentang nama host ataupun nama domain dalam bentuk distributed database di dalam jaringan komputer, misalkan: Internet. DNS menyediakan alamat IP untuk setiap nama host dan mendata setiap mail exchange server yang menerima surel (email) untuk setiap domain. Menurut browser Google Chrome, DNS adalah layanan jaringan yang menerjemahkan nama situs web menjadi alamat internet.
DNS menyediakan pelayanan yang cukup penting untuk Internet, ketika perangkat keras komputer dan jaringan bekerja dengan alamat IP untuk mengerjakan tugas seperti pengalamatan dan penjaluran (routing), manusia pada umumnya lebih memilih untuk menggunakan nama host dan nama domain, contohnya adalah penunjukan sumber universal (URL) dan alamat surel. Analogi yang umum digunakan untuk menjelaskan fungsinya adalah DNS bisa dianggap seperti buku telepon internet dimana saat pengguna mengetikkan www.aquacybernotes.com di peramban web maka pengguna akan diarahkan ke alamat IP 124.81.92.144 (IPv4) dan 2001:e00:d:10:3:140::83 (IPv6) sumber: wikia. Untuk pembahasan artikel kali ini kita akan membahas mengenai “Install BIND and Configure DNS Server on CentOS”. Untuk Langkah-langkah yang harus dilakukan adalah:

Step 1 : Install package bind dan cache-nameserver

Install package bind dan cache-nameserver dengan mengetikan perintah berikut:
# yum install bind bind-utils caching-nameserver
Sample Output:
[root@aqua ~]# yum -y install bind bind-utils caching-nameserver
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
epel/metalink                                            | 4.3 kB     00:00
* base: centos.mirror.secureax.com
* epel: mirror.nus.edu.sg
* extras: centos.mirror.secureax.com
* updates: centos.mirror.secureax.com
base                                                     | 3.7 kB     00:00
epel                                                     | 4.4 kB     00:00
epel/primary_db                                          | 5.1 MB     00:01
extras                                                   | 3.4 kB     00:00
updates                                                  | 3.4 kB     00:00
updates/primary_db                                       | 2.4 MB     00:03
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package bind.i686 32:9.8.2-0.23.rc1.el6_5.1 will be installed
--> Processing Dependency: bind-libs = 32:9.8.2-0.23.rc1.el6_5.1 for package: 32:bind-9.8.2-0.23.rc1.el6_5.1.i686
--> Processing Dependency: portreserve for package: 32:bind-9.8.2-0.23.rc1.el6_5.1.i686
--> Processing Dependency: liblwres.so.80 for package: 32:bind-9.8.2-0.23.rc1.el6_5.1.i686
--> Processing Dependency: libisccfg.so.82 for package: 32:bind-9.8.2-0.23.rc1.el6_5.1.i686
--> Processing Dependency: libisccc.so.80 for package: 32:bind-9.8.2-0.23.rc1.el6_5.1.i686
--> Processing Dependency: libisc.so.83 for package: 32:bind-9.8.2-0.23.rc1.el6_5.1.i686
--> Processing Dependency: libdns.so.81 for package: 32:bind-9.8.2-0.23.rc1.el6_5.1.i686
--> Processing Dependency: libbind9.so.80 for package: 32:bind-9.8.2-0.23.rc1.el6_5.1.i686
---> Package bind-utils.i686 32:9.8.2-0.23.rc1.el6_5.1 will be installed
--> Running transaction check
---> Package bind-libs.i686 32:9.8.2-0.23.rc1.el6_5.1 will be installed
---> Package portreserve.i686 0:0.0.4-9.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
Package          Arch      Version                          Repository    Size
================================================================================
Installing:
bind             i686      32:9.8.2-0.23.rc1.el6_5.1        updates      4.0 M
bind-utils       i686      32:9.8.2-0.23.rc1.el6_5.1        updates      181 k
Installing for dependencies:
bind-libs        i686      32:9.8.2-0.23.rc1.el6_5.1        updates      891 k
portreserve      i686      0.0.4-9.el6                      base          22 k

Transaction Summary
================================================================================
Install       4 Package(s)

Total download size: 5.0 M
Installed size: 10 M
Downloading Packages:
(1/4): bind-9.8.2-0.23.rc1.el6_5.1.i686.rpm              | 4.0 MB     00:04
(2/4): bind-libs-9.8.2-0.23.rc1.el6_5.1.i686.rpm         | 891 kB     00:00
(3/4): bind-utils-9.8.2-0.23.rc1.el6_5.1.i686.rpm        | 181 kB     00:00
(4/4): portreserve-0.0.4-9.el6.i686.rpm                  |  22 kB     00:00
--------------------------------------------------------------------------------
Total                                           835 kB/s | 5.0 MB     00:06
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : 32:bind-libs-9.8.2-0.23.rc1.el6_5.1.i686                     1/4
Installing : portreserve-0.0.4-9.el6.i686                                 2/4
Installing : 32:bind-9.8.2-0.23.rc1.el6_5.1.i686                          3/4
Installing : 32:bind-utils-9.8.2-0.23.rc1.el6_5.1.i686                    4/4
Verifying  : 32:bind-9.8.2-0.23.rc1.el6_5.1.i686                          1/4
Verifying  : portreserve-0.0.4-9.el6.i686                                 2/4
Verifying  : 32:bind-libs-9.8.2-0.23.rc1.el6_5.1.i686                     3/4
Verifying  : 32:bind-utils-9.8.2-0.23.rc1.el6_5.1.i686                    4/4

Installed:
bind.i686 32:9.8.2-0.23.rc1.el6_5.1 bind-utils.i686 32:9.8.2-0.23.rc1.el6_5.1

Dependency Installed:
bind-libs.i686 32:9.8.2-0.23.rc1.el6_5.1    portreserve.i686 0:0.0.4-9.el6

Complete!
[root@aqua ~]#

Step 2 : Configure DNS Server

Untuk melakukan konfigurasi DNS silahkan edit konfigurasi named.conf yang terletak pada directory /etc dengan membuatkan zone forward dan zone reverse dengan mengetikkan perintah :
# nano /etc/named.conf
kemudian masukkan konfigurasi seperti berikut ini :
options { listen-on port 53 { any; }; directory       "/var/named"; dump-file       "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query     { any; }; recursion no; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; zone "aquacybernotes.com" IN { type master; file "/etc/named/aquacybernotes.com.txt"; allow-transfer { any; }; }; zone "224.199.128.in-addr.arpa" IN { type master; file "/etc/named/224.199.128.rev"; allow-update { none; }; }; include "/etc/named.rfc1912.zones"; include "/etc/named.root.key";

Step 3 : Create Zone Fordward

Sekarang kita akan membuat zone fordward untuk domain aquacybernotes.com dengan nama file aquacybernotes.com.txt dan letakkan file sesuai dengan konfigurasi pada named.conf
# nano /etc/named/aquacybernotes.com.txt
lalu isikan konfigurasi file berikut ini:
$TTL 10800 @ IN SOA ns1.aquacybernotes.com.    root.aquacybernotes.com. ( 2014040401  ;serial 21600    ;refresh after 6 hours 3600    ;retry after 1 hour 604800   ;expire after 1 week 86400 )    ;minimum TTL of 1 day @         3600          IN        A               128.199.224.7 mail      86400         IN        A               128.199.224.7 ns1       172800        IN        A               128.199.224.7 ns2       172800        IN        A               128.199.224.7 www       172800        IN        A               128.199.224.7 blog      172800        IN        A               128.199.224.7 @         86400         IN        MX    10        mail.aquacybernotes.com. @         172800        IN        NS              ns1.aquacybernotes.com. @         172800        IN        NS              ns2.aquacybernotes.com.

Step 4 : Create Zone Reverse

Setelah itu membuat zone reverse domain dengan tujuan mentranslasikan ip address dari server ke alamat domain yang merupakan kebalikan dari zone forward. Untuk zone reverse nama file dan lokasi file harus disesuaikan dengan nama dan lokasi yang telah ditentukan pada konfigurasi named.conf. Pada konfigurasi di atas nama reverse zone adalah 224.199.128.rev (IP Address server yang dibalik) dan diletakan dalam directory /etc/named/
# nano /etc/named/224.199.128.rev
lalu isi file tersebut dengan konfigurasi berikut:
$TTL    86400 @   IN     SOA  aquacybernotes.com.      root.aquacybernotes.com. ( 2008111914  ;Serial 3600                ;Refresh 1800                ;Retry 604800         ;Expire 86400            ;Minimum TTL ) @ IN         NS            ns1.aquacybernotes.com. @ IN         NS            ns2.aquacybernotes.com. 7          IN     PTR     aquacybernotes.com.         => 7 merupakan akhir dari IP Address Server 128.199.224.7
Keterangan:
  •  SOA (Start Of Authority) untuk mengidentifikasikan otoritas name-server pada zone data atau informasi nama host domain.
  • TTL (Time To Live) merupakan waktu yang diperlukan server DNS untuk menyimpan hasil resolving ke cache-nya.
  •  Serial merupakan nomor seri database-cache domain my-server.com. Jika ada perubahan data pada berkas zone aquacybernotes.com, misalnya menambahkan domain blog.aquacybernotes.com, maka anda harus merubah/menambah nomor serinya. Sebaiknya digunakan format tahun-bulan-tanggal-jam untuk nomor serialnya. Pada berkas database untuk zone domain aquacybernotes.com tersebut terakhir di-update tanggal 19 Nopember 2008 jam 14. Fungsi dari serial ini adalah untuk memberitahukan kepada secondary-master name-server untuk meng-update database-cache-nya jika ada perubahan pada primary-master name-server yaitu dengan melakukan pengecekan nomor serial. Jika nomor serial berubah/bertambah maka secondary-master name-server akan segera melakukan zone-transfer dari primary-master name-server.
  • Refresh adalah selang waktu yang diperlukan (dalam detik) secondary-master name-server untuk melakukan pengecekan perubahan database-cache pada primary-master name-server.
  • Retry adalah waktu (dalam detik) yang digunakan secondary-master name-server untuk menunggu pengulangan cek berkas zone jika pada saat proses refresh primary-master name-server tidak memberikan respon
  • Expire adalah waktu (dalam detik) yang digunakan secondary-master name-server untuk mempertahankan berkas zone jika tidak dapat melakukan zone-refresh. Jika setelah waktu expire telah habis tapi secondary-master name-server tidak dapat melakukan zone-refresh maka berkas zone pada secondary-master name-server akan dihapus.
  • Minimum adalah nilai waktu (TTL) default untuk semua resource-record yang ada dalam berkas zone.
  •  @ menunjukkan bahwa zone yang bersangkutan adalah zone domain yang ditunjukkan berkas named.conf ke berkas database-cache tersebut atau origin zone
  •  IN adalah singkatan dari Internet. Semua informasi Internet digunakan IN dan untuk informasi non-Internet digunakan kode lain.
  •  A menyatakan Address Internet atau alamat IP dari mesin yang ditangani oleh DNS ini proses penerjemahan namanya.
  •  NS menyatakan Name Server.
  •  NS Record merupakan daftar name-server yang otoritatif untuk zone bersangkutan. Pada database domain aquacybernotes.com name-servernya adalah ns1.aquacybernotes.com dan ns2.aquacybernotes.com. NS Record ini yang nantinya akan diserahkan kepada pengelola domain TLD (Top Level Domain) agar terdaftar dalam registar domain.
  •  MX (Mail Exchanger) merupakan record routing email, untuk domain aquacybernotes.com dalam hal ini akan diarahkan ke mail.aquacybernotes.com. sebagai host yang ditunjuk sebagai mail exchanger akan memproses atau meneruskan mail untuk domain aquacybernotes.com.
  •  Angka 10 pada MX 10 mail.aquacybernotes.com. merupakan nilai preferensi (preference value) untuk menunjukkan tingkat prioritas mail exchanger yang digunakan untuk memproses atau meneruskan mail yang menuju domain my-server.com.
  •  Kata mail dan blog pada bagian :
mail    IN   A   128.199.224.7 blog    IN   A   128.199.224.7
berfungsi sebagai pengalamatan subdomain pada domain aquacybernotes.com sebagai mail.aquacybernotes.com dan   blog.aquacybernotes.com nantinya.
  • CNAME (Canonical Name) fungsinya untuk alias, jadi suatu host dapat mempunyai nama lebih dari satu.
  •  PTR (POINTER) menyatakan pemetaan alamat IP ke domain aquacybernotes.com yang merupakan reversed-address. Reverse Address ini sangat diperlukan jika kita membuat mail server karena dengan adanya reverse IP Address ke alamat domain kita. Maka proses sent/receive protocol SMPT pada mesin mail server kita dapat berjalan normal. Tanpa adanya reverse Address, IP kita dianggap sebagai spammer oleh mesin smtp mail server lain karena tidak dikenal.

Step 5 : Starting Service BIND

Selanjutnya restart service bind dengan mengetikkan perintah :
# chkconfig named on # service named start
Jika saat merestart service bind/named, anda menemukan kasus proses generating file rndc.key tidak kunjung selesai seperti gambar berikut:
Maka solusinya adalah cansel terlebih dahulu proses tersebut, kemudian buatkan file rndc.key nya secara manual dengan mengetikkan perintah :
# rndc-confgen -a -r /dev/urandom
Pada terminal linux anda dan pastikan file rndc.key nya sudah terbuat, lalu restart kembali service named/bind.
# service named restart
Demikianlah pembahasan mengenai konfigurasi DNS Server pada Linux CentOS menggunakan bind cache name server. Semoga bermanfaat untuk kita semua. ^_^

Share this games :

0 komentar:

Posting Komentar