Otomatisasi Instalasi & Konfigurasi DNS Server pada openSUSE
Salah satu fungsi dan service penting dalam dunia server adalah DNS Server. DNS Server digunakan untuk melakukan resolve nama dan alamat komputer, dibutuhkan baik untuk mail server, file server, directory server maupun service lainnya yang terkait dengan DNS.
Meski openSUSE sudah menyediakan YAST yang sudah sangat memudahkan proses konfigurasi DNS, dalam prakteknya masih banyak teman-teman yang kesulitan membuat sebuah DNS Server berbasis openSUSE. Berdasarkan pengalaman saya, banyak juga proses instalasi Zimbra Mail Server yang terhambat gara-gara konfigurasi DNS tidak tepat.
Untuk mengatasi hal tersebut, saya membuat script kecil yang mudah-mudahan bermanfaat untuk membangun sebuah DNS Server berbasis openSUSE.
Script ini memiliki spesifikasi dan cakupan sebagai berikut :
- Meminta masukan dalam bentuk nama domain, nama hostname (nama komputer), Alamat IP dan alamat Name Server (DNS Router & ISP)
- Secara otomatis melakukan konfigurasi DNS Zone dan Reverse DNS Record untuk nama domain
- Dapat memilih untuk menggunakan repo online (butuh akses internet) atau repo lokal
- Otomatis melakukan update file /etc/hosts, /etc/named.conf, /etc/resolv/conf,/etc/sysconfig/network/config dan file konfigurasi yang ada pada /var/lib/named
- Memasukkan 4 buah record standar, yaitu Name Server record (ns1.namadomain.tld), MX Records (namakomputer.namadomain.tld) dan Address Record (ns1 & namakomputer) sesuai dengan alamat IP yang dimasukkan
Silakan download script ini disini : Script Otomatis DNS Server-openSUSE
Berikut adalah cara penggunaannya :
- Download script diatas ke salah satu folder (contoh : /home/vavai)
- Buka konsole / terminal (ALT+F2, konsole atau ALT+F2, gnome-terminal)
- Masuk sebagai root, pindah ke folder download, ekstrak dan jalankan script dengan perintah sebagai berikut (sesuaikan foldernya) :
su cd /home/vavai tar -zxvf dns-auto.tar.gz cd dns-auto chmod +x dns-auto.sh ./dns-auto.sh
Berikut adalah script setting DNS Server secara otomatis seperti ada dalam link diatas (Untuk menjalankan tetap memerlukan 1 set file & folder didalam link, jangan gunakan script ini sendirian
) :
#!/bin/sh
#Hapus Layar
clear
echo "########################################################################"
echo "# DNS-Auto ver 2009.05.001 untuk OpenSUSE 11.1 #"
echo "# Skrip untuk otomatisasi konfigurasi DNS Server pada OpenSUSE #"
echo "# Masim "Vavai" Sugianto - vavai@vavai.com - http://vavai.com/blog/v2 #"
echo "########################################################################"
echo ""
#Default Configuration
startdirectory="/tmp/dns-auto/"
searchterm="vavai.com"
nama_komputer="namahost"
ip_dns="192.168.0.5"
versi=$(grep "VERSION" /etc/SuSE-release | cut -f 2 -d =)
#Tanya, punya akses internet tidak ? Jika ya, gunakan repo online
echo -n "Apakah anda ingin instalasi menggunakan repo online ? [Y/T] "
read jawab
flag_akses_internet="`echo $jawab|tr [a-z] [A-Z]`"
#echo "Tanya nama domain"
echo ""
echo "Proses konfigurasi..."
echo -n "1. Masukkan nama domain (misal : vavai.com) : "
read nama_domain
echo -n "2. Masukkan nama komputer (hostname) : "
read nama_host
echo ""
echo -n "3. Masukkan alamat IP (misal : 192.168.0.1) : "
read alamat_ip
echo -n "4. Masukkan alamat IP Name Server (Biasanya IP Router/DNS ISP) : "
read ip_dns_new
if [ "$flag_akses_internet" = "Y" ] ;
then
zypper mr -da
zypper ar "http://mirror1.opensuse.or.id/repo/$versi/oss/" oss-m1
zypper ar "http://mirror1.opensuse.or.id/repo/$versi/non-oss/" non-oss-m1
# zypper ar http://mirror1.opensuse.or.id/repo/packman/suse/11.1/ packman-m1
zypper ref
fi
#echo "Install file yang dibutuhkan"
zypper in rsync
zypper in -t pattern dhcp_dns_server
#Reverse IP
subip1=$(echo $alamat_ip | cut -f 1 -d .)
subip2=$(echo $alamat_ip | cut -f 2 -d .)
subip3=$(echo $alamat_ip | cut -f 3 -d .)
subip4=$(echo $alamat_ip | cut -f 4 -d .)
reverse_ip="$subip3.$subip2.$subip1"
echo "Salin file konfigurasi ke folder temporary"
mkdir -p $startdirectory
rsync -av --delete . $startdirectory
#echo "Ubah nama file"
regexp1="s/$searchterm/$nama_domain/2"
find /tmp/dns-auto -name "*$searchterm*" | awk '{print("mv "$1" "$1)}' | sed "$regexp1" | /bin/sh
#echo "Ganti nama reverse DNS"
regexp2="s/0.168.192/$reverse_ip/2"
find /tmp/dns-auto -name "*0.168.192*" | awk '{print("mv "$1" "$1)}' | sed "$regexp2" | /bin/sh
#echo "Ubah konfigurasi $searchterm $startdirectory"
for file in $(grep -l -R $searchterm $startdirectory)
do
sed -e "s/$searchterm/$nama_domain/g" -e "s/192.168.0.1/$alamat_ip/g" -e "s/0.168.192/$reverse_ip/g" -e "s/1.0.168.192/$subip4.$reverse_ip/g" -e "s/$nama_komputer/$nama_host/g" -e "s/$ip_dns/$ip_dns_new/g" $file > /tmp/tempfile.tmp
mv /tmp/tempfile.tmp $file
echo "Modified: " $file
done
echo "Done!"
#Ubah Netconfig
cp /etc/sysconfig/network/config /etc/sysconfig/network/config.bak
cp /etc/sysconfig/network/config /tmp/dns-auto/config.bak
sed -e "s/NETCONFIG_DNS_POLICY='auto'/NETCONFIG_DNS_POLICY=''/g" /tmp/dns-auto/config.bak /etc/sysconfig/network/config
#find /tmp/dns-auto/
#Update konfigurasi
mv /etc/named.conf /etc/named.bak
mv /etc/resolv.conf /etc/resolv.conf.bak
mv /etc/hosts /etc/hosts.bak
mv /etc/named.d/forwarders.conf /etc/named.d/forwarders.conf.bak
if [ -d /var/lib/named/master.bak ]; then
rm -rf /var/lib/named/master.bak
fi
mv /var/lib/named/master /var/lib/named/master.bak
if [ -d /var/lib/named/master ]; then
rm -rf /var/lib/named/master
fi
mv /tmp/dns-auto/named/named.conf /etc/named.conf
mv /tmp/dns-auto/named/resolv.conf /etc/resolv.conf
mv /tmp/dns-auto/named/hosts /etc/hosts
mv /tmp/dns-auto/named/forwarders.conf /etc/named.d/forwarders.conf
rsync -av /tmp/dns-auto/named/ /var/lib/named/
#Jalankan service
service named restart
#Test
nslookup "$nama_host.$nama_domain"
echo "Proses konfigurasi telah selesai"
Popularity: 34% [?]





