Selasa, 27 September 2011

Membuat DNS Server Lokal Linux

 Membuat DNS Server Lokal

akhirnya jalan juga DNS lokal nya..seharian nyari di mbah ga nemu, akhirnya kilik2 dikit jadi dah..lg pake freeBSD, tapi konfigurasinya bisa koq di linux lainnya, cuma beda tempat aja..

konfigurasi networknya :

Inet ---- Firewall ------ DNS Server ----- DNS Lokal ------- Client

langsung aja biar nda lupa, selagi masih inget..

konfigurasi IP gw :

localhost# ifconfig
em0: flags=8843 mtu 1500
        options=b
        inet 192.168.1.253 netmask 0xffffff00 broadcast 192.168.1.255
        ether 00:04:23:b3:8a:94
        media: Ethernet autoselect (1000baseTX )
        status: active

xl0: flags=8843 mtu 1500
        options=8
        inet 172.16.1.6 netmask 0xffffffe0 broadcast 172.16.1.31
        ether 00:60:08:3e:bb:61
        media: Ethernet autoselect (100baseTX )
        status: active
 
yang mau di jadiin DNS lokal adalah IP 172.16.1.6
login dulu menggunakan root 
  localhost$ su -
  password :
 localhost#  nano /etc/rc.conf
 named_enable="YES"  <<---tambahkan ini agar service dns servernya berjalan setiap restart

 
edit di /etc/resolv.conf  ditambahi nameserver (iplocal yang mo di  jadiin dns )

localhost# nano /etc/resolv.conf
 domain  testing.com
nameserver      172.16.1.6

di /etc/host.conf ~ dibalik jadi 1.dns 2.hosts  jgn lupa backup dulu yak..
localhost# nano /etc/host.conf
#hosts       <<---remark aja lah
dns
hosts

konfigurasi named.conf tambahkan zona baru
# cd /etc/namedb/
# cp named.conf  named.conf.old
# vi named.conf


/etc/namedb/named.conf
options {
directory "/etc/namedb";
pid-file
"/var/run/named/pid";
dump-file "/var/dump/named_dump.db";
statistics-file "/var/stats/named.stats";
// listen-on { 127.0.0.1; };
// listen-on-v6 { ::1; };
/*
forwarders {
          127.0.0.1;

};
*/
};
zone "." {
               type hint;
               file "named.root";
};
zone "0.0.127.IN-ADDR.ARPA" {
               type master;
               file "master/localhost.rev";
};
// RFC 3152
zone
"1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6
.ARPA"
{
               type master;
               file "master/localhost-v6.rev";
};
// RFC 1886 -- deprecated
zone
"1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6
.INT" {
              type master;
              file "master/localhost-v6.rev";
};
zone "testing.com" {
              type master;
              file "master/testing.zone";
};
zone "16.172.in-addr.arpa" {
                  type master;
                  file "master/testing.rev";
};



bangkitkan file localhost.rev dengan menjalankan make-localhost. Kemudian buat file
eone.rev
# sh make-localhost
# cd master
# cp localhost.rev testing.rev
# vi testing.rev


edit testing.rev , Serial disesuaikan saja dengan ditambahkan waktu setempat cth : 20110916 tambahkan menjadi 2011091621  <<-- 21  jam 9 malem nih...

/etc/namedb/master/testing.rev
$TTL 3600
                                  @ IN SOA testing.com. root.testing.com (
                                                             2011091621 ; Serial
                                                             3600 ; Refresh
                                                             900 ; Retry
                                                             3600000 ; Expire
                                                             3600 ) ; Minimum
                    IN                 NS               testing.com

16.1             IN                 PTR             ns3.
100.1           IN                 PTR             oprek.testing.com  
101.1           IN                 PTR             setan.testing.com

Buat file testing.zone
# cp testing.rev testing.zone
# vi testing.zone


/etc/namedb/master/testing.zone
$TTL 3600
                                   @ IN SOA testing.com. root.testing.com. (
                                                               2011091621      ; Serial
                                                               3600    ; Refresh
                                                               900     ; Retry
                                                              3600000 ; Expire
                                                              3600 )  ; Minimum
                IN             NS                        ns3.testing.com.

ns3           IN              A                         172.16.1.6
testing      IN          CNAME                   ns3


; Lokal Server Lainnya
oprek       IN               A                         192.168.1.100  <<-- nama server lainnya
setan         IN              A                          192.168.1.101  <<--nama server lainnya



bangkitkan rndc.conf

# rndc-confgen > rndc.conf

/etc/namedb/rndc.conf
key "rndc-key" {
algorithm hmac-md5;
secret "l2wc2DlvXJk/ZtB0N1P3wg==";
};
options {
default-key "rndc-key";
default-server 127.0.0.1;
default-port 953;
};

# End of rndc.conf
# Use with the following in named.conf, adjusting the allow list as
needed:
# key "rndc-key" {
# algorithm hmac-md5;
# secret "l2wc2DlvXJk/ZtB0N1P3wg==";
# };

#
# controls {
# inet 127.0.0.1 port 953
#
allow { 127.0.0.1; } keys { "rndc-key"; };
# };
# End of named.conf


dalam rndc.conf terdapat konfigurasi untuk file named.conf yang tidak diaktifkan (#
comment) tambahkan pada named.conf


# cat rndc.conf >> named.conf
# vi named.conf


