IGOS Nusantara dan DNS dengan BIND chroot

Dari IGNwiki
Langsung ke: navigasi, cari

Lihat skema jaringan: http://igos-nusantara.or.id/wiki/Skema_Jaringan

Pasang

yum install bind-chroot bind-utils caching-nameserver 

Salin /etc/named.conf

# cp /etc/named.conf /var/named/chroot/etc/named.conf

Masuk sebagai root, lalu salin berkas:

$ rpm -q bind

Di IGOS Nusantara 2011 menghasilkan:

bind-9.8.0-9.P4.ign6.i686

Penyalinan berkas berikut memakai "/usr/share/doc/bind-9.8.0", jika versi berbeda, lakukan penyesuaian:

cp /usr/share/doc/bind-9.8.0/sample/var/named/named.local /var/named/chroot/var/named/named.local
cp /usr/share/doc/bind-9.8.0/sample/var/named/named.localhost /var/named/chroot/var/named/named.localhost
cp /usr/share/doc/bind-9.8.0/sample/var/named/named.ca /var/named/chroot/var/named/named.ca

cp /usr/share/doc/bind-9.8.0/sample/var/named/named.empty /var/named/chroot/var/named/named.empty
cp /usr/share/doc/bind-9.8.0/sample/var/named/named.loopback /var/named/chroot/var/named/named.loopback

touch /var/named/chroot/etc/named.conf.local

Konfigurasi BIND

File-file yang harus diperhatikan untuk mengkonfigurasikan BIND, antara lain:

  • /etc/resolv.conf -> berisi alamat domain atau alamat IP dari name server.
  • /etc/named.conf -> berisi keterangan letak dan jenis database yang dibutuhkan oleh BIND.
  • /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.
  • /var/named/named.local -> berisi alamat loopback untuk alamat ke diri sendiri dengan alamat 127.0.0.1.

Matikan SELinux

Ikuti petunjuk: http://igos-nusantara.or.id/wiki/IGOS_Nusantara_dan_SELinux

Sesuaikan /etc/hosts

# vi /etc/hosts
127.0.0.1     localhost.localdomain   localhost
192.168.0.1   ns1.serverku.com ns1
::1           localhost localhost.localdomain localhost6 localhost6.localdomain6

DNS server untuk serverku.com

Dalam studi kasus kali ini akan membuat domain baru untuk DNS Server dan mail server, ftp server, http server, dengan data sebagai berikut:

  • IP DNS Server: 192.168.0.1
  • Nama DNS Server: ns1.serverku.com

DNS server ns1.serverku.com menangani tiga domain: serverku.com, latihanku.com dan percobaanku.com

  • Domain1: serverku.com
    • Nama Mail Server: mail.serverku.com di IP 192.168.0.1
    • Nama HTTP Server: www.serverku.com di IP 192.168.0.1
    • Nama FTP Server: ftp.serverku.com di IP 192.168.0.1
  • Domain2 dan Domain3:
    • Nama Domain2: latihanku.com di IP 192.168.0.20
    • Nama Domain3: percobaanku.com di IP 192.168.0.30

Berkas: /var/named/chroot/etc/named.conf

  • Tambahkan pada bagian bawah, mulai (sekitar) baris 45
// ... baris yg sudah ada ...
 
// Tambahan:  
// Konfigurasi resolve DNS
zone "serverku.com" IN {
type master;
file "/var/named/db.serverku.com";
allow-update { key "rndckey"; };
allow-transfer { 192.168.0/26; };
};

// Konfigurasi reverse DNS
zone "0.168.192.in-addr.arpa" IN {
type master;
file "/var/named/db.192";
allow-update { key "rndckey"; };
allow-transfer { 192.168.0/26; };
};
 
include "/etc/db.other.conf";

Berkas: /var/named/chroot/var/named/db.serverku.com

Buat berkas baru /var/named/chroot/var/named/db.serverku.com

$TTL 1D

@    IN    SOA    ns1.serverku.com. suryana.gmail.com. (
2011082801 ; serial: tahun-bulan-tgl-nomor
2H      ; refresh
5M      ; retry
1W      ; kadaluarsa
1H      ; minimum TTL
)

serverku.com. IN    NS     ns1.serverku.com.
serverku.com. IN    A      192.168.0.1
ns1           IN    A      192.168.0.1 ; IP DNS server
www           IN    CNAME  ns1
mail          IN    CNAME  ns1
ftp           IN    CNAME  ns1

@             IN    MX 10  mail.serverku.com.

Berkas: /var/named/chroot/var/named/db.192

$TTL 1D