[...] Continue Reading “Setting & Konfigurasi DNS Server pada openSUSE Secara Otomatis” Posted by vavai on May 29th, 2009 and is filed under Linux. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site. [...]
penjelasannya lengkap banget
maturnuwun…
Mas Vavai boleh tanya gak tentang baris No. 42 – 44 yang menambah repo dari mirror1.opensuse.or.id, kenapa yang di nomor 42 & 43 tidak diberi tanda pagar sedangkan yang nomor 44 diberi tanda pagar. Bedanya apa ya antara yg diberi pagar sama yang tidak. Ma’af kalau pertanyaannya terlalu bodoh … Terima kasih banyak
met sore mas vavai, apakah script ini bisa dipake untuk ubuntu 8.04, tk’s
DNS – Domain Name System. Merupakan layanan di Internet untuk jaringan yang menggunakan TCP/IP.
Layanan ini digunakan untuk mengidentifikasi sebuah komputer dengan nama bukan dengan menggunakan
alamat IP (IP address). Singkatnya DNS melakukan konversi dari nama ke angka. DNS dilakukan secara
desentralisasi, dimana setiap daerah atau tingkat organisasi memiliki domain sendiri. Suatu sistem database yang
mengizinkan aplikasi TCP/IP menterjemahkan nama host ke dalam satu IP address. DNS (Domain Name Service)
merupakan servis di Internet untuk network yang menggunakan TCP/IP.
Semoga bermanfaat.
Salam dari kami :
KOMUNITAS PELAJAR ILMU KOMPUTER INDONESIA
[...] Jalankan file dns-auto dan ikuti panduan yang diberikan (keterangan lebih lengkap mengenai Setting DNS secara otomatis menggunakan dns-auto dapat dibaca pada artikel saya : Otomatisasi Settting DNS pada openSUSE menggunakan DNS Auto) [...]
Waah keren mantabs segera di coba aah terima kasih ilmunya
mantaf mas … gilee neh tips & triks yang dahsyat s0bat … trims yoo