/etc/namedb/named.conf
options {
directory "/etc/namedb";
pid-file
"/var/run/named/pid";
dump-file "/var/dump/named_dump.db";
statistics-file "/var/stats/named.stats";
// listen-on { 127.0.0.1; };
// listen-on-v6 { ::1; };
/*
forwarders {
                         127.0.0.1;
};
*/
};
zone "." {
               type hint;
               file "named.root";
};
zone "0.0.127.IN-ADDR.ARPA" {
                 type master;
                 file "master/localhost.rev";
};
// RFC 3152
zone
"1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6
.ARPA" {
               type master;
               file "master/localhost-v6.rev";
};
// RFC 1886 -- deprecated
zone
"1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6
.INT" {
                type master;

                 file "master/localhost-v6.rev";
};
zone "eone.org" {
                           type master;
                           file "master/testing.zone";
};
zone "16.172.in-addr.arpa" {
                          type master;
                          file "master/testing.rev";
};
key "rndc-key" {
                        algorithm hmac-md5;
                       secret "l2wc2DlvXJk/ZtB0N1P3wg==";
};
controls {
                inet 127.0.0.1 port 953
                allow { 127.0.0.1; } keys { "rndc-key"; };
};
# End of named.conf


konfigurasi selesai saatnya menjalankan DNS

# /etc/rc.d/named start
Starting named                        OK


Ujicoba, jika output sama dengan dibawah ini maka DNS berhasil.


# nslookup
> ns
Server:
172.16.1.6
Address:
172.16.1.6#53
Name: ns3.testing.com
Address: 172.16.1.6
> 172.16.1.6
Server:
172.16.1.6
Address:
172.16.1.6#536.1.16.172.in-addr.arpa name = ns3.






atau coba dengan dig
localhost# dig setan.testing.com

; <<>> DiG 9.3.4 <<>> setan.testing.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38351
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;setan.testing.com.       IN      A

;; ANSWER SECTION:
setan.testing.com. 3600   IN      A       192.168.1.101

;; AUTHORITY SECTION:
testing.com.         3600    IN      NS      ns3.testing.com.

;; ADDITIONAL SECTION:
ns3.testing.com.     3600    IN      A       172.16.1.6

;; Query time: 0 msec
;; SERVER: 172.16.1.6#53(172.16.1.6)
;; WHEN: Tue Sep 27 17:16:55 2011
;; MSG SIZE  rcvd: 91



segitu aja...terima kasih untuk mbah google, 
walau nemunya banyak yg ngasal trus kebanyakan kopas..yg penting dah jalan..hehehe..
InsyaAllah klo ada yg mo nanya bila inget akan di jawab yach...

Thanks

Senin, 19 September 2011

RedHat / CentOS Install and Configure Cacti Network Graphing Tool

Cacti is a network graphing tool similar to MRTG. How do I install and configure common options to collect SNMP data and various other data (such as system load, network link status, hard disk space, logged in users etc) into an RRD?

From the official project site:
Cacti is a complete frontend to RRDTool, it stores all of the necessary information to create graphs and populate them with data in a MySQL database. The frontend is completely PHP driven. Along with being able to maintain Graphs, Data Sources, and Round Robin Archives in a database, cacti handles the data gathering. There is also SNMP support for those used to creating traffic graphs with MRTG.

Required software(s)

You need to install the following software on RHEL / Fedora / CentOS Linux:
  1. MySQL Server : Store cacti data.
  2. NET-SNMP server - SNMP (Simple Network Management Protocol) is a protocol used for network management.
  3. PHP with net-snmp module - Access SNMP data using PHP.
  4. Apache / lighttpd / ngnix webserver : Web server to display graphs created with PHP and RRDTOOL.

Install the software

First, login as root user and type the following command to install mysql, apache and php:
# yum install mysql-server mysql php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli php-snmp php-pear-Net-SMTP php-mysql httpd

Configure MySQL server

First, set root password:
# mysqladmin -u root password NEWPASSWORD

Create cacti MySQL database

Create a database called cacti, enter:
# mysql -u root -p -e 'create database cacti'
Create a user called cacti with a password called zYn95ph43zYtq, enter:
# mysql -u root -p
mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'zYn95ph43zYtq';
mysql> FLUSH privileges;
mysql> \q

Install snmpd

Type the following command to install net-snmpd
# yum install net-snmp-utils php-snmp net-snmp-libs
Configure snmpd, open /etc/snmp/snmpd.conf
# vi /etc/snmp/snmpd.conf
Append / modify it as follows (see snmpd.conf man page for details):
com2sec local     localhost           public
group MyRWGroup v1         local
group MyRWGroup v2c        local
group MyRWGroup usm        local
view all    included  .1                               80
access MyRWGroup ""      any       noauth    exact  all    all    none
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root  (configure /etc/snmp/snmp.local.conf)
pass .1.3.6.1.4.1.4413.4.1 /usr/bin/ucd5820stat
Save and close the file. Turn on snmpd service:
# /etc/init.d/snmpd start
# chkconfig snmpd on

Make sure you are getting information from snmpd:
# snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex
Sample ouptut:
IP-MIB::ipAdEntIfIndex.10.10.29.68 = INTEGER: 2
IP-MIB::ipAdEntIfIndex.67.yy.zz.eee = INTEGER: 3
IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1

Install cacti

First, make sure EPEL repo is enabled. Type the following command to install cacti:
# yum install cacti

Install cacti tables

Type the following command to find out cacti.sql path:
# rpm -ql cacti | grep cacti.sql
Sample output:
/usr/share/doc/cacti-0.8.7d/cacti.sql
Type the following command to install cacti tables (you need to type the cacti user password):
# mysql -u cacti -p cacti < /usr/share/doc/cacti-0.8.7d/cacti.sql

Configure cacti

Open /etc/cacti/db.php file, enter:
# vi /etc/cacti/db.php
Make changes as follows:
 
/* make sure these values refect your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "zYn95ph43zYtq";
$database_port = "3306";
 
Save and close the file.

Configure httpd

Open /etc/httpd/conf.d/cacti.conf file, enter:
# vi /etc/httpd/conf.d/cacti.conf
You need to update allow from line. Either set to ALL or your LAN subnet to allow access to cacti:
 
#
# Cacti: An rrd based graphing tool
#
Alias /cacti    /usr/share/cacti
 

        Order Deny,Allow
        Deny from all
        Allow from 10.0.0.0/8
 
Another option is create /usr/share/cacti/.htaccess file and password protect the directory. Finally, restart httpd:
# service httpd restart

Setup cacti cronjob

Open /etc/cron.d/cacti file, enter:
# vi /etc/cron.d/cacti
Uncomment the line:
*/5 * * * *     cacti   /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
Save and close the file.