@    IN    SOA    ns1.serverku.com. suryana.gmail.com (
2011082801 ; serial: tahun-bulan-tgl-nomor
1H      ; refresh
1M      ; retry
1W      ; kadaluarsa
1H      ; minimum TTL
)

@     IN    NS     ns1.serverku.com.
1     IN    PTR    ns1.serverku.com.

Berkas: /var/named/chroot/etc/db.other.conf

// Konfigurasi domain latihanku.com
zone "latihanku.com" IN {
type master;
file "/var/names/db.latihanku.com";
allow-update { key "rndckey"; };
allow-transfer { 192.168.0/26; };
};

// Konfigurasi domain percobaanku.com
zone "percobaanku.com" IN {
type master;
file "/var/named/db.percobaanku.com";
allow-update { key "rndckey"; };
allow-transfer { 192.168.0/26; };
};

Berkas: /var/named/chroot/var/named/db.latihanku.com

$TTL 1D

@    IN    SOA    ns1.serverku.com. suryana.gmail.com. (
2011082801 ; serial: tahun-bulan-tgl-nomor
1H      ; refresh
1M      ; retry
1W      ; kadaluarsa
1H      ; minimum TTL
)

@     IN    NS      ns1.serverku.com.

@     IN    MX 20   mail.latihanku.com.
ns1   IN    A       192.168.0.20
www   IN    CNAME   ns1
ftp   IN    CNAME   ns1

Berkas: /var/named/chroot/var/named/db.percobaanku.com

$TTL 1D

@    IN    SOA    ns1.serverku.com. suryana.gmail.com. (
2011082801 ; serial: tahun-bulan-tgl-nomor
1H      ; refresh
1M      ; retry
1W      ; kadaluarsa
1H      ; minimum TTL
)

@     IN    NS      ns1.serverku.com.

www   IN    A       192.168.0.30
mail  www   IN      CNAME   ns1

@     IN    MX 20   mail.percobaanku.com.

Salin berkas /etc/named.rfc1912.zones

# cp /etc/named.rfc1912.zones /var/named/chroot/etc/

Berkas: /etc/resolv.conf

Berkas /etc/resolv.conf di komputer server 192.168.0.1 diisi:

search serverku.com
search latihanku.com
search percobaanku.com
nameserver 127.0.0.1
nameserver 192.168.0.1

Sesuaikan hak akses

Login sebagai root, lalu jalankan:

rm /etc/rndc.key
chown named:named /var/named/chroot/etc/bind/
chmod 755 /var/named/chroot/etc/bind/

chown named:named /var/named/chroot/etc/named.conf
chmod 600 /var/named/chroot/etc/named.conf

chown root:named /var/named/chroot/etc/rndc.conf
chmod 440 /var/named/chroot/etc/rndc.conf

chown named:named /var/named/chroot/etc/bind/bind.log
chmod 600 /var/named/chroot/etc/bind/bind.log

chown named:named /var/named/chroot/etc/bind/logging
chmod 400 /var/named/chroot/etc/bind/logging

cd /var/named/chroot/etc/bind/ 
chown named:named *

chown named:root /var/named/chroot/etc/bind/named-stats.log
chmod 660 /var/named/chroot/etc/bind/named-stats.log

chown named:named root.hint db.*
chmod 400 db.*

Periksa konfigurasi

Pastikan konfigurasi BIND yang telah dibuat tidak ada kesalahan. Lakukan pemeriksaan dengan cara:

# named-checkconf -t /var/named/chroot /etc/named.conf

Periksa konfigurasi zone sintak # named-checkzone {zonename} {filename}

# named-checkzone serverku.com /var/named/chroot/var/named/db.serverku.com
# named-checkzone latihanku.com /var/named/chroot/var/named/db.latihanku.com
# named-checkzone percobaanku.com /var/named/chroot/var/named/db.percobaanku.com

Jalankan BIND

Jika pemeriksaan konfigurasi sudah benar, buka dua terminal:

Terminal1:

# tail -f /var/log/messages

Terminal2:

# service named start

Periksa tampilan di Terminal1, ada kemungkinan konfigurasi perlu diperbaiki.

Tes konfigurasi DNS server

$ dig serverku.com
$ nslookup www.serverku.com

Jalankan daemon DNS server

Pasang untuk runlevel yang diinginkan:

# /sbin/chkconfig --levels 235 named on

chkconfig

Masukkan DNS agar jalan di init 2, 3 dan 5 gunakan:

# chkconfig --levels 235 named on

Jalankan

# service named start

Konfigurasi client

Pengakses atau client (misal) ada di PC5. Atur agar PC5 memakai DNS server yang ada di 192.168.0.1.

Taut