Minggu, 13 April 2014

Membuat Web Server

Install APACHE22–

Install dari Ports

cd /usr/ports/www/apache24
make install clean

Atau Lewat Pakage

pkg_add apache24

Enable MySQL pada option

Selanjutnya pakai saja opsi default, jadi ok,ok saja


Tambahkan pada rc.conf

echo 'apache24_enable="YES"' >> /etc/rc.conf
Jalankan apache

/usr/local/etc/rc.d/apache24 start

atau bisa menggunakan command

serice apache24 start
Output:

Performing sanity check on apache24 configuration:
Syntax OK
Stopping apache22.
Waiting for PIDS: 61539.
Performing sanity check on apache24 configuration:
Syntax OK
Starting apache24.




–Install PHP55—

Dari ports

cd /usr/ports/lang/php55
make install clean

Pastikan untuk meng enable apache module pada install Step (Blue screen)
Pastikan untuk meng enable php55-extention
Pada instalasi ini pastikan untuk meng-enable session dan mysql suppot.

Setelah itu aktifkan the konfigurasi php

cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini

–MYSQL51-server–

1- Install Mysql Server 5.1 dari ports

cd /usr/ports/databases/mysql51-server

make install clean

2- Enable dan jalankan mysql service

echo ‘mysql_enable=”YES”‘ >> /etc/rc.conf

3- Start mysql server

/usr/local/etc/rc.d/mysql-server start

4- Buat mysql admin password

mysqladmin -u root password “newpassword”

Install WordPress

Untuk wordpress, tinggal install melalui port, kemudian semua aplikasi yang dibutuhkan akan otomatis di install juga.

cd /usr/ports/www/wordpress

make install clean
Tunggu sampai selesai.

setting apache24
buka
ee /usr/local/etc/apache24/httpd.conf

cari scrpt dibawah bila tidak ada tambahkan script dibawah atau ganti sesuai dibawah ingat cari dulu kemudian tempat sesuai posisi script sebelumnya

LoadModule php5_module        libexec/apache24/libphp5.so #untuk membaca php


ServerAdmin wahyuXXXX@arc.itb.ac.id #email admin

ServerName XXXXX.ac.id:80 #domain server, bila blm ada bisa pake IP


DirectoryIndex index.php #untuk membaca file php sebelumnya index.html maka akan membaca file html


<IfModule mime_module>
AddType application/x-httpd-php .php #tambahan untuk me-run file php

DocumentRoot "/usr/local/www/apache24/data" #tempat dokumen root
<Directory "/usr/local/www/apache24/data">

file wordpress ada di /usr/local/www/wordpress maka script di atas bisa di ganti menjadi

DocumentRoot "/usr/local/www/wordpress" # tempat menyimpan file wordpress
<Directory "/usr/local/www/wordpress">

keluar dari ee

restart apache

service apache24 restart 





Jumat, 28 Maret 2014

Pengertian DNS dan Membuat Server DNS dengan chroot di Centos 5

29SE

I. PENDAHULUAN

DNS (Domain Name System) adalah sebuah sistem yang menjaga informasi tentang nama host (hostname) dan juga nama domain (domain name) dalam bentuk database tersebar (distributed database) pada jaringan komputer. Dengan DNS, sebuah alamat IP dapat dipetakan ke dalam hostname dan domain name yang lebih mudah diingat oleh manusia. Adalah lebih mudah bagi kita untuk mengingat nama http://www.google.comdibandingkan dengan 66.249.89.99. DNS ditemukan oleh Paul Mockapertis pada tahun 1983.Ada beberapa metode untuk membuat server DNS, namun dalam tutorial ini akan dijelaskan cara membuat server DNS menggunakan BIND karena aplikasi BIND merupakan aplikasi terpopuler dalam membuat server pada saat ini dan dengan asumsi bahwa paket BIND sudah ada di dalam sistem.

II. Istilah-istilah Pada DNS