Run cacti installer

Now cacti is ready to install. Fire a webbrowser and type the url:
http://your.example.com/cacti/
OR
http://your.server.ip.address/cacti/
Just follow on screen instructions. The default username and password for cacti is admin / admin. Upon first login, you will be force to change the default password.

How do I configure SNMP data collection?

SNMP can be used to monitor server traffic. Once installed login to cacti.
=> Click on Devices
=> Select Localhost
=> Make sure SNMP options are selected as follows:
Fig.01: SNMP configuration
Fig.01: SNMP configuration
Finally, click on Save button.

How do I create SNMP graphs?

Click on "Create Graphs for this Host" link on top right side.
Select SNMP - Interface Statistics
Select a graph type (such as In/Out bytes with total bandwidth)
Finally, click on Create button.

How do I view graphs?

To view graphs click on Graphs tab. Here is sample graph from one my own box:
Fig.02: Cacti in Action - Memory, CPU and Network Usage
Fig.02: Cacti in Action - Memory, CPU and Network Usage

(Fig.02: Cacti in action)
Fig.03: Cacti in Action Disk, Load average and User stats
Fig.03: Cacti in Action Disk, Load average and User stats

Kamis, 21 Juli 2011

Kumpulan Album Sami Yusuf

Iseng-iseng nih karena seneng banget dengerin lagunya Sami Yusuf, bikin hati dan pikiran tenang dan tentram..berasa teduh aja gitu..hihihi...


Biografi Sami Yusuf seperti yang saya kutip dari website resminya maupun dari wikipedia, adalah warga kelahiran Tehran, Iran dan besar di Inggris. Sejak kecil Sami Yusuf terlahir dari keluarga musisi Azeri. Kemudian melanjutkan pendidikan di Akademi musik terkemuka di kota London.
untuk lebih detailnya silakan berkunjung ke website Sami Yusuf di SamiYusuf Official Web

Kemampuan menciptakan lagu plus memiliki suara yang merdu membuat Sami Yusuf benar-benar bersinar dalam dunia musikal terutama untuk jenis musik Islami. Lagu yang ada dalam Album-album Sami Yusuf didominasi dengan nuansa islam, perdamaian, cinta, juga toleransi antar umat beragama. Dengan tema lagunya yang bersifat netral tersebut membuat nama Sami Yusuf cukup naik daun di kalangan musisi-musisi Eropa.

Penasaran dengan lagu-lagu yang ada dalam Album Sami Yusuf? berikut saya berikan resensi mengenai album yang telah keluar beserta link yang dapat di download.



Album Terbaru Sami Yusuf yang dikeluarkan tahun 2010 ini makin lebih terasa menyentuh jiwa lewat lirik dan musiknya.

Download Lagu














Album dari Sami Yusuf ini direncanakan keluar pada pertengahan tahun 2008, namun ditunda oleh Awakening Records hingga keluar pada awal Januari 2009. Informasi dari Sami Yusuf pada websitenya menyatakan bahwa album ini berisi kompilasi demo dan sketsa yang dirilis oleh Awekening Records. Menariknya lagi pada album ini juga ditambahkan dua lagu yang diambil pada saat konser di Wembley dan tur di AS yang diselenggarakan oleh Islamic Relief.

Download Lagu





ini merupakan album pertama yg keluar tahun 2003 dari Sami Yusuf. Album ini bermula dari kesadaran Sami untuk menciptakan harmonisasi musik untuk kalangan pemuda muslim berisi tentang tuntunan Nabi Muhammad SAW. Sami Yusuf banyak menghabiskan waktu di studio, melakukan proses recording, mixing, editing hingga mastering bekerja sama dengan Western music industry hingga tercipta sebuah album Al - Muallim.

Download Lagu



Album kedua Al Ummah terlahir atas dasar kesadaran Sami Yusuf untuk memperkenalkan berbagai karya seni Islam yang sudah mulai terlupakan. Seni Islam, baik dalam bentuk kaligrafi, keramik, atau musik semuanya terinspirasi oleh kasih Allah dan keindahan. Dengan menggabungkan seni musik barat dan Islam maka terciptalah Album Al Ummah yang intinya untuk menyelaraskan pandangan tentang Umat Islam dan berbagai keindahan di dalamnya.

Download Lagu





Silakan Mendengarkan lantunan lagu Sami Yusuf..

Indahnya membuat serasa melayangkan jiwa kesurga..hehehe..lebay mode on.. :p


Selasa, 25 Januari 2011

Instalasi Qmail di centos

I. Pendahuluan

qmail merupakan sebuah mail server yang dikembangkan oleh Dr. Dan Bernstein yang mulai ditulis pada Desember 1995. Qmail sangat terkenal dan dapat diandalkan dengan jaminan keamanan yang sangat tinggi, efisien, dan dengan MTA (Mail Transfer Agent) yang sederhana. Qmail dirancang untuk koneksi internet khususnya *NIX. Alasan mengapa menggunakan qmail adalah:
– Secure (aman)
Pengiriman email merupakan suatu hal yang berbahaya untuk pemakai apabila layanan yang diberikan masih bisa di lubangi seseorang. Saat ini, kebutuhan akan keamanan sudah tidak bisa di tawar-tawar lagi dan qmail menjadi salah satu jawban dari persoalan tersebut
– Dapat diandalkan
Qmail menjamin pesan yang masuk dalam mail server tidak akan hilang termasuk saat lampu mati karena qmial menggunakan format maildir. Format ini tidak akan hancur atau rusak apabila system mengalami crash saat pengiriman. Tidak hanya itu saja, user lain dapat mengirimkan email ke user tersebut.
– Efisien
Di komputer Pentium, qmail dapat dengan mudah memproses pesan ratusan ribu tiap harinya, baik mengirim atau pun menerima.

