nstalasi
Qmail, Vpopmail, Qmailadmin, Courier Imap, dan Squirrelmail
Dokumen
(tutorial) ini ditujukan untuk membantu membuat sebuah mailserver dengan
beberapa domain sekaligus menggunakan qmail dan vpopmail, serta webmail
dengan menggunakan squirrelmail secara step-by-step dalam Bahasa
Indonesia. Tidak ada copyright apapun dalam dukumen ini, anda bebas
menyalin, mencetak, maupun memodifikasi (dengan menyertakan nama penulis
asli). Terima Kasih dan semoga bermanfaat Red deden
1.
Instalasi Qmail
Sebelum
memulai, silakan anda uninstall software mailserver (MTA) lain yang
berada dalam server anda misalnya untuk Redhat biasanya terdapat sendmail
dan/atau postfix , dan silakan anda membuat sebuah
direktori temporari untuk memudahkan penyimpanan source yang akan
didownload. Anda boleh membuat direktori dengan nama sembarang, disini
saya membuat direktori dengan nama src :
[root@mydeden_kom]# service sendmail stop
[root@mydeden_kom]# for a in $(rpm -qa | grep sendmail); do rpm -e --nodeps $a; done
[root@mydeden_kom]# mkdir src
[root@mydeden_kom]# cd src
Download qmail
dan paket pendukung yang lain (daemontools, ucspi-tcp) :
[root@mydeden src]# wget http://cr.yp.to/software/qmail-1.03.tar.gz
[root@mydeden src]# wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
[root@mydeden src]# wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
Perhatian
: Jika anda menggunakan glibc versi 2.3 keatas (misalnya Redhat 9),
silakan download patch untuk qmail dari miror lokal kesayangan anda
misalnya dari ISP CBN :
[root@mydeden src]# wget http://qmail.cbn.net.id/moni.csi.hu/pub/glibc-2.3.1/qmail-1.03.errno.patch
[root@mydeden src]# wget http://qmail.cbn.net.id/moni.csi.hu/pub/glibc-2.3.1/ucspi-tcp-0.88.errno.patch
[root@mydeden src]# wget http://qmail.cbn.net.id/moni.csi.hu/pub/glibc-2.3.1/daemontools-0.76.errno.patch
Download qmailqueue-patch,
yang berguna sebagai add-on qmail-queue agar bisa menjalankan
external program, misalnya jika anda menginginkan software anti-virus
serta quotas-patch, yang berguna untuk membounce email jika
suatu user sistem sudah melebihi quota sistem, misalnya untuk pemberian
quota perdomain dengan vpopmail
[root@mydeden src]# wget http://www.qmail.org/qmailqueue-patch
[root@mydeden src]# wget http://www.qmail.org/qmail-1.03-quotas-1.1.patch
Ekstrak semua
source tersebut :
[root@mydeden src]# tar -xzvf qmail-1.03.tar.gz
[root@mydeden src]# tar -xzvf daemontools-0.76.tar.gz
[root@mydeden src]# tar -xzvf ucspi-tcp-0.88.tar.gz
Buat
direktori untuk qmail dan pembuatan account user yang akan menjalankan
dan mengurusi qmail :
[root@mydeden src]# mkdir /var/qmail
[root@mydeden src]# groupadd nofiles
[root@mydeden src]# useradd -g nofiles -d /var/qmail/alias alias
[root@mydeden src]# useradd -g nofiles -d /var/qmail qmaild
[root@mydeden src]# useradd -g nofiles -d /var/qmail qmaill
[root@mydeden src]# useradd -g nofiles -d /var/qmail qmailp
[root@mydeden src]# groupadd qmail
[root@mydeden src]# useradd -g qmail -d /var/qmail qmailq
[root@mydeden src]# useradd -g qmail -d /var/qmail qmailr
[root@mydeden src]# useradd -g qmail -d /var/qmail qmails
Ganti
direktori ke source qmail :
[root@mydeden src]# cd qmail-1.03
Perhatian
: Jika anda menggunakan glibc versi 2.3 keatas (misalnya Redhat 9),
patch qmail anda :
[root@mydeden qmail-1.03]# patch -p1 < ../qmail-1.03.errno.patch
Jika diperlukan patch dengan queue patch dan quota patch :
[root@mydeden qmail-1.03]# patch -p1 < ../qmailqueue-patch
[root@mydeden qmail-1.03]# patch -p1 < ../qmail-1.03-quotas-1.1.patch
Kompile dan install qmail :
[root@mydeden qmail-1.03]# make setup check
Membuat
file konfigurasi qmail, disini silakan anda ganti deden.kom.edu dengan
hostname anda yang FQDN (bisa diresolve), misalnya serverku.domain.com.Ingat,
hostname tidak harus sama dengan nama server host tempat anda
menginstall qmail tersebut.
[root@mydeden qmail-1.03]# ./config-fast deden.kom.edu
Ganti ke
direktori source ucspi-tcp :
[root@mydeden qmail-1.03]# cd ../ucspi-tcp-0.88
Perhatian
: Jika anda menggunakan glibc versi 2.3 keatas (misalnya Redhat 9),
patch ucspi-tcp anda :
[root@mydeden ucspi-tcp-0.88]# patch -p1 < ../ucspi-tcp-0.88.errno.patch
Kompile
dan install ucspi-tcp :
[root@mydeden ucspi-tcp-0.88]# make setup check
[root@mydeden ucspi-tcp-0.88]# cd ../admin/daemontools-0.76/
Perhatian
: Jika anda menggunakan glibc versi 2.3 keatas (misalnya Redhat 9),
patch daemontools anda :
[root@mydeden daemontools-0.76]# patch -p1 < ../../daemontools-0.76.errno.patch
Kompil
dan install daemontools :
[root@mydeden daemontools-0.76]# ./package/install
Jika
daemontools sukses terinstal, anda bisa mengecek dengan menggunakan
perintah ps, misalnya :
[root@mydeden daemontools-0.76]# ps ax | grep read
6529 ? S 0:00 readproctitle service errors: .......................
Hapus
direktori /command dan kemudian anti dengan
direktori command dari source daemontools :
[root@mydeden daemontools-0.76]# rm -rf /command/
[root@mydeden daemontools-0.76]# mv command/ /
Buat file
startup untuk menjalankan qmail-send, dan mengganti defaultdelivery
dari format Mailbox ke format Maildir :
[root@mydeden_kom]# cp /var/qmail/boot/home /var/qmail/rc
[root@mydeden_kom]# perl -pi -e "s/Mailbox splogger qmail/Maildir//g" /var/qmail/rc
Jika
perintah perl tersebut diatas ada kesalahan atau linux ada tidak
terinstall program perl (sulit dipercaya?), silakan secara manual anda
mengganti pada file /var/qmail/rc dari baris ini :
qmail-start ./Mailbox splogger qmail
menjadi :
qmail-start ./Maildir/
Buat
direktori untuk menyimpan file-file supervise :
[root@mydeden_kom]# mkdir -p /var/qmail/supervise/qmail-send/log
[root@mydeden_kom]# mkdir -p /var/qmail/supervise/qmail-smtpd/log
Buat file
script supervise untuk menjalankan qmail-send yaitu :
[root@mydeden_kom]# vi /var/qmail/supervise/qmail-send/run
Isinya :
#!/bin/sh
exec /var/qmail/rc
Buat file
script supervise untuk menjalankan log qmail-send :
[root@mydeden_kom]# vi /var/qmail/supervise/qmail-send/log/run
Isinnya :
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s1048576 /var/log/qmail
Buat file
script supervise untuk menjalankan qmail-smtpd :
[root@mydeden_kom]# vi /var/qmail/supervise/qmail-smtpd/run
Isinya :
#!/bin/sh
PATH=$PATH:/usr/local/bin:/var/qmail/bin
export PATH
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
MAXSMTPD=30
exec /usr/local/bin/softlimit -m 5000000
tcpserver -H -R -v -x /etc/tcp.smtp.cdb -c "$MAXSMTPD" -u "$QMAILDUID" -g "$NOFILESGID"
0 25 qmail-smtpd 2>&1
Variabel MAXSMTPD
bisa anda sesuaikan dengan kondisi kebutuhan dan beban mailserver anda.
Jika anda menginginkan penolakan terhadap email yang datang dari
mailserver yang open relay yang biasanya merupakan SPAM, anda bisa
menggunakan rblsmtpd menjadi :
tcpserver -H -R -v -x /etc/tcp.smtp.cdb -c "$MAXSMTPD" -u "$QMAILDUID" -g "$NOFILESGID"
0 25 rblsmtpd -r relays.ordb.org rblsmtpd -b qmail-smtpd 2>&1
Jika anda
menggunakan rblsmtpd, anda nanti bisa melihat lognya di /var/log/qmail/smtpd/current
:
[root@mydeden_kom]# tail -f /var/log/qmail/smtpd/current
@400000003dbca93728ec47bc tcpserver: pid 11461 from 128.154.20.228
@400000003dbca93804e39064 rblsmtpd: 128.154.20.228 pid 11461: 451 This mail was
handled by an open relay - please visit <http://ORDB.org/lookup/?host=128.154.20.228>
Buat file
script supervise untuk menjalankan log qmail-smtpd :
[root@mydeden_kom]# vi /var/qmail/supervise/qmail-smtpd/log/run
Isinya :
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s1048576 /var/log/qmail/smtpd
Ubah
menjadi file-file yang bisa dieksekusi :
[root@mydeden_kom]# chmod 755 /var/qmail/supervise/qmail-send/run
[root@mydeden_kom]# chmod 755 /var/qmail/supervise/qmail-send/log/run
[root@mydeden_kom]# chmod 755 /var/qmail/supervise/qmail-smtpd/run
[root@mydeden_kom]# chmod 755 /var/qmail/supervise/qmail-smtpd/log/run
Buat
direktori untuk log qmail-send dan qmail-smtpd :
[root@mydeden_kom]# mkdir -p /var/log/qmail/smtpd
[root@mydeden_kom]# chown qmaill /var/log/qmail /var/log/qmail/smtpd
Mengijinkan
localhost untuk menggunakan smtp :
[root@mydeden src]# echo '127.0.0.1:allow,RELAYCLIENT=""' > /etc/tcp.smtp
Mengatur IP/Network
mana saja yang bisa menggunakan smtp server anda, jika misalnya anda
menginginkan komputer di jaringan intranet anda dengan IP 10.126.10.11
bisa menggunakan smtp anda, maka :
[root@mydeden src]# echo '10.126.10.11:allow,RELAYCLIENT=""' >> /etc/tcp.smtp
Atau jika
anda mengijinkan seluruh network anda, misalnya 10.126.10.0/24 maka :
[root@mydeden src]# echo '10.126.10.:allow,RELAYCLIENT=""' >> /etc/tcp.smtp
Jangan
lupa, setiap selesai penambahan untuk selalu membuat
database baru dengan :
[root@mydeden src]# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
Akhirnya
kita masukkan script yang kita buat kedalam servis supervise :
[root@mydeden_kom]# ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service
Untuk
mengecek apakah supervise sudah menjalankan tugasnya dengan benar bisa
digunakan perintah ps, misalnya :
[root@mydeden_kom]# ps ax | grep qmail
6636 ? S 0:00 supervise qmail-send
6638 ? S 0:00 supervise qmail-smtpd
6640 ? S 0:00 qmail-send
6641 ? S 0:00 /usr/local/bin/multilog t s1048576 /var/log/qmail
6643 ? S 0:00 /usr/local/bin/multilog t s1048576 /var/log/qmail/smt
6644 ? S 0:00 qmail-lspawn ./Maildir/
6646 ? S 0:00 qmail-rspawn
6647 ? S 0:00 qmail-clean
Untuk
sekedar memastikan, anda juga bisa telnet ke localhost port 25 :
[root@mydeden src]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 deden.kom.edu ESMTP
Jika
sampai langkah ini, anda belum sukses atau menemui error, coba periksa
sekali lagi apakah penulisan script anda sudah betul dan tidak kurang,
atau apakah ada langkah/perintah yang anda lewatkan. Anda juga bisa
melihat kemungkinan pesan kesalahan/error pada file log /var/log/qmail/current
atau /var/log/qmail/smtpd/current atau bisa juga pada
proses readproctile, misalnya, dalam kondisi normal:
[root@mydeden src]# ps ax | grep read
673 ? S 0:00 readproctitle service errors: .......................
Jika ada
sesuatu error/kesalahan pada servise supervise, misalnya jika sebuah
command `id` tidak diketemukan karena kesalahan environment $PATH:
[root@mydeden src]# ps ax | grep read
673 ? S 0:00 readproctitle service errors: .......?id...?command..?not...found
Penting. Untuk menerima
email bounce ke postmaster silakan anda buat minimal tiga buah email
sebagai berikut :
[root@mydeden src]# cd /var/qmail/alias
[root@mydeden alias]# echo deden@pasopati.net > .qmail-root
[root@mydeden alias]# echo deden@pasopati.net > .qmail-postmaster
[root@mydeden alias]# echo deden@pasopati.net > .qmail-mailer-daemon
Ganti deden@pasopati.net
dengan email yang bertanggung jawab terhadap server email tersebut
(anda?). Kadang kita membutuhkan akses ke wrapper sendmail (misalnya
script cgi) atau MUA yang menggunakan wrapper sendmail (mutt, pine dll),
jadi kita lakukan symlink ke binari qmail untuk wrapper sendmail :
[root@mydeden src]# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
[root@mydeden src]# ln -s /var/qmail/bin/sendmail /usr/bin/sendmail
2.
Instalasi vpopmail
Donwload
vpopmail yang paling baru, ekstrak, kemudian buat grup dan user yang
akan menghandle vpopmail :
[root@mydeden src]# wget http://inter7.com/vpopmail/vpopmail-5.2.1.tar.gz
[root@mydeden src]# tar -xzvf vpopmail-5.2.1.tar.gz
[root@mydeden src]# cd vpopmail-5.2.1
[root@mydeden vpopmail-5.2.1]# groupadd vchkpw
[root@mydeden vpopmail-5.2.1]# useradd -g vchkpw vpopmail
Opsi
–enable-default-domain dibawah ini (pada saat kompilasi vpopmail)
digunakan untuk mengeset pada saat pengambilan email melalui protokol
pop3, jika memasukkan format user saja tanpa user@domain
maka vpopmail akan menganggap sebagai user@domain-default-tersebut
, disini kita misalkan deden.edu sebagai default domain :
[root@mydeden vpopmail-5.2.1]# ./configure --enable-default-domain=deden.edu
Kompile
dan install :
[root@mydeden vpopmail-5.2.1]# make
[root@mydeden vpopmail-5.2.1]# make install
Ganti
direktori ke /home/vpopmail/bin untuk menambah virtual
domain, ingat password postmaster ini akan digunakan nantinya jika anda
menggunakan qmailadmin untuk administrasi sebuah virtualdomain
menggunakan web browser :
[root@mydeden vpopmail-5.2.1]# cd /home/vpopmail/bin
[root@mydeden bin]# ./vadddomain deden.edu
Please enter password for postmaster:
enter password again:
Test
membuat sebuah alamat email :
[root@mydeden bin]# ./vadduser deden@deden.edu
Please enter password for deden@deden.edu:
enter password again:
Buat
direktori dan file script supervise untuk menjalankan qmail-pop3d
(pop server) :
[root@mydeden_kom]# mkdir -p /var/qmail/supervise/qmail-pop3d
[root@mydeden_kom]# vi /var/qmail/supervise/qmail-pop3d/run
Isinya :
#!/bin/sh
PATH=$PATH:/usr/local/bin:/var/qmail/bin
export PATH
MAXPOP3D=30
exec /usr/local/bin/softlimit -m 5000000
tcpserver -H -v -c "$MAXPOP3D" 0 110 qmail-popup deden.kom.edu /home/vpopmail/bin/vchkpw
qmail-pop3d Maildir/ 2>&1
Silakan
anda sesuaikan variabel MAXPOP3D dan hostname deden.kom.edu
dengan konfigurasi yang sesuai dengan kondisi mail server anda.Buat file script
supervise untuk menjalankan log qmail-pop3d :
[root@mydeden_kom]# mkdir -p /var/qmail/supervise/qmail-pop3d/log
[root@mydeden_kom]# vi /var/qmail/supervise/qmail-pop3d/log/run
Isinya :
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s1048576 /var/log/qmail/pop3d
Buat
direktori log qmail-pop3d serta mengeset file script tersebut
menjadi executable :
[root@mydeden_kom]# mkdir /var/log/qmail/pop3d
[root@mydeden_kom]# chown qmaill /var/log/qmail/pop3d
[root@mydeden_kom]# chmod 755 /var/qmail/supervise/qmail-pop3d/run
[root@mydeden_kom]# chmod 755 /var/qmail/supervise/qmail-pop3d/log/run
Perhatian
: Sebelum melakukan simlink, pastikan tidak ada daemon pop3 yang
sedang berjalan diserver anda. Anda bisa memeriksa dengan menggunakan
perintah netstat atau lsof , juga periksa kembali
konfigurasi (x)inetd anda. Akhirnya kita masukkan script supervise qmail-pop3d
kedalam /service :
[root@mydeden_kom]# ln -s /var/qmail/supervise/qmail-pop3d /service
Untuk
memeriksa apakah servise pop3 server sudah bekerja :
[root@mydeden_kom]# ps ax | grep tcpserver
1057 ? S 0:00 tcpserver -H -R -v -x /etc/tcp.smtp.cdb -c 30 -u 503
1061 ? S 0:00 tcpserver -H -v -c 30 0 110 qmail-popup deden.kom.edu
Untuk
sekedar memastikan, anda bisa mencoba telnet ke localhost port 110 :
[root@mydeden_kom]# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK <5724.1035514277@deden.kom.edu>
Download
script untuk menjalankan qmail, anda bisa download di http://www.lifewithqmail.org/qmailctl-script-dt70
namun anda harus menambahkan untuk start/stop daemon pop3d nya, atau
alternatif lain script yang sudah ditambah start/stop daemon pop3d di http://people.cakraweb.com/~asfik/qmailctl
:
[root@mydeden src]# wget http://people.cakraweb.com/~asfik/qmailctl
[root@mydeden src]# mv qmailctl /var/qmail/bin/qmailctl
[root@mydeden src]# chmod 755 /var/qmail/bin/qmailctl
[root@mydeden src]# ln -s /var/qmail/bin/qmailctl /usr/bin
Jika anda
tidak memakai Redhat based style, anda bisa langsung ke Start-Stop
qmail :
[root@mydeden src]# ln -s /var/qmail/bin/qmailctl /etc/rc.d/init.d/qmail
[root@mydeden src]# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc0.d/K30qmail
[root@mydeden src]# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc1.d/K30qmail
[root@mydeden src]# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc2.d/S80qmail
[root@mydeden src]# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc3.d/S80qmail
[root@mydeden src]# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc4.d/S80qmail
[root@mydeden src]# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc5.d/S80qmail
[root@mydeden src]# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc6.d/K30qmail
Untuk Start-Stop
qmail anda bisa lakukan perintah berikut :
[root@mydeden src]# qmailctl stop
Stopping qmail...
qmail-smtpd
qmail-send
qmail-pop3d
[root@mydeden src]# qmailctl start
Starting qmail
Kemudian
kita mencoba mengetest mengirim email misalnya dari deden@pasopati.net
ke deden@deden.edu , dari perintah tail -f
/var/log/qmail/current kita dapatkan log seperti berikut :
[root@mydeden_kom]# tail -f /var/log/qmail/current
@400000003db6657501bc540c new msg 224662
@400000003db6657501bc6b7c info msg 224662: bytes 906 from <deden@pasopati.net> qp 995 uid 503
@400000003db6657501e995fc starting delivery 1: msg 224662 to local deden.edu-deden@deden.edu
@400000003db6657501eb3fc4 status: local 1/10 remote 0/20
@400000003db6657504fac1e4 delivery 1: success: did_0+0+1/
@400000003db6657504fad954 status: local 0/10 remote 0/20
@400000003db6657504fd8cbc end msg 224662
Jika anda
mengubah hasil format log dari unix timestamps ke format yang lebih
mudah dibaca oleh manusia, anda bisa piping dengan menggunakan tai64nlocal
:
[root@mydeden_kom]# tail -f /var/log/qmail/current | tai64nlocal
2002-10-23 16:01:31.029119500 new msg 224662
2002-10-23 16:01:31.029125500 info msg 224662: bytes 906 from <deden@pasopati.net> qp 995 uid 503
2002-10-23 16:01:31.032085500 starting delivery 1: msg 224662 to local deden.edu-deden@deden.edu
2002-10-23 16:01:31.032194500 status: local 1/10 remote 0/20
2002-10-23 16:01:31.083542500 delivery 1: success: did_0+0+1/
2002-10-23 16:01:31.083548500 status: local 0/10 remote 0/20
2002-10-23 16:01:31.083725500 end msg 224662
Lalu kita
periksa apakah email tersebut sudah masuk ke dalam mailbox deden@deden.edu,
anda bisa menggunakan POP3 client, misalnya Eudora. Karena domain deden.edu
merupakan default domain, anda bisa menggunakan user
saja misalnya asfik atau format user@domain misalnya deden@deden.edu
sebagai accoutname atau username untuk authentikasi ke server POP
tersebut, atau anda juga bisa melalui old-fashioned-way, telnet
port 110 di localhost :
[root@mydeden_kom]# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK <5897.1035517402@deden.kom.edu>
user deden@deden.edu
+OK
pass 123
+OK
list
+OK
1 988
.
quit
+OK
Connection closed by foreign host.
Disitu
kita lihat email sudah masuk dengan sukses ke alamat yang dituju. Untuk
menambahkan virtual domain yang lain (misalnya pandowo.net),
anda tinggal menuju ke /home/vpopmail/bin kemudian ./vadddomain
pandowo.net misalnya :
[root@mydeden src]# cd /home/vpopmail/bin
[root@arjuna bin]# ./vadddomain pandowo.net
3.
Instalasi Apache
Jika
diserver anda telah terinstall webserver apache, anda bisa melewati
langkah berikut ini. Disini akan dijelaskan instalasi apache yang
sederhana, yang nantinya akan digunakan oleh qmailadmin dan
squirrelmail.Donwload apache dan php versi yang paling baru kemudian
ekstrak dan lakukan kompilasi seperti biasa :
[root@mydeden src]# wget http://www.apache.org/dist/httpd/apache_1.3.27.tar.gz
Jika
dengan URL diatas tidak sukses anda bisa mencoba dengan URL dibawah ini :
[root@mydeden src]# wget http://mirrors.ccs.neu.edu/Apache/dist/httpd/apache_1.3.27.tar.gz
[root@mydeden src]# wget http://id.php.net/distributions/php-4.3.1.tar.gz
[root@mydeden src]# tar -xzvf apache_1.3.27.tar.gz
[root@mydeden src]# tar -xzvf php-4.3.1.tar.gz
[root@mydeden src]# cd apache_1.3.27
[root@mydeden apache_1.3.27]# ./configure
--prefix=/usr/local/apache-1.3.27
--enable-module=most
--enable-shared=max
--enable-suexec
--suexec-caller=www
--suexec-docroot=/
--suexec-logfile=/usr/local/apache-1.3.27/logs/suexec_log
--suexec-userdir=htdocs
--suexec-uidmin=99
--suexec-gidmin=99
--suexec-safepath=/usr/local/bin:/usr/bin:/bin
[root@mydeden apache_1.3.27]# make
[root@mydeden apache_1.3.27]# make install
Buatlah symlink
agar mudah diingat letak direktori apache :
[root@mydeden apache_1.3.27]# ln -s /usr/local/apache-1.3.27 /usr/local/httpd
Buatlah
user yang akan menghandle apache, misalnya www :
[root@mydeden apache_1.3.27]# adduser -s /bin/nologin www
Edit file
/usr/local/httpd/conf/httpd.conf pada
bagian berikut ini :
User www
Group www
Kemudian
pada ServerAdmin isikan email orang yang bertanggung-jawab
terhadap kelangsungan apache :
ServerAdmin deden@deden.edu
Ganti ServerName
dengan hostname atau IP address apache anda :
ServerName deden.kom.edu
Karena
kita akan menggunakan file php, ganti juga pada DirectoryIndex
menjadi :
DirectoryIndex index.html index.php
Serta :
AddType application/x-httpd-php .php
Misalkan
IP anda adalah 10.126.10.10 dan hostnamenya adalah deden.kom.edu
anda bisa tambahkan entry pada file /etc/hosts :
[root@mydeden apache_1.3.27]# echo "10.126.10.10 deden.kom.edu" >> /etc/hosts
Ganti
direktori ke source php, kemudian install php seperti biasa :
[root@mydeden apache_1.3.27]# cd ../php-4.3.1
[root@mydeden php-4.3.1]# ./configure
--with-apxs=/usr/local/apache-1.3.27/bin/apxs
--with-config-file-path=/usr/local/apache-1.3.27/conf
--with-gd
--with-jpeg-dir
--with-ttf
--with-ftp
--with-gettext
--with-dbase
--with-filepro
--with-zlib
--with-xml
--with-gdbm
--disable-display-source
--disable-short-tags
--enable-track-vars
--enable-memory-limit
[root@mydeden php-4.3.1]# make
[root@mydeden php-4.3.1]# make install
[root@mydeden php-4.3.1]# cp php.ini-dist /usr/local/httpd/conf/php.ini
Edit file
/usr/local/httpd/conf/php.ini , ganti register_globals
= Off menjadi register_globals = On , kemudian jalankan
apache :
[root@mydeden php-4.3.1]# /usr/local/httpd/bin/httpd
Untuk
melihat apakah sudah berjalan sesuai dengan rencana :
[root@mydeden php-4.3.1]# ps ax | grep httpd
1038 ? S 0:00 /usr/local/httpd/bin/httpd
1039 ? S 0:00 /usr/local/httpd/bin/httpd
1040 ? S 0:00 /usr/local/httpd/bin/httpd
1041 ? S 0:00 /usr/local/httpd/bin/httpd
1042 ? S 0:00 /usr/local/httpd/bin/httpd
1043 ? S 0:00 /usr/local/httpd/bin/httpd
Untuk
menjalankan apache setiap kali server di restart :
[root@mydeden php-4.3.1]# echo /usr/local/httpd/bin/httpd >> /etc/rc.local
3.
Instalasi qmailadmin (serta ezmlm+ezmlm-idx dan autoresponder)
Qmailadmin
digunakan untuk administrasi account-account pada sebuah virtualdomain,
qmailadmin membutuhkan ezmlm(+ezmlm-idx) serta autoresponder. Karena
qmailadmin yang standar tidak mengijinkan pengesetan quota pada sebuah
account maka kita putuskan untuk menggunakan qmailadmin versi lama
beserta patch untuk mengatasinya.Download ezmlm, ezmlm-idx, autoresponder,
qmailadmin dan patch :
[root@mydeden src]# wget http://cr.yp.to/software/ezmlm-0.53.tar.gz
[root@mydeden src]# wget http://gd.tuwien.ac.at/infosys/mail/qmail/ezmlm-patches/ezmlm-idx-0.40.tar.gz
[root@mydeden src]# wget http://inter7.com/devel/autorespond-2.0.2.tar.gz
[root@mydeden src]# wget http://inter7.com/qmailadmin/qmailadmin-1.0.4.tar.gz
[root@mydeden src]# wget
http://www.digitaloasys.com/contrib/quotafix-patch.1.0.4-03-LINUX.tar.gz
Perhatian
: Jika anda menggunakan glibc versi 2.3 keatas (misalnya Redhat 9),
silakan download patch untuk ezmlm(-idx) :
[root@mydeden src]# wget http://qmail.cbn.net.id/moni.csi.hu/pub/glibc-2.3.1/ezmlm-idx-0.53.400.unified_41.patch
Ekstrak
source-source tersebut diatas :
[root@mydeden src]# tar -xzvf ezmlm-0.53.tar.gz
[root@mydeden src]# tar -xzvf ezmlm-idx-0.40.tar.gz
[root@mydeden src]# tar -xzvf autorespond-2.0.2.tar.gz
[root@mydeden src]# tar -xzvf qmailadmin-1.0.4.tar.gz
[root@mydeden src]# tar -xzvf quotafix-patch.1.0.4-03-LINUX.tar.gz
Install ezmlm+ezmlm-idx :
[root@mydeden src]# mv ezmlm-idx-0.40/* ezmlm-0.53/
[root@mydeden src]# cd ezmlm-0.53
[root@mydeden ezmlm-0.53]# patch < idx.patch
Perhatian
: Jika anda menggunakan glibc versi 2.3 keatas (misalnya Redhat 9),
patch ezmlm(-idx) anda :
[root@mydeden ezmlm-0.53]# patch -p1 < ../ezmlm-idx-0.53.400.unified_41.patch
Kompile
dan install ezmlm-(idx) :
[root@mydeden ezmlm-0.53]# make
[root@mydeden ezmlm-0.53]# make man
[root@mydeden ezmlm-0.53]# make setup
Install
autoresponder :
[root@mydeden ezmlm-0.53]# cd ../autorespond-2.0.2
[root@mydeden autorespond-2.0.2]# make
[root@mydeden autorespond-2.0.2]# make install
Install
qmailadmin :
[root@mydeden autorespond-2.0.2]# cd ../qmailadmin-1.0.4
[root@mydeden qmailadmin-1.0.4]# patch -p1 < ../quotafix-patch/quotafix-patch.diff
[root@mydeden qmailadmin-1.0.4]# ./configure
--enable-htmldir=/usr/local/httpd/htdocs
--enable-cgibindir=/usr/local/httpd/cgi-bin
[root@mydeden qmailadmin-1.0.4]# make
[root@mydeden qmailadmin-1.0.4]# make install
Jika
sukses, maka akan terdapat file qmailadmin pada direktori /usr/local/httpd/cgi-bin
:
[root@mydeden qmailadmin-1.0.4]# ls -la /usr/local/httpd/cgi-bin/qmailadmin
-rwsr-sr-x 1 vpopmail vchkpw 277728 Feb 28 18:12 /usr/local/httpd/cgi-bin/qmailadmin
Kemudian
anda bisa menggunakan web broswer untuk mulai melakukan administrasi,
URL nya tergantung dari konfigurasi apache anda, misalnya berdasarkan
contoh diatas adalah http://deden.kom.edu/cgi-bin/qmailadmin
kemudian masukkan domain yang akan dikelola beserta password dari user postmaster.
4.
Instalasi Courier Imap
Courier
Imap, sesuai dengan namanya adalah sebuah IMAP server yang mendukung
format penyimpanan email dengan menggunakan format Maildir.
Dalam hal ini kita menggunakan Courier Imap untuk backend dari
webmail squirrelmail.Donwload courier-imap, ekstrak sourcenya, dan kita
kompilasi :
[root@mydeden src]# wget
http://www.courier-mta.org/beta/imap/courier-imap-1.7.0.20030215.tar.bz2
[root@mydeden src]# tar -jxvf courier-imap-1.7.0.20030215.tar.bz2
[root@mydeden src]# cd courier-imap-1.7.0.20030215
[root@mydeden courier-imap-1.7.0.20030215]# ./configure
--enable-workarounds-for-imap-client-bugs
--disable-root-check
[root@mydeden courier-imap-1.7.0.20030215]# make
[root@mydeden courier-imap-1.7.0.20030215]# make install
Kita
tidak membutuhkan module authentikasi yang lain (jika ada), jadi module
dari courier-imap kita dihapus saja
:
[root@mydeden courier-imap-1.7.0.20030215]# rm -rf /usr/lib/courier-imap/libexec/authlib/*
Salin
modul authvchkpw dari source courier-imap yang telah kita kompilasi
diatas ke direktori modul authentikasi untuk imap servernya :
[root@mydeden courier-imap-1.7.0.20030215]# cp authlib/authvchkpw
/usr/lib/courier-imap/libexec/authlib/
Salin
file konfigurasi standar dari courier-imap :
[root@mydeden courier-imap-1.7.0.20030215]# cp /usr/lib/courier-imap/etc/imapd.dist
/usr/lib/courier-imap/etc/imapd
[root@mydeden courier-imap-1.7.0.20030215]# cp /usr/lib/courier-imap/etc/imapd-ssl.dist
/usr/lib/courier-imap/etc/imapd-ssl
Edit file
/usr/lib/courier-imap/etc/imapd , karena courier imap
ini hanya digunakan untuk webmail ganti pada baris ADDRESS=0
menjadi ADDRESS=127.0.0.1 . Jika webmail anda adalah webmail
yang sibuk, anda bisa menaikkan variabel MAXDAEMONS dan MAXPERIP,
yang terpenting adalah ganti pada AUTHMODULES=”authdaemon”
menjadi AUTHMODULES=”authvchkpw”: Start daemon
courier-imap :
[root@mydeden courier-imap-1.7.0.20030215]# /usr/lib/courier-imap/libexec/imapd.rc start
Anda bisa
memeriksa apakah servise courier-imap anda sudah berjalan semestinya,
kita gunakan perintah ps :
[root@mydeden courier-imap-1.7.0.20030215]# ps ax | grep imap
2049 ? S 0:00 /usr/lib/courier-imap/libexec/couriertcpd -address=12
2052 ? S 0:00 /usr/lib/courier-imap/libexec/courierlogger imapd
Agar
setiap reboot daemon courier-imap dijalankan secara otomatis :
[root@mydeden courier-imap-1.7.0.20030215]# echo
"/usr/lib/courier-imap/libexec/imapd.rc start" >> /etc/rc.local
5.
Instalasi Squirrelmail
Menurut
file INSTALL dari distribusi Squirrelmail, software ini membutuhkan php4
yang minimal dikompilasi dengan opsi –enable-track-vars
–enable-force-cgi-redirect –with-gettext serta membutuhkan register_global=On
dan file_uploads = On di php.ini
(jika php anda menggunakan default RPM Redhat file php.ini
terletak didirektori /etc).
Download
dan ekstrak paket squirrelmail yang paling baru :
[root@mydeden src]# wget
http://umn.dl.sourceforge.net/sourceforge/squirrelmail/squirrelmail-1.2.11.tar.gz
[root@mydeden src]# tar -xzvf squirrelmail-1.2.11.tar.gz
Tentukan
letak direktori squirrelmail, misalnya disini saya letakkan didirektori /usr/local/httpd/htdocs/mail
sehingga berdasarkan contoh dan konbfigurasi nantinya akan bisa diakses
melalui http://deden.kom.edu/mail
[root@mydeden src]# mv squirrelmail-1.2.11 /usr/local/httpd/htdocs/mail
Tentukan user
dan group yang menjalankan proses apache :
[root@mydeden src]# egrep '^(User|Group)' /usr/local/httpd/conf/httpd.conf
User www
Group www
Dari
perintah diatas kita peroleh user www dan group www,
kemudian ganti kepemilikan direktori
/usr/local/httpd/htdocs/mail/data menjadi user www dan
group www :
[root@mydeden src]# chown -R www.www /usr/local/httpd/htdocs/mail/data/
Salin
file konfigurasi standar ke file konfigurasi squirrelmail :
[root@mydeden src]# cp /usr/local/httpd/htdocs/mail/config/config_default.php
/usr/local/httpd/htdocs/mail/config/config.php
Edit file
tersebut dari $imap_server_type = ‘cyrus’; menjadi$imap_server_type
= ‘courier’; :
[root@mydeden src]# vi /usr/local/httpd/htdocs/mail/config/config.php
Atau jika
anda mengalami kesulitan anda bisa menggunakan script perl yang
disertakan oleh squirrelmail, pada direktori config :
[root@mydeden src]# cd /usr/local/httpd/htdocs/mail/config
[root@mydeden config]# ./conf.pl
Kemudian
silakan dicoba dengan browser anda, misalnya http://deden.kom.edu/mail,
kemudian masukkan user yang telah anda buat misalnya deden@deden.edu
kemudian anda bisa mengganti Personal Information atau Folder
Preferences dari menu Options.
6.
Referensi
- http://www.lifewithqmail.org
- http://www.qmail.org
- http://inter7.com/vpopmail
- http://www.courier-mta.org/
- http://www.squirrelmail.org
- File INSTALL, README dan direktori docs pada setiap
distribusi paket