• RR atau Resource Records adalah kumpulan sumber informasi yang berhubungan dengan nama-nama domain.
• Namespace adalah struktur dari seluruh DNS yang berbentuk pohon terbalik
• Nameserver adalah program-program yang menyimpan informasi tentang namespace domain.
• TLD or Top-Level Domain adalah level domain paling atas dibawah root (“.”). Contoh dari TLD adalah .com, .net, .org, dan sebagainya.
• Delegation atau delegasi adalah memberikan sbuah tanggung jawab kepada sebuah subdomain untuk mengatur dirinya sendiri.
 Registry adalah sebuah organisasi yang bertanggung jawab untuk menjaga file-file data di TLD dan mendelegasikannya ke setiap subdomain dari TLD itu. Contoh Verisign untuk mengelola TLD .com dan .net.
• Registrar adalah sebuah organisasi yang bertindak sebagai antar muka (interface) antara pelanggan dan registry atau lebih dikenal dengan nama ISP. Contohnya idwebhost.
• Registration adalah proses dimana pelanggan memberitahukan ke sebuah registrar untuk mendelegasikan sebuah subdomain kepadanya.
• Zone atau zona adalah sebuah daerah yang mencakup sebuah domain utuh atau hanya sebagian saja.

III. BIND

BIND singkatan dari Berkeley Internet Name Domain yang ditulis oleh Kevin Dunlap untuk BSD UNIX 4.3 Berkeley. Pada umumnya, setiap distro linux mempunyai paket BIND, tetapi jika kita tidak menemukan paket BIND dalam distro linux, kita bisa mendapatkan BIND versi terakhir di sini. Di Centos 5, versi terakhir dari BIND adalah versi 9. Pada paket ini, BIND menyertakan paket chroot untuk meningkatkan keamanan server DNS. ada beberapa file penting di dalam BIND yang harus diperhatikan, yaitu:
a. named.conf –> File konfigurasi utama untuk membuat DNS dan digunakan sebagai referensi untuk menentukan prosedur server DNS
b. named.ca –> Digunakan untuk menangani informasi server DNS root yang diperlukan untuk menginisialisasi cache dari domain server DNS internet yang disediakan oleh layanan registrasi interNIC. Di centos 5, file ini tidak ada sehingga harus di download dari sini (hasil download akan bernama named.root, namun kita akan merubah menjadi named.ca).
c. resolv.conf –> Berisi alamat domain atau alamat IP dari nameserver (biasanya IP ISP)
d. Zona forward –> Memetakan domain name ke alamat IP
e. Zona Reverse –> Memetakan alalamt IP ke domain name

III. CARA KERJA DNS

Untuk memahami bagaimana DNS itu bekerja, lihat gambar berikut ini:

• Misal kita mau mengecek email kita di warnet dan dibrowser kita ketikkan http://mail.yahoo.com.
• Setelah itu PC kita akan mengontak server DNS lokal (Jaringan ISP yang terhubung ke warnet itu) untuk menanyakan alamat IP dari http://mail.yahoo.com. (Panah 1)
• Server DNS lokal akan melihat ke dalam memori cachenya (Panah 2)
• Jika data itu ada di cachenya, server tersebut akan memberikan alamat IP ke browser PC kita (Panah 5). Jika tidak, maka server tersebut mengontak server DNS di atasnya untuk mengetahui alamat IP tersebut.
• Jika domain itu benar-benar ada, maka root DNS akan mendapatkan alamat IP tersebut, kemudian akan dikirimkan ke server DNS lokal kita (Panah 3).
• Server DNS lokal akan mengontak server DNS mail.yahoo.com untuk menanyakan alamat IP-nya, dan server mail.yahoo.com akan mengirimkannya ke server DNS lokal kita (Panah 4).
• Server DNS lokal kita akan memberitahukan alamat IP untuk mail.yahoo.com kepada browser PC kita.
• Kemudian PC kita akan menggunakan alamat IP tersebut untuk mengontak mail.yahoo.com

IV. Persiapan nama domain

Kita akan membuat domain baru untuk server DNS, mail server dan webserver.
Domain name: example.com
DNS server name: ns1.example.com
IP DNS server: 192.168.1.2
Mail server name:mail.example.com
HTTP serever: http://www.example.com

V. Konfigurasi BIND

1. CEK PAKET BIND