Dalam tutorial ini, penulis akan menjelaskan tentang bagaimana cara menginstal qmail di Centos 5.4 dengan menggunakan domain latihanlinux.co.cc dan IP 192.168.0.248. Penulis menggunakan system qmailrocks karena penulis merasa system ini sangat cocok jika diterapkan pada user linux yang ingin menginstal qmail namun juga ingin mengetahui langkah-langkahnya.

II. Langkah-Langkah Penginstalan

A. Instalasi paket Qmailrocks

1. Download Paket qmailrocks
# mkdir /downloads
# cd /downloads
# wget http://www.qmailrocks.org/downloads/qmailrocks.tar.gz
# tar -zxvf qmailrocks.tar.gz

2. Instal qmail
Qmail merupakan inti dari mail serveritu sendiri dan merupakan aplikasi untuk pengiriman email (MTA). Berikut adalah langkah-langkahnya:

# cd /downloads/qmailrocks/scripts/install/
# ./ qmr_install_linux-s1.script
# cd /downloads/qmailrocks/scripts/util/
# ./ qmail_big_patches.script
# cd /usr/src/qmail/qmail-1.03
# make man && make setup check
# ./config-fast latihanlinux.co.cc
# make cert
# chown -R vpopmail:qmail /var/qmail/control/clientcert.pem /var/qmail/control/servercert.pem

3. Install Ucspi-tcp
Ucspi-tcp merupakan aplikasi untuk tcpserver yaitu paket yang digunakan sebagai utility koneksi client server yang menggunakan protocol TCP. Berikut adalah langkah-langkahnya:

# cd /usr/src/qmail/ucspi-tcp-0.88/
# patch < /downloads/qmailrocks/patches/ucspi-tcp-0.88.errno.patch # make && make setup check

4. Install Daemon-tool
Daemon tool merupakan daemon untuk menelola aplikasi-aplikasi pendukung utility yang digunakan oleh system operasi untuk mengatur segala proses yang berjalan seperti qmail dan segala tambahan paket lainnya. Daemontools akan melakukan starting service dan merestart apabila ada service yang mati. Berikut adalah langkah-langkahnya:

# cd /package/admin/daemontools-0.76/src
# patch < /downloads/qmailrocks/patches/daemontools-0.76.errno.patch # cd /package/admin/daemontools-0.76 # package/install

Untuk melihat apakah daemontools berjalan atau tidak, Ceklah dengan perintah:

 # ps aux | grep svscanboot

Jika ada, berarti daemontools sudah berjalan dalam system kita.

B. Instalsi Ezmlm

Ezmlm merupakan program untuk membuat mailing list di qmail. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks/
# tar zxvf ezmlm-0.53-idx-0.41.tar.gz
# cd ezmlm-0.53-idx-0.41
# make && make setup

C. Instalasi AutoResponder

Autoresponder digunakan untuk merespon email yang masuk secara otomatis. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks
# tar zxvf autorespond-2.0.5.tar.gz
# cd autorespond-2.0.5
# make && make install

D. Instalasi VPOPMAIL

Vpopmail merupakan pop3 server, yaitu paket tambahan dari qmail untuk menangani virtual email domain dalam satu mail server. Hal ini untuk memudahkan kita dalam penanganan atau administrasi system yang baik. Vpopmail bisa menggunakan database (dalam hal ini mysql) dan juga bisa tidak.

1. Tidak Menggunakan Database
Opsi dipilih jika kita hanya mempunyai beberapa domain saja (tidak lebih dari 50 domain) dan kita masih termasuk pemula dalam linux. Ini adalah langkah-langkahnya:

# cd /downloads/qmailrocks
# tar zxvf vpopmail-5.4.13.tar.gz
# cd vpopmail-5.4.13
# ./configure --enable-logging=p
# make && make install-strip

2. Menggunakan Database Mysql
Opsi ini dipilih jika kita menghandle lebih dari 50 domain dan kita paham dengan konfigurasi linux dan qmail itu sendiri. Berikut adalah langkah-langkahnya:

# mkdir ~vpopmail/etc
# chown vpopmail:vchkpw ~vpopmail/etc
# echo "localhost|0|vpopmailuser|password|vpopmail" > ~vpopmail/etc/vpopmail.mysql
catatan: Untuk vpopmailuser bisa diganti dengan apa saja dan password diserahkan
kepada masing-masing dari kita
# chown vpopmail:vchkpw ~vpopmail/etc/vpopmail.mysql
# chmod 640 ~vpopmail/etc/vpopmail.mysql
# mysql -u root –p
> CREATE DATABASE vpopmail;
> grant select,insert,update,delete,create,drop ON vpopmail.*
TO vpopmailuser@localhost IDENTIFIED BY 'password';
> quit;

Sekarang, kita akan instalasi program vpopmail dengan cara:

# cd /downloads/qmailrocks
# tar zxvf vpopmail-5.4.13.tar.gz
# cd vpopmail-5.4.13
Langkah selanjutnya adalah:
# ./configure --enable-logging=p --enable-auth-module=mysql --disable-passwd
--enable-clear-passwd --disable-many-domains --enable-auth-logging --enable-sql-logging
--enable-valias --disable-mysql-limits
# make && make install-strip

E. Instalasi vqadmin

Vqadmin merupakan domain manager berbasis web yang digunakan untuk mengelola email, baik penambahan, penghapusan alamat email, penambahan maupun penghapusan mailinglist dan juga penambahan domain. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks
# tar zxvf vqadmin-2.3.6.tar.gz
# cd vqadmin-2.3.6
# ./configure --enable-cgibindir=/var/www/cgi-bin --enable-htmldir=/var/www/html
# make && make install-strip

Rubah di file httpd.conf menjadi seperti berikut:

# vi /etc/httpd/conf/httpd.conf

deny from all
Options ExecCGI
AllowOverride AuthConfig
Order deny,allow

# cd / var/www/cgi-bin /vqadmin
# vi .htaccess
AuthType Basic
AuthUserFile /etc/httpd/conf/.htpasswd
AuthName vQadmin
require valid-user
satisfy any

Disini penulis memberitahukan bahwa file .htpasswd ada di /etc/httpd/conf

# chown apache .htaccess
# chmod 644 .htaccess
# htpasswd –bc /etc/httpd/conf/.htpasswd admin password

Disini, penulis memberikan usernamenya admin dan passwordnya adalah password.

# chmod 644 /etc/httpd/conf/.htpasswd
# service httpd restart

Buka browser lalu ketikkan:

 http://alamat_ip/cgi-bin/vqadmin/vqadmin.cgi
Dan jika tidak ada masalah, akan terlihat gambar:
Masukkan username dan password yang sudah kita buat sebelumnya. Dalam hal ini admin dan password. Tekan tombol OK, dan akan muncul gambar berikut:
Buatlah domain dengan menekan link Add Domain, akan muncul gambar sebagai berikut:
Buatlah nama domain dan passwordnya. Dalam hal ini penulis membuat domain latihanlinux.co.cc.

F. Maildrop

Digunakan untuk memfilter email yang masuk. Program ini digunakan secara bersamaan pada qmailscanner. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks
# tar zxvf maildrop-1.6.3.tar.gz
# cd maildrop-1.6.3
# ./configure --prefix=/usr/local --exec-prefix=/usr/local --enable-maildrop-uid=root --enable-maildrop-gid=vchkpw --enable-maildirquota
# make && make install-strip && make install-man

g. qmailadmin

Qmailadmin merupakan aplikasi berbasis web yang digunakan untuk mengelola user pada tiap domain. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks
# tar zxvf qmailadmin-1.2.9.tar.gz
# cd qmailadmin-1.2.9
# ./configure --enable-cgibindir=/var/www/cgi-bin --enable-htmldir=/var/www/html
# make && make install-strip

Buka browser, lalu ketikkan:

 http://192.168.0.248/cgi-bin/qmailadmin
Akan muncul gambar sebagai berikut:
Masukkan nama domain yang sudah kita buat sebelumnya beserta passwordnya, lalu tekan tombol Login. Maka akan muncul gambar sebagai berikut:
Buatlah user email dengan menekan link New Email Account. Disini, penulis membuat user //
// ]]-->budi@latihanlinux.co.cc // This e-mail address is being protected from spambots, you need JavaScript enabled to view it // .

H. Tahap Akhir qmail

# cd /downloads/qmailrocks/scripts/finalize/linux/
# ./finalize_linux.script
# vi /var/qmail/supervise/qmail-pop3d/run
rubah example.com menjadi latihanlinux.co.cc
# vi /var/qmail/supervise/qmail-smtpd/run
rubah example.com menjadi latihanlinux.co.cc
# qmailctl stop
# echo '127.:allow,RELAYCLIENT=""' >> /etc/tcp.smtp
# qmailctl cdb
# echo
postmaster@latihanlinux.co.cc This e-mail address is being protected from spambots,
you need JavaScript enabled to view it
> /var/qmail/alias/.qmail-root
# echo
postmaster@latihanlinux.co.cc This e-mail address is being protected from spambots,
you need JavaScript enabled to view it
> /var/qmail/alias/.qmail-postmaster
# echo
postmaster@latihanlinux.co.cc This e-mail address is being protected from spambots,
you need JavaScript enabled to view it
> /var/qmail/alias/.qmail-mailer-daemon
# ln -s /var/qmail/alias/.qmail-root /var/qmail/alias/.qmail-anonymous
# chmod 644 /var/qmail/alias/.qmail*

i. Uninstal MTA Lain

Qmail tidak akan bisa berjalan dengan baik jika di dalam system kita mempunyai lebih dari 1 MTA.
a. Uninstall sendmail
# rpm -qa | grep sendmail
sendmail-x.x.x.x
sendmail-doc-x.x.x.x
sendmail-devel-x.x.x.x
sendmail-cf-x.x.x.x
# rpm -e --nodeps sendmail-x.x.x.x
# rpm -e --nodeps sendmail-doc-x.x.x.x
# rpm -e --nodeps sendmail-devel-x.x.x.x
# rpm -e --nodeps sendmail-cf-x.x.x.x

b. Uninstall postfix

# rpm -qa | grep postfix
postfix-x.x-x
# rpm -e --nodeps postfix-x.x-x

Setelah itu, kita membuat link dengan cara:

# ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail

j. Memulai qmail

# cd /downloads/qmailrocks/scripts/util/
# ./qmr_inst_check

Kalau mendapat tulisan Congratulations, your Qmailrocks.org Qmail installation looks good!, berarti sistem kita sudah terinstal qmail dengan baik. Lalu lanjutkan langkah-lanngkah berikut ini:

# qmailctl stop
# qmailctl start
# qmailctl stat
/service/qmail-send: up (pid 29956) 2 seconds
/service/qmail-send/log: up (pid 29960) 2 seconds
/service/qmail-smtpd: up (pid 29963) 2 seconds
/service/qmail-smtpd/log: up (pid 29968) 2 seconds
/service/qmail-pop3d: up (pid 29971) 2 seconds
/service/qmail-pop3d/log: up (pid 29972) 2 seconds
messages in queue: 0
messages in queue but not yet preprocessed: 0

Selanjutnya kita akan mengetes POP3. Tuliskan perintah berikut

 # telnet localhost 110
dan masukkan user yang akan dites dengan menuliskan kata user terlebih dahulu dan masukkan passwordnya dengan menuliskan kata pass terlebih dahulu. Untuk lebih jelasnya perhatikan gambar berikut:
Kemudian kita akan menguji smtp kita dengan menuliskan perintah:
 # telnet localhost 25