Cek paket BIND di sistem kita, apakah sudah ada atau belum dengan cara:
# rpm -qa | grep bind

2. KONFIGURASI RNDC KEY

rndc key digunakan untuk mengendalikan operasi dari server DNS. Asalnya, rndc key sudah tersedia di dalam paket BIND. Kita bisa menggunakan apakah menggunakan yang sudah tersedia atau membuat yang baru. Jika kita ingin membuat RNDC key yang baru, maka berikan perintah:
# cd /var/named/chroot/etc/
# rndc-confgen > rndc.key
Setelah itu lihat file rndc.key dan akan berbentuk seperti ini:

Hapuslah dari baris options sampai selesai dan salin bagian yang tidak dihapus untuk ditaruh di file named.conf.

3. KONFIGURASI NAMED.CONF

Sesudah mengkonfigurasi rndc.key, kita harus memasukkan file rndc.key dan menyalin
Key “rndc.key” {
………………… };
Maka sesudah itu kita harus membuat file named.conf di direktory yang sama dengan cara:
# vi named.conf
dan menambahkan seperti berikut:
// mulai named.conf
    //kita masukkan rndc.key (copy-paste dari rndc.key yang baru dibuat)

key "rndckey" {
…………………………………………
};

// kita asumsikan server kita mempunyai IP 192.168.1.2 yang melayani 192.168.1.0/24
controls {
inet 192.168.1.2 allow { 192.168.1.0/24; } keys { "rndckey"; };
};