tuliskan ehlo localhost kemudian tulis starttls. Jika semua berjalan dengan baik, maka smtp kita sudah berjalan dengan baik dan mempunyai TLS di dalamnya. Untuk lebih jelasnya perhatikan gambar berikut:

k. Instalasi Courier imap

Courier IMAP merupakan program yang membantu pengaksesan IMAP ke Maildir. Maildir merupakan format mail yang dimilki oleh qmail. Namun, sebelum menginstal courier imap, kita harus menginstal courier-authlib. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks/
# tar jxvf courier-authlib-0.55.tar.bz2
# cd courier-authlib-0.55

Kita konfigurasi courier-authlib dengan cara:

# ./configure --prefix=/usr/local --exec-prefix=/usr/local --with-authvchkpw
--without-authldap --without-authmysql --disable-root-check --with-ssl
--with-authchangepwdir=/usr/local/libexec/authlib --with-redhat

Kita compile dengan cara:

# make && make check
# make install-strip && make install-configure

Konfigurasi file rc.local dengan cara:

# vi /etc/rc.local
Tambahkan ke dalam file tersebut:
 /usr/local/sbin/authdaemond start
Setelah selesai, kita bisa menginstal courier imap. Berikut adalah langkah-langkahnya:
# useradd budi
# cd /downloads/qmailrocks/
# tar jxvf courier-imap-4.0.2.tar.bz2
# chown -R budi:wheel courier-imap-4.0.2
# cd /downloads/qmailrocks/courier-imap-4.0.2

Masuk ke user budi:

# su budi
# ./configure --prefix=/usr/local --exec-prefix=/usr/local --with-authvchkpw --without-authldap
--without-authldap --without-authmysql --disable-root-check --with-ssl
--with-authchangepwdir=/usr/local/libexec/authlib --with-redhat
# make && make check
# exit
# make install-strip && make install-configure
# /usr/local/sbin/mkimapdcert
# vi /usr/local/etc/imapd.cnf
rubah example.com menjadi latihanlinux.co.cc
# vi /usr/local/etc/imapd
rubah menjadi IMAPDSTART=YES
# vi /usr/local/etc/imapd-ssl
rubah menjadi IMAPDSSLSTART=YES TLS_CERTFILE=/usr/local/share/imapd.pem
# vi /usr/local/etc/authlib/authdaemonrc
rubah menjadi: authmodulelist="authvchkpw"
# cp /usr/local/libexec/imapd.rc /etc/rc.d/init.d/imap
# cp /usr/local/libexec/imapd-ssl.rc /etc/rc.d/init.d/imaps
# /usr/local/sbin/authdaemond stop
# /usr/local/sbin/authdaemond start
# /etc/rc.d/init.d/imap stop
# /etc/rc.d/init.d/imaps stop
# /etc/rc.d/init.d/imap start
# /etc/rc.d/init.d/imaps start
Kemudian kita uji IMAP kita dengan mengetikkan perintah:
 # telnet localhost 143
tuliskan a login alamat_email password dan untuk keluar tulis a logout. Untuk lebih jelasnya perhatikan gambar berikut:
Langkah selanjutnya adalah menginstal courierpassd. Courierpassd merupakan utility yang digunakan untuk merubah password user email. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks
# tar zxvf courierpassd-1.1.0-RC1.tar.gz
# cd courierpassd-1.1.0-RC1
# ./configure
# make && make install
# cd /etc/xinetd.d
# vi courierpassd
service courierpassd
{
port = 106
socket_type = stream
protocol = tcp
user = root
server = /usr/local/sbin/courierpassd
server_args = -s imap
wait = no
only_from = 127.0.0.1
instances = 4
disable = no
}
# vi /etc/services
Tambahkan skrip berikut di dalam file services
courierpassd 106/tcp #for /etc/xinetd.d/courierpassd
# /etc/rc.d/init.d/xinetd restart

Kita uji apakah courierpassd bisa berjalan dengan baik atau tidak dengan menuliskan perintah:

# telnet localhost 106
lalu masukkan alamat email dengan terlebih dahulu menulis kata user. Setelah itu ketik passwordnya dengan terlebih dahulu mengetik kata pass. Dan terakhir masukkan password yang baru dengan terlebih dahulu mengetikkan kata newpass. Untuk lebih jelasnya, perhatikan gambar berikut:

L. Squirrelmail

Squirrelmail merupakan webmail client yang digunakan untuk mengakses mail server. Pada saat tulisan ini dibuat, versi squirrelmail adalah versi 1.19. Berikut adalah langkah-langkahnya:
# wget squirrelmail
# tar zxvf squirrelmail-1.4.19.tar.gz
# mv squirrelmail-1.4.19 webmail
# cp -r webmail /var/www/html/
# cd webmail
# chown -R apache:apache data
# ./configure
Pilih nomor 2
Nomor 7
Jawab pertanyaan dengan N, login, dan N
Tekan tombol S
Tekan tombol Q

# mkdir -p /var/local/squirrelmail/data/
# mkdir -p /var/local/squirrelmail/attach/
# chown apache:apache /var/local/squirrelmail/data/
# chown apache:apache /var/local/squirrelmail/attach/
# service httpd restart


Buka browser, lalu ketikan:

 http://alamat_ip/webmail
Setelah menuliskan username dan passwordnya, maka seharusnya akan terlihat tampilan sebagai berikut:
Setelah itu cobalah saling mengirim email antar user dan seharusnya email sudah dapat terkirim dengan baik.

III. Instalasi Antivirus Clamav

Clamav merupakan aplikasi untuk mendeteksi email yang masuk apakah mengandung virus atau pun tidak. Disini penulis menginstal clamav dengan menginstalnya melalui yum. Namun sebelum menginstal clamav dengan yum, ikuti langkah-langkah berikut:
# yum -y install yum-priorities
# wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
# rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
# rpm -K rpmforge-release-0.3.6-1.el5.rf.*.rpm
# rpm -i rpmforge-release-0.3.6-1.el5.rf.*.rpm
Kemudian baru kita install clamav dengan cara:
# yum install clamav*
Sesudah selesai clamav diinstal, terlihat sendmail ikut serta diinstal dalam system kita. Maka dari itu remove sendmail dengan cara :
# yum remove sendmail
Kemudian penulis mengkonfigurasi clamav dengan cara:
# vi /etc/clamd.conf
rubah pada file tersebut menjadi:
# Example (Bagian Example diberi tanda pagar)
LogFile /var/log/clamav/clamd.log
LogTime (Jangan diberi tanda pagar)
LogSysLog (Jangan diberi tanda pagar)
User qscand
ScanMail (Jangan diberi tanda pagar)

Kemudian penulis melakukan langkah-langkah berikut:

# useradd -c "Qmail-Scanner Account" -s /bin/false qscand
# chown -R qscand:qscand /var/log/clamav/
# chown -R qscand:qscand /var/run/clamav/
# touch /var/log/clamav/clam-update.log
# chown clamav:clamav /var/log/clamav/clam-update.log

Nyalakan service clamav dengan cara:

# /etc/init.d/clamav
dan seharusnya clamav dapat berjalan dengan baik. Agar clamav dapat mendapatkan update terbaru, gunakan perintah:
 /usr/bin/freshclam -l /var/log/clamav/clam-update.log
Kemudian jadwalkan agar setiap malam (jam 1.26), clamav dapat terupdate secara otomatis:
# crontab -e
25 1 * * * /usr/bin/freshclam --quiet -l /var/log/clamav/freshclam.log

Agar clamav dapat menyala secara otomatis, maka gunakan perintah berikut:

# chkconfig --level 345 on clamd on
Setelah itu, sepengalaman penulis biasanya selesai penginstalan clamav, ketika kita mengirim email, maka email tidak dapat terkirim dengan baik. Maka dari itu gunakan perintah:
# /usr/local/sbin/authdaemond stop
# /usr/local/sbin/authdaemond start
# /etc/rc.d/init.d/imap stop
# /etc/rc.d/init.d/imaps stop
# /etc/rc.d/init.d/imap start
# /etc/rc.d/init.d/imaps start

Maka, seharusnya email dapat terkirim dengan baik.

IV. Instalasi SpamAssassin

Spamassassin merupakan program untuk mendeteksi email yang masuk apakah mengandung spam atau tidak. Penulis menginstal spamassassin dengan cara:
# yum install spamassassin
# groupadd spamd
# useradd -g spamd -s /home/spamd spamd
Kemudian mengkonfigurasi spamassassin sebagai berikut:
# vi /etc/sysconfig/spamassassin
Hapus isi dari file tersebut dan masukkan skrip sebagai berikut:
SPAMDOPTIONS="-x -u spamd -H /home/spamd -d"
# vi /etc/mail/spamassassin/local.cf
Tambahkan skrip dibawah:
required_hits 5

Lalu nyalakan spamassassin dengan cara:

# /etc/init.d/spamassassin start
Ceklah di sistem apakah spamassassin sudah menyala atau belum dengan cara:
# ps aux | grep spamd

Agar spamassassin menyala secara otomatis, maka gunakan perintah berikut:

# chkconfig --level 345 spamassassin on

V. Instalasi QmailScanner

QmailScanner merupakan program tambahan qmail yang digunakan untuk melakukan scanning email yang menggunakan karakteristik tertentu, khususnya digunakan untuk melakukan scanning virus atau proteksi antivirus. Program ini juga digunakan untuk melakukan scanning header atau file attachments. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks
# tar zxvf qmail-scanner-1.25.tgz
# tar zxvf qms-analog-0.4.2.tar.gz
# cd qms-analog-0.4.2
# make all
# cp qmail-scanner-1.25-st-qms-20050219.patch /downloads/qmailrocks/qmail-scanner-1.25/
# cd /downloads/qmailrocks/qmail-scanner-1.25
# patch -p1 <>
Setelah itu kita akan mengkonfigurasi QmailScanner. Ada 2 cara untuk mengkonfigurasi QmailScanner yaitu apakah sistem kita menggunakan setuid atau tidak. Awalnya penulis mengira bahwa sistem penulis menggunakan setuid, maka penulis melakukan hal-hal berikut:
# cd /downloads/qmailrocks/qmail-scanner-1.25
# vi qms-config
Rubah tulisan yourdomain.com dan yang sejenisnya menjadi latihanlinux.co.cc
# chmod 755 qms-config
# ./qms-config
Jawab YES jika ada pertanyaan-pertanyaan. Jika tidak ada error, maka tulis perintah berikut:
# ./qms-config install
maka QmailScanner sudah terinstal dengan baik di sistem kita.
Namun ternyata sistem penulis tidak menggunakan setuid. Hal itu diketahui dengan cara adanya error pada saat menuliskan perintah ./qms-config dengan tulisan:
Can’t do setuid (cannot exec sperl)
Maka dari itu penulis melakukan langkah-langkah berikut untuk menginstal QmailScanner di sistem penulis:
# cd /downloads/qmailrocks/qmail-scanner-1.25/contrib
# make install
# cd /downloads/qmailrocks/qmail-scanner-1.25
# vi qms-config-cwrapper
Rubah tulisan yourdomain.com atau yang sejenisnya menjadi latihanlinux.co.cc
# chmod 755 qms-config-cwrapper
# ./qms-config-cwrapper
# ./qms-config-cwrapper install
# vi /var/qmail/bin/qmail-scanner-queue.pl
Hapus karakter -T pada skrip paling atas sehingga menjadi #/usr/bin/perl
Kemudian ikuti langkah-langkah berikut ini:
# chmod 0755 /var/qmail/bin/qmail-scanner-queue.pl
# /var/qmail/bin/qmail-scanner-queue -z
# /var/qmail/bin/qmail-scanner-queue -g