options {
directory "/var/named";
pid-file "/var/run/named/named.pid";

/*
* 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;

// so people can't try to guess what version you're running
version "REFUSED";

allow-query {
any; };
};

server 192.168.1.2 {
keys { rndckey; };
};

zone "." IN {
type hint;
file "data/named.ca";
};

// Kita asumsikan dns server kita adalah example.com
zone "example.com" IN {
type master;
file "data/example.com.zone";
allow-update { none; };
};

// Kita asumsikan bahwa zona reverse kita adalah 1.168.192
zone "1.168.192.in-addr.arpa" IN {
type master;
file "data/1.168.192.zone";
};
// end of named.conf

4. KONFIGURASI ZONA FORWARD

Sesudah kita mengkonfigurasi named.conf kita harus membuat forward zone di dengan cara
# vi /var/named/chroot/var/named/data/example.com.zone
dan mengkonfigurasinya seperti ini:
$TTL 38400      ; 10 hours 40 minutes
@                          IN SOA  ns1.example.com. admin.example.com. (
                                                2007020400 ; serial
                                                180        ; refresh (3 minutes)
                                                360        ; retry (6 minutes)
                                                604800     ; expire (1 week)
                                                86400      ; minimum (1 day)
                                                                       )
                                NS     ns1.example.com.
                                A      192.168.1.2
                                MX     10 mail.example.com.
ftp                      IN   CNAME   ns1
mail                     IN   CNAME   ns1
ns1                     IN   A       192.168.1.2
www                   IN   CNAME   ns1
Penjelasan singkat:
TTL (Time to Live) –> Panjang waktu nameserver untuk menyimpan sebuah record. Jika TTL berakhir, nameserver harus membuang data yang tersimpan dan mendapatkan data baru dari nameserver otoritative
SOA (Start of Authority) –> Mengindikasikan otoritas untuk zona ini
IN (Internet Name) –> Digunakan jika menggunakan protokol TCP/IP
ns1.example.com –> Hostname yang bertanggungjawab untuk domain example.com
admin.example.com –> Alamat email administrator
serial –> Nomor serial yang akan bertambah jika data berubah, biasanya ditulis dengan format YYMMDDxx
refresh –> Panjang waktu untuk server secondary untuk mengecek perubahan di server primer
retry –> Panjang waktu untuk server secondary untuk menunggu verifikasi terhadap perubahan di server primer jika server primer tidak memberikan respon ketika refresh
expire –> Panjang waktu untuk secondary server untuk menahan zona file jika server secondary tidak melakukan keadaan refresh
@ –> Bagian ini identik dengan dengan zona yang didefinisikan di named.conf dan bisa digantikan dengan nama DNS (misal: example.com)
NS (Name Server) –> Digunakan untuk mendefinisikan sever hostname DNS dan harus diakhiri dengan tanda titik.
minimum ttl –> Menentukan nilai ttl untuk seluruh record di zona forward
IN NS ns1.example.com –> Mendefinisikan bahwa hostname ns.example.com yang memegang tanggung jawab terhadap domain example.com

IN MX 10 mail.example.com –> M
endefinisikan bahwa hostname mail.example.com yang memegang tanggung jawab sebagai mail server di domain example.com. nomor mewakili prioritas ketika pengiriman surat dan nomor kecil menjadi prioritas utama
ns IN A 192.168.1.2 –> Mengecek bahwa hostname ns.example.com mempunyai alamat IP di 192.168.1.2
mail IN CNAME NS –> Mengecek bahwa hostname ns.example.com mempunyai nama lain (name alias) mx.example.com

5. KONFIGURASI ZONA REVERSE

Sesudah mengkonfigurasi zona forward, kita harus membuat zona reverse di dalam direktori yang sama dan mengkonfigurasinya seperti ini:
 # vi /var/named/chroot/var/named/data/1.168.192.zone
dan mengkonfigurasinya seperti ini:
$TTL 38400      ; 10 hours 40 minutes
@                          IN SOA  ns1.example.com. admin.example.com. (
                                                2007020404 ; serial
                                                180        ; refresh (3 minutes)
                                                360        ; retry (6 minutes)
                                                604800     ; expire (1 week)
                                                86400      ; minimum (1 day)
                                                                       )
                                    NS     ns1.example.com.
2                              IN PTR    arfie.example.com
penjelasan singkat:
2 IN PTR arfie.example.com –> mengecek bahwa hostname arief.example.com mempunyai alamat IP di 192.168.1.2
sisanya sama dengan zona forward

6. KONFIGURASI RESOLVE.CONF

Kita harus mengkonfigurasi file resolve.conf di /etc/resolv.conf dan mengkonfigurasinya seperti ini:
nameserver 192.168.1.2

7. MENAMBAHKAN NAMED.CA

Setelah mendownload named.root, maka ubahlah namanya menjadi named.ca dengan cara
# mv named.root named.ca
lalu pindahkan file ini ke /var/named/chroot/var/named/data
# mv named.ca /var/named/chroot/var/named/data

8. MENYALAKAN SERVER DNS

Sesudah mengkonfigurasi server DNS, kita harus mengecek apakah server DNS kita sudah bekerja atau belum. Gunakan perintah ini:
# service named start

9. MENGECEK SERVER DNS

Gunakan nslookup atau dig untuk mengecek server DNS
# nslookup example.com

# dig example.com

VI. Troubleshooting

Mungkin apabila kita pertama kali membuat server DNS, akan banyak error yang terjadi. Biasanya, error akan langsung muncul setelah kita mencoba menyalakan DNS. Tapi, terkadang error itu tidak muncul dan DNS kita tidak bekerja. Untuk itu, lihatlah di file /var/log/messages sehingga kita bisa mengidentifikasi error apa dan bagaimana cara menghilangkan error itu. Di bawah ini ada beberapa solusi untuk menghilangkan error-error yang terjadi ketika membuat server DNS:

1. FILE TIDAK ADA

Error:
xxxxxxxxxx: file not found

Solusi:
Kita memasukkan zona forward atau reverse ke direktory yang salah yang tidak sama dengan parameter yang ada di file named.conf atau bisa juga kita salah dalam membuat nama zona forward atau reverse yang tidak sama dengan parameter yang ada di file named.conf. Maka dari itu, pastikan bahwa nama file baik itu zona forward maupun zona reverse sesuai dengan yang ada di file named.conf. Dan juga pastikan bahwa, file-file tersebut sesuai dengan apa yang ada di file named.conf.

2. NON EXISTENT DOMAIN

Error:
*** xxx can’t find xxx: Non-existent domain

Solusi:
Cek di zona reverse apakah kita sudah memberi pointer kepada file itu. Jika belum, buatlah pointer seperti pada bagian diatas (Konfigurasi Zona Reverse).

3. REFUSED

Error:
** server can’t find ****: REFUSED

Solusi:
Ganti IP DNS di /etc/resolv.conf

Jumat, 14 Maret 2014

Cara Mengunakan SSH di Android OS

SSH Android, Kamu yang sering menggunakan SSH di PC dan senang nenggunakan, kemudian berfikir bagainana kalau SSH Android , SSH di Handphone , Tablet Android atau Gadget lain yang kebih kecil dari PC , SSH untuk Android OS ini bisa berfungsi di Gadget apapun, yang penting Menggunakan Sistem Operasi Andoid. Bagi kamu yang ingin menggunakan SSH di Gadget kamu, ikuti langkah-langkah berikut ini.

Kamu Membutuhkan:
  1. Aplikasi Connectbot
  2. Aplikasi Proxydroid 
  3. Akun SSH

Kamu bisa menemukan Aplikasi Connectbot di Google Play, atau dengan mengunjungi situs penyedia aplikasi Android, begitu juga dengan Proxydroid untuk menggunakan SSH di Android OS, kemudian untuk Akun SSH kalau kamu tidak punya sendiri, bisa mencari di situs penyedia SSH Gratis maupun Premium, di Forum, Grup, atau Blog dengan mencari di Mesin Pencari untuk membantu menemukan sesuai dengan Server yang kamu inginkan yang bisa memberi kecepatan bagus. SSH for Android , mulai?

Pertama, Buka Aplikasi ConnectBot, aplikasi ini berfungsi sebagai Client SSH yang berjalan di Sistem Operasi Android, jika di Windows ada Bitvise untuk Client SSH, maka di Android ada Connectbot. Nah, setelah kamu buka, disana terdapat opsi , pilih ”ssh” kemudian isi dengan format ”username@hostname:port” / ”usernameSSH@proxySSH:port” sesuai akun SSH yang kamu miliki, ex:serjp@147.532.651.220:1081 . Jika sudah tekan Enter.

Kemudian akan muncul kotak formulir untuk mengisi isi Password, isikan sesuai akun SSH kamu . Jika sudah Connect, berarti kamu sudah berhasil login dengan akun SSH kamu. Selanjutnya klik menu>Port Forwards>menu>add Port, isikan Internal web server dengan ”127.0.0.1” , Dinamic SHOCK5 dan isi Port dengan ”3128” kemudian Save. Sudah, dibagian Connectbot sudah berhasil terkoneksi, akun SSH sudah terkoneksi di Android 

Sekarang buka Proxydroid, Proxydroid berfungsi seperti Proxifier di Windows, bila di Android OS ya Proxydroid ini. Setelah di buka, isi Host seperti di Internel web server di Connectbot tadi , yaitu ”127.0.0.1” kemudian Port juga sama dengan Port di Connectbot, yaitu 3128 pilih SHOCK5 dan Centang ”Global Proxy” kemudianConnectkan. Maka kamu telah berhasil 100% memasangkan SSH Android OS.
Tampilan Proxydroid

Itu tadi Tutorial tentang Cara menggunakan SSH di Android, sekarang kamu bisa menikmati akun SSH kamu di Gadget Android OS kamu, semoga Tutorial SSH Android ini mudah di mengerti dan dapat di praktekkan. Kami membuka pertanyaan yang bisa kamu tuliakan di Komentar. Demikian, Semoga bermanfaat!

Rabu, 05 Maret 2014

Cara Menggunakan SSH tunneling dengan Bitvise

Teman teman pasti tau yah, cara memakai proxy untuk membuka website yang di blok sama admin, ataupun oleh ISP masing masing, banyak cara untuk ini, salah satu favorite saya ialah dengan memakai program Putty, tentunya teman teman pastinya tidak asing dengan perangkat lunak yang bernama Putty ini :D
Ok yah, ngga perlu dibahas tentang apa itu putty yah, langsung ajah praktek cara memakai putty ini untuk dijadiin proxy dengan memamfaatkan fasilitas Tunnel nya putty.
Yang anda perlukan:
  1. Akun untuk kita login ke shell ( biasanya sih SSH ajah enak :p ), cari sendiri yah, mau beli atau nyolong juga boleh ( bagi yang biasa nyolong ) atau nodong ama teman2. hehehe
  2. Program Putty.exe. yang belum punya silahkan download link ada di akhir artikel.
Langkah langkahnya:
Setelah mendapatkan akun login untuk SSH, buka putty.exe kalian yah.
Masukkan ip dan port sesuai dengan akun yang kita punya.
Sekarang kita menuju ke settingan berikut: Klik Connections-SSH-tunnels, isikan di kotak “Source portnya” port yang akan kita pakai, disini saya pakai port no: 3128. kemudian “Destinations” pilih mode “Auto” dan “Dynamic” ( lih, gambar ). kemudian klik tombol “Add”.
Setelah itu, klik tombol “Open” untuk login ke shell kita seperti biasanya kita memakai putty, seperti waktu kita mau membuat psybnc, bot eggdrop dll deh, atau settingan server kita.
Nah, proxy kita sudah siap nih, tinggal kita ubah settingan di mozilla firefox kita masing2. jika kita membuka command prompt dan mengetikkan perintah: netstat -na, maka akan keliatan ip proxy dan port yang kita buat tadi.
Oke, sekarang kita buka mozilla firefox dan masukkan ip 127.0.0.1 dan port yang kita buat tadi ialah : 3128, Klik “Tools” – “Options” – “Network” – “Setting”.
Nah, sekarang kita buka deh website yang kena blok atau situs apa saja sesuai dengan selera masing masing yah, untuk mengetahui ip yang kita pakai ini, dapat lah kita buka situs: http://checkdomain.com.

Cara memakai putty sebagai proxy memakai ssh tunnel

Teman teman pasti tau yah, cara memakai proxy untuk membuka website yang di blok sama admin, ataupun oleh ISP masing masing, banyak cara untuk ini, salah satu favorite saya ialah dengan memakai program Putty, tentunya teman teman pastinya tidak asing dengan perangkat lunak yang bernama Putty ini :D
Ok yah, ngga perlu dibahas tentang apa itu putty yah, langsung ajah praktek cara memakai putty ini untuk dijadiin proxy dengan memamfaatkan fasilitas Tunnel nya putty.
Yang anda perlukan:
  1. Akun untuk kita login ke shell ( biasanya sih SSH ajah enak :p ), cari sendiri yah, mau beli atau nyolong juga boleh ( bagi yang biasa nyolong ) atau nodong ama teman2. hehehe
  2. Program Putty.exe. yang belum punya silahkan download link ada di akhir artikel.
Langkah langkahnya:
Setelah mendapatkan akun login untuk SSH, buka putty.exe kalian yah.
Masukkan ip dan port sesuai dengan akun yang kita punya.
Sekarang kita menuju ke settingan berikut: Klik Connections-SSH-tunnels, isikan di kotak “Source portnya” port yang akan kita pakai, disini saya pakai port no: 3128. kemudian “Destinations” pilih mode “Auto” dan “Dynamic” ( lih, gambar ). kemudian klik tombol “Add”.
Setelah itu, klik tombol “Open” untuk login ke shell kita seperti biasanya kita memakai putty, seperti waktu kita mau membuat psybnc, bot eggdrop dll deh, atau settingan server kita.
Nah, proxy kita sudah siap nih, tinggal kita ubah settingan di mozilla firefox kita masing2. jika kita membuka command prompt dan mengetikkan perintah: netstat -na, maka akan keliatan ip proxy dan port yang kita buat tadi.
Oke, sekarang kita buka mozilla firefox dan masukkan ip 127.0.0.1 dan port yang kita buat tadi ialah : 3128, Klik “Tools” – “Options” – “Network” – “Setting”.
Nah, sekarang kita buka deh website yang kena blok atau situs apa saja sesuai dengan selera masing masing yah, untuk mengetahui ip yang kita pakai ini, dapat lah kita buka situs: http://checkdomain.com.

Kamis, 13 Februari 2014

DNS Server

Pada tutorial kali ini saya akan membuat DNS Server yang lokal sehingga tidak bisa diakses dari luar.
langkah pertama kita mengecek hostname terlebih dahulu :
# hostname
DNS.arc.itb.ac.id
untuk merubah kita bisa membuka file rc.conf dan merubah hostname nya :
# ee /etc/rc.conf
disini adalah contoh dari file rc.conf

hostname="DNS"
sshd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
# -- sysinstall generated deltas -- # Wed Feb 12 03:54:34 2014
ifconfig_em0="DHCP"
hostname="DNS.arc.itb.ac.id"

disini kita menggunakan IP 167.205.3.70 sebagai DNS server nya, saat ini saya menggunakan DHCP
setelah selesai restart server anda
# reboot
setelah server sudah login kembali, langkah selanjutnya adalah memasukkan IP DNS dari ISP ke dalam file resolv.conf :
# ee /etc/resolv.conf
# Generated by resolvconf
#search arc.itb.ac.id
domain DNS.arc.itb.ac.id
nameserver 167.205.3.70
nameserver 167.205.3.1

disini saya memasukka IP DNS server saya kemudian IP DNS server yang saya peroleh dari jaringan ARC ITB
selanjutnya adalah menginstall DNS server itu sendiri, untuk memudahkan dalam menginstall DNS server di freebsd, kita bisa meng-install melalui port yaitu :
# cd /usr/ports/dns/bind99
# make install clean
setelah selesai untuk menjalankan menjalankan service bind kita harus memasukkannya ke dalam fie rc.conf dengan cara :
# vi /etc/rc.conf
tambahkan named_enable=”YES” sehingga file rc.conf nya menjadi :
hostname="DNS"
sshd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
# -- sysinstall generated deltas -- # Wed Feb 12 03:54:34 2014
ifconfig_em0="DHCP"
hostname="DNS.arc.itb.ac.id"
named_enable="YES"
setelah itu simpan file rc.conf tersebut dan reboot server anda.
# reboot
sesudah masuk ke dalam freebsd lagi dan named sudah berjalan, maka kita harus mengedit file named.conf :
# ee /etc/namedb/named.conf
bagian – bagian yang harus kita rubah di file named.conf adalah :
// If named is being used only as a local resolver, this is a safe default.
// For named to be accessible to the network, comment this option, specify
// the proper IP address, or delete this option.
        listen-on       { 167.205.3.70; };
listen-on kita rubah ke IP DNS server kita.
kita juga harus mengubah bagian – bagian di bawah ini untuk tidak menjadi aktif, dam hal ini kita membuat settingan sendiri :
/* An example dynamic zone
#key “exampleorgkey” {
#       algorithm hmac-md5;
#       secret “sf87HJqjkqh8ac87a02lla==”;
#};
#zone “example.org” {
#       type master;
#       allow-update {
#               key “exampleorgkey”;
#       };
#       file “dynamic/example.org”;
#};
*/
/* Example of a slave reverse zone
#zone “1.168.192.in-addr.arpa” {
#       type slave;
#       file “slave/1.168.192.in-addr.arpa”;
#       masters {
#               192.168.1.1;
#       };
#};
*/
setelah kita menonaktifkan script-script tersebut, maka kita perlu mengaktifkan script yang kita buat :
zone "DNS.arc.itb.ac.id" {
        type master;
        allow-update {
                key "rndc-key";
        };
        file "/etc/namedb/master/DNS.db";
};
penjelasan script diatas adalah zone yaitu domain yang akan kita buat, type master adalah tipe dari dns tersebut yaitu sebagai primary dns dan file master/DNS.db adalah file setting zone untuk DNS.arc.itb.ac.id dengan nama file DNS.db dan diletakkan di /etc/namedb/master.
setelah itu buat file reverse zone nya di bawahnya :
zone "70.3.205.167.in-addr.arpa" {
        type master;
        file "etc/namedb/master/70.205.167.in-addr.arpa";
};

setelah menambahkan reverse zone kita juga perlu mendefinisikan rndc key nya dengan menambahkan di bawahnya :
include “/etc/namedb/rndc.key”;
Unuk rndc key sendiri berada di /etc/namedb/rndc.key , namun kita tidak perlu membuat script rndc key di file named.conf cukup di file rndc.key saja
sehingga secara keseluruhan file /etc/namedb/named.conf mempunyai tambahan :
zone "DNS.arc.itb.ac.id" {
        type master;
        allow-update {
                key "rndc-key";
        };
        file "/etc/namedb/master/DNS.db";
};

zone "70.3.205.167.in-addr.arpa" {
        type master;
        file "etc/namedb/master/70.205.167.in-addr.arpa";
};

include "/etc/namedb/rndc.key";

setelah selesai kita perlu membuat file contoh.com di /etc/namedb/master dengan cara:
# ee /etc/namedb/master/DNS.db
=
$TTL 2592000
$ORIGIN DNS.arc.itb.ac.id.
@       IN      SOA     DNS.arc.ITB.ac.id.  admin.arc.itb.ac.id. (
                                        2014020501
                                        1h
                                        15m
                                        20d
                                        1h )
@       IN      NS      DNS.arc.ITB.ac.id.
        IN      NS      ns2.itb.ac.id.
        IN      NS      ns3.itb.ac.id.
        IN      MX 10   arc.itb.ac.id.
        IN      MX 100  mx2.itb.ac.id.
        IN      A       167.205.3.3
        IN      AAAA    2403:8000:1:1880::3

$ORIGIN arc.ITB.ac.id.
file "/etc/namedb/master/DNS.db", 18 lines
$TTL 2592000
$ORIGIN DNS.arc.itb.ac.id.
@       IN      SOA     DNS.arc.ITB.ac.id.  admin.arc.itb.ac.id. (
                                        2014020501
                                        1h
                                        15m
                                        20d
                                        1h )
@       IN      NS      DNS.arc.ITB.ac.id.
        IN      NS      ns2.itb.ac.id.
        IN      NS      ns3.itb.ac.id.
        IN      MX 10   arc.itb.ac.id.
        IN      MX 100  mx2.itb.ac.id.
        IN      A       167.205.3.3
        IN      AAAA    2403:8000:1:1880::3

$ORIGIN arc.ITB.ac.id.
wahyu           A       167.205.3.13

setelah itu kita membuat file reverse zone nya dengan nama 70.3.205.167.in-addr.arpa di direktori /etc/namedb/master :
sesudah file telah di restart konfigurasi DNS server / named anda :
# service named restart
Stopping named.
Waiting for PIDS: 698.
Starting named.

setelah semua selesai dilakukan maka langkah selanjutnya adalah mengetest DNS server anda dengan perintah DIG :
# dig DNS.arc.itb.ac.id
; <<>> DiG 9.8.4-P2 <<>> DNS.arc.itb.ac.id
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43736
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 4

;; QUESTION SECTION:
;DNS.arc.itb.ac.id.             IN      A

;; ANSWER SECTION:
DNS.arc.itb.ac.id.      2592000 IN      A       167.205.3.3

;; AUTHORITY SECTION:
DNS.arc.itb.ac.id.      2592000 IN      NS      DNS.arc.itb.ac.id.
DNS.arc.itb.ac.id.      2592000 IN      NS      ns2.itb.ac.id.
DNS.arc.itb.ac.id.      2592000 IN      NS      ns3.itb.ac.id.

;; ADDITIONAL SECTION:
DNS.arc.itb.ac.id.      2592000 IN      AAAA    2403:8000:1:1880::3
ns2.itb.ac.id.          3528    IN      A       167.205.22.123
ns3.itb.ac.id.          3528    IN      A       167.205.30.114
ns3.itb.ac.id.          3528    IN      AAAA    2403:8000:30:112::114

;; Query time: 0 msec
;; SERVER: 167.205.3.70#53(167.205.3.70)
;; WHEN: Fri Feb 14 01:56:12 2014
;; MSG SIZE  rcvd: 189

disini bisa kita lihat mesin menjawab dengan benar
kita juga bisa cek dengan 

# nslookup DNS.arc.itb.ac.id

Server:         167.205.3.70
Address:        167.205.3.70#53

Name:   DNS.arc.itb.ac.id
Address: 167.205.3.3

sekian, terima kasih…….