Maka akan ada tulisan:

# chown -R qscand:qscand /var/spool/qmailscan
# vi /var/qmail/supervise/qmail-smtpd/run
Tambahkan skrip berikut pada baris kedua:
QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue" ; export QMAILQUEUE
Lalu pada file yang sama rubah change softlimit menjadi 40000000

Kemudian langkah-langkah berikutnya adalah:

# qmailctl stop
# qmailctl start
# qmailctl stat
# cd /downloads/qmailrocks/qmail-scanner-1.25/contrib
# chmod 755 test_installation.sh
# ./test_installation.sh -doit

Akan ada tulisan seperti berikut:

dan sekarang cobalah cek di //
// ]]-->postmaster@latihanlinux.co.cc // This e-mail address is being protected from spambots, you need JavaScript enabled to view it // , dan seharusnya ada beberapa email yang masuk seperti pada gambar:

VII. Instal QmailAnalog

Qmailanalog merupakan sebuah utility untuk membantu kita menganalisa aktivitas qmail yang tercatat. Berikut adalah langkah-langkahnya:
# cd /downloads/qmailrocks/
# tar zxvf qmailanalog-0.70.tar.gz
# cd qmailanalog-0.70
# patch < /downloads/qmailrocks/patches/0.70-errno.patch # make && make setup check # cd /downloads/qmailrocks/ # tar zxvf qlogtools-3.1.tar.gz # cd qlogtools-3.1 # patch < /downloads/qmailrocks/patches/qlogtools_errno.patch # mkdir /usr/local/man # make # ./installer # cp /downloads/qmailrocks/qms-analog-0.4.2/qmailstats /var/qmail/bin # vi /var/qmail/bin/qmailstats rubah tulisan your_postmaster@yourdomain.com This e-mail address is being protected from spambots,
you need JavaScript enabled to view it
menjadi
postmaster@latihanlinux.co.cc This e-mail address is being protected from spambots, you need JavaScript enabled to view it

Setelah itu berikan perintah berikut:

# chmod 750 /var/qmail/bin/qmailstats
# /var/qmail/bin/qmailstats

Dan Ceklah di akun //
// ]]-->postmaster@latihanlinux.co.cc // This e-mail address is being protected from spambots, you need JavaScript enabled to view it // . Seharusnya email yang berjudul Qmail Nightly Qmail Report for xx/xx/xx ada di dalam mailbox postmaster seperti yang ditunjukkan pada gambar di atas.
Agar setiap malam program ini menyala secara otomatis gunakan crontab:

# crontab -e
0 3 * * * /var/qmail/bin/qmailstats 1>/dev/null 2>/dev/null

Maka setiap jam 3 pagi, qmailanalog akan bekerja secara otomatis.

VIII. Instal Qtrap

Qtrap digunakan untuk mendeteksi email-email yang masuk apakah mengandung kata-kata tertentu yang dilarang atau tidak. Jika mengandung kata-kata yang dilarang, maka program ini tidak akan mengirimkan email tersebut. Berikut adalah langkah-langkahnya:
# mkdir -p qtrap/logs
# cd qtrap
# cp /downloads/qmailrocks/scripts/qtrap/qtrap-2.0.0 ./qtrap.sh
# vi qtrap.sh
Disitu ada 2 elemen penting yang bisa dikonfigurasi. Elemen pertama adalah daftar email yang boleh masuk ke sistem jika sebelumnya email tersebut membawa kata-kata yang dilarang. Elemen kedua adalah kata-kata apa saja yang dilarang. Disitu diberikan contoh:
porn|PORN|Sex|SEX)
Maka email yang mengandung kata-kata tersebut tidak akan dikirim. Kemudian setelah mengkonfigurasi email tersebut, ikuti langkah-langkah berikut ini:
# cd /home/vpopmail
# touch /home/vpopmail/qtrap/logs/qtrap.log
# chown -R vpopmail:vchkpw /home/vpopmail/qtrap
# chmod -R 755 /home/vpopmail/qtrap
# cd /home/vpopmail/domains/latihanlinux.co.cc
# vi .qmail-default
Tambahkan di file tersebut skrip di bawah ini dan letakkan pada baris pertama pada file tersebut:
| /home/vpopmail/qtrap/qtrap.sh 
Sehingga hasilnya akan tampak seperti berikut:
|  /home/vpopmail/qtrap/qtrap.sh
| /home/vpopmail/bin/vdelivermail '' delete

Setelah itu Cobalah mengirim email dengan salah satu kata yang dilarang. Jika email tersebut berhasil dikirim, maka program qtrap kita tidak berhasil. Tetapi jika tidak berhasil dikirim, maka program qtrap kita berhasil dan ada pemberitahuan di:
# cat /home/vpopmail/domains/latihanlinux.co.cc/qtrap/logs/qtrap.log
MESSAGE DROPPED from xxx@xxx because of xxx on xx/xx/xx xx:xx:xx

X. Lain-Lain

Penulis biasanya menggunakan skrip sederhana agar qmail secara otomatis sebab pengalaman penulis, qmail akan mati setelah server direstart. Maka dari itu penulis menggunakan skrip sebagai berikut:
# vi /root/imap
Tuliskan skrip berikut:
#!/bin/bash
## Perintah untuk menjalankan IMAP secara otomatis
/usr/local/sbin/authdaemond stop
/usr/local/sbin/authdaemond start
/etc/rc.d/init.d/imap stop
/etc/rc.d/init.d/imaps stop
/etc/rc.d/init.d/imap start
/etc/rc.d/init.d/imaps start
# chmod 744 /root/imap

Lalu tambahkan di file /etc/rc.d/rc.local dan tambahkan skrip berikut:

/root/imap
Dan seharusnya qmail dapat menyala secara otomatis setelah server restart.