1. Pendahuluan
Dokumen ini merupakan langkah yang penulis
lakukan saat menginstal
qmail-1.03 beserta beberapa paket/aplikasi pendukung lainnya.
Qmail, (http://pobox.com/~djb/qmail.html) adalah sebuah MTA (Mail Transfer
Agent)
yang dibuat oleh Dan Breinstein (DJB), seorang profesor matematika
pada
Universitas Illinois Chicago.
Qmail didesain untuk memperbaiki lubang keamanan
(security hole) pada
MTA legendaris Unix, Sendmail. Para pendukung qmail menyediakan hadiah
sebesar US $1000 bagi yang berhasil mendobrak sistem keamanan qmail.
Oleh
karena tidak ada seorangpun yang berhasil memenangkan hadiah tersebut,
maka
US $1000 itu diberikan kepada Free Software Foundation. Pencipta qmail,
Dan
Breinstein juga menyediakan hadiah sebesar US $500 bagi yang berhasil
menemukan lubang keamanan pada qmail. Qmail dapat mereplace sepenuhnya
Sendmail dengan beberapa feature-feature tambahan yang lebih baik.
Dokumen ini akan menjelaskan instalasi berikut:
1. qmail sebagai MTA,
2. checkpassword sebagai module authentikasi pada pop3 server,
3. vpopmail sebagai module authentikasi pada pop3 server,
4. ezmlm yang digunakan untuk aplikasi mailing-list,
5. sqwebmail, yaitu interface webmail seperti hotmail,
6. autorespond, seperti answering machine pada sistem telepon,
7. qmailadmin, yaitu interface web untuk melakukan administrasi email
server yang meliputi, edit user, virtualdomain, forwarding, mailing
list dan autorespond.
2. Instalasi Qmail
------------------
Persyaratan yang harus dipenuhi untuk menginstal
Qmail adalah:
- Sebuah mesin dengan sistem operasi Unix compatible. Qmail tidak
mendukung sistem operasi M$ Windows NT atau Windows 2000. Penulis
melakukan instalasi qmail pada mesin Linux Redhat 6.2.
- Sangat direkomendasikan Anda memiliki sebuah DNS server sebagai tempat
registarsi Mail Exchanger (MX). Jika Anda tidak memilikinya,
dapat
dilakukan registrasi gratis pada http://www.dyndns.org.
- Sangat dianjurkan Anda terhubung ke internet secara leased-line.
Qmail
dirancang untuk konektivitas jaringan yang baik, jadi jangan
Anda gunakan
qmail pada 28,8 kbps dial-up. Untuk koneksi yang agak buruk
qmail
menyediakan serialmail.
2.1. Langkah instalasi dan konfigurasi Qmail
--------------------------------------------
Sebelum Anda menginstall qmail, sebaiknya dicatat
terlebih dahulu pada
direktori apa saja file-file qmail ditempatkan. Hal ini dilakukan karena
qmail yang akan diinstal adalah dalam format tar.gz. Tidak seperti
paket aplikasi
yang datang dalam bentuk rpm, paket dalam format tar.gz tidak
mendokumentasikan letak file-file yang akan diinstal. Pencatatan dapat
dilakukan dengan cara berikut:
- catat semua file yang terinstall pada mesin Anda sebelum menginstal
qmail:
# find /* > before-qmail
- catat semua file yang terinstall pada mesin Anda setelah menginstal
qmail:
# find /* > after-qmail
- lihat file-file hasil instalasi qmail:
# diff before-qmail after-qmail > qmail-files.
Urutan langkah instalasi dan konfigurasi qmail
adalah:
1. Dapatkan paket qmail terkini, pada saat tulisan ini dibuat
versi
terakhir adalah qmail-1.03.tar.gz. Paket ini dapat diambil pada
ftp://koobera.math.uic.edu/www/software/qmail-1.03.tar.gz.
2. Dapatkan juga paket pendukung lainnya yaitu:
- ucspi-tcp, yang menyediakan tcpserver sebagai
daemon pengganti inetd
pada ftp://koobera.math.uic.edu/www/software/ucspi-tcp-0.88.tar.gz
- daemontools, yang berisi sekumpulan layanan monitoring
dan controlling
pada ftp://koobera.math.uic.edu/www/software/daemontools-0.61.tar.gz
- qmail-103.patch, untuk mengkoreksi proses reply
DNS yang ilegal seperti
AOL Provider yang tidak menghiraukan
RFC.Paket ini dapat diperoleh pada
http://www.ckdhr.com/ckd/qmail-103.patch
3. Copy paket-paket tersebut pada direktori /usr/local/src
4. Unpack paket-paket tersebut:
# cd /usr/local/src
# tar -zxvf qmail-1.03.tar.gz
# tar -zxvf ucspi-tcp-0.88.tar.gz
# tar -zxvf daemontools-0.61.tar.gz
5. Lakukan patch DNS menggunakan file qmail-103.patch:
# patch -p1 < /usr/local/src/qmail-103.patch
6. Buat home direktori untuk qmail:
# mkdir /var/qmail
7. Buat user-user dan group-group yang akan akan menjalankan qmail
# groupadd nofiles
# useradd -g nofiles -d /var/qmail/alias -s /bin/false
alias
# useradd -g nofiles -d /var/qmail -s /bin/false
qmaild
# useradd -g nofiles -d /var/qmail -s /bin/false
qmaill
# useradd -g nofiles -d /var/qmail -s /bin/false
qmailp
# groupadd qmail
# useradd -g qmail -d /var/qmail -s /bin/false qmailq
# useradd -g qmail -d /var/qmail -s /bin/false qmailr
# useradd -g qmail -d /var/qmail -s /bin/false qmails
8. Kompilasi qmail
# cd /usr/local/src/qmail-1.03
# make setup check
9. Konfigurasi qmail
# ./config
Script di atas berusaha melakukan reverse DNS lookup
untuk semua local
IP address dan menentukan nama host yang akan menerima email.
Apabila config tidak menemukan nama host tersebut,
maka jalankan script
config-fast
# ./config-fast your.full.host.name
10. Kompilasi dan insstall paket ucspi-tcp dan daemontools
# cd /usr/local/src/ucspi-tcp-0.88
# make
# make setup check
# cd /usr/local/src/daemontools-0.61
# make
# make setup check
11. Buat file qmail boot script
Copy file /var/qmail/boot/home menjadi /var/qmail/rc
# cp /var/qmail/boot/home /var/qmail/rc
Jika jenis mailbox yang akan digunakan adalah maildir,
maka edit file
tersebut di atas dengan mengganti ./Mailbox menjadi
./Maildir/ dan hapus
splogger qmail. Dengan demikian isi /var/qmail/rc
menjadi:
#!/bin/sh
# Using splogger to send
the log through syslog.
# Using qmail-local to deliver
messages to ~/Mailbox by default.
exec env - PATH="/var/qmail/bin:$PATH"
\
qmail-start ./Maildir/
Pastikan bahwa file /var/qmail/rc itu executable.
12. Buat direktori untuk log qmail
# mkdir /var/log/qmail
13. Buat file start-up untuk system qmail dan tempatkan pada
/etc/rc.d/init.d/qmail. Isi file tersebut adalah:
#!/bin/sh
PATH=/var/qmail/bin:/usr/local/bin:/usr/bin:/bin
export PATH
case "$1" in
start)
echo -n "Starting qmail: svscan"
cd /var/qmail/supervise
env - PATH="$PATH" svscan &
echo $! > /var/run/svscan.pid
echo "."
;;
stop)
echo -n "Stopping qmail: svscan"
kill `cat /var/run/svscan.pid`
echo -n " qmail"
svc -dx /var/qmail/supervise/*
echo -n " logging"
svc -dx /var/qmail/supervise/*/log
echo "."
;;
stat)
cd /var/qmail/supervise
svstat * */log
;;
doqueue|alrm)
echo "Sending ALRM signal to qmail-send."
svc -a /var/qmail/supervise/qmail-send
;;
queue)
qmail-qstat
qmail-qread
;;
reload|hup)
echo "Sending HUP signal to qmail-send."
svc -h /var/qmail/supervise/qmail-send
;;
pause)
echo "Pausing qmail-send"
svc -p /var/qmail/supervise/qmail-send
echo "Pausing qmail-smtpd"
svc -p /var/qmail/supervise/qmail-smtpd
;;
cont)
echo "Continuing qmail-send"
svc -c /var/qmail/supervise/qmail-send
echo "Continuing qmail-smtpd"
svc -c /var/qmail/supervise/qmail-smtpd
;;
restart)
echo "Restarting qmail:"
echo "* Stopping qmail-smtpd."
svc -d /var/qmail/supervise/qmail-smtpd
echo "* Sending qmail-send SIGTERM and restarting."
svc -t /var/qmail/supervise/qmail-send
echo "* Restarting qmail-smtpd."
svc -u /var/qmail/supervise/qmail-smtpd
;;
cdb)
tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
chmod 644 /etc/tcp.smtp*
echo "Reloaded /etc/tcp.smtp."
;;
help)
cat <<HELP
stop -- stops mail service (smtp connections refused, nothing
goes out)
start -- starts mail service (smtp connection accepted, mail
can go out)
pause -- temporarily stops mail service connections accepted,
nothing leaves)
cont -- continues paused mail service
stat -- displays statusof mail service
cdb -- rebuild the tcpserver cdb file for smtp
restart -- stops and restarts smtp, sends qmail-send a TERM &
restarts it
doqueue -- sends qmail-send ALRM, scheduling queued messages for
delivery
reload -- sends qmail-send HUP, rereading locals and
virtualdomains
queue -- shows status of queue
alrm -- same as doqueue
hup -- same as reload
HELP
;;
*)
echo "Usage: $0 \
{start|stop|restart|doqueue|reload|stat|pause|cont|cdb|queue|help}"
exit 1
;;
esac
exit 0
14. Link file /etc/rc.d/init.d/qmail tersebut di atas pada beberapa
rc0.d
s/d
rc6.d direktori level
# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc0.d/K30qmail
# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc1.d/K30qmail
# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc2.d/S80qmail
# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc3.d/K30qmail
# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc4.d/S80qmail
# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc5.d/S80qmail
# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc6.d/K30qmail
15. Buat direktori supervise
# mkdir -p /var/qmail/supervise/qmail-send/log
# mkdir -p /var/qmail/supervise/qmail-smtpd/log
# chmod +t /var/qmail/supervise/qmail-send
# chmod +t /var/qmail/supervise/qmail-smtpd
16. Buat file /var/qmail/supervise/qmail-send/run dengan isi:
#!/bin/sh
exec /var/qmail/rc
17. Buat file /var/qmail/supervise/qmail-send/log/run dengan isi:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog
t \
/var/log/qmail
18. Buat file /var/qmail/supervise/qmail-smtpd/run dengan isi:
#!/bin/sh
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
exec /usr/local/bin/softlimit -m 2000000 \
/usr/local/bin/tcpserver -v -p -x /etc/tcp.smtp.cdb
\
-u $QMAILDUID -g $NOFILESGID
0 smtp /var/qmail/bin/qmail-smtpd 2>&1
--------------------------------------------------------------------------
Catatan: Jika usaha koneksi ke port 25 gagal atau
system remote tidak bisa
mengirim email kepada Anda, maka coba naikkan softlimit menjadi
3000000 atau 4000000
--------------------------------------------------------------------------
19. Buat file /var/qmail/supervise/qmail-smtpd/log/run dengan isi:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog
t \
/var/log/qmail/smtpd
20. Jadikan ke empat file run tersebut excutable:
# chmod 755 /var/qmail/supervise/qmail-send/run
# chmod 755 /var/qmail/supervise/qmail-send/log/run
# chmod 755 /var/qmail/supervise/qmail-smtpd/run
# chmod 755 /var/qmail/supervise/qmail-smtpd/log/run
21. Setup direktori log:
# mkdir -p /var/log/qmail/smtpd
# chown qmaill /var/log/qmail /var/log/qmail/smtpd
22. Buat qmail startup script executable dan link file tersebut ke direktori
di dalam path Anda:
# chmod 755 /etc/init.d/qmail
# ln -s /etc/rc.d/init.d/qmail /usr/local/sbin
23. Izinkan localhost untuk menginject mail lewat SMTP:
# echo '127.:allow,RELAYCLIENT=""' >>/etc/tcp.smtp
Jika Anda menginginkan relay untuk local network
Anda, maka tambahkan:
# echo '192.168.1.:allow,RELAYCLIENT=""' >>/etc/tcp.smtp
# /usr/local/sbin/qmail cdb
24. Hentikan dan hapus MTA Sendmail yang telah terinstal sebelumnya:
# /etc/rc.d/init.d/sendmail stop
# kill PID-of-Sendmail
# rpm -e --nodeps sendmail
Replace semua /usr/lib/sendmail dengan qmail
# mv /usr/lib/sendmail /usr/lib/sendmail.old
# ignore errors
# mv /usr/sbin/sendmail /usr/sbin/sendmail.old
# ignore errors
# chmod 0 /usr/lib/sendmail.old /usr/sbin/sendmail.old
# ignore errors
# ln -s /var/qmail/bin/sendmail /usr/lib
# ln -s /var/qmail/bin/sendmail /usr/sbin
25. Buat system alias:
# echo miral > /var/qmail/alias/.qmail-root
# echo miral > /var/qmail/alias/.qmail-postmaster
# ln -s .qmail-postmaster /var/qmail/alias/.qmail-mailer-daemon
# chmod 644 /var/qmail/alias/.qmail-root
/var/qmail/alias/.qmail-postmaster
26. Jika user yang menjadi anggota qmail adalah user yang terdaftar
di
/etc/passwd, maka buat Maildir pada setiap direktori
home user yang
bersangkutan:
# /var/qmail/bin/maildirmake ~miral/Maildir
# echo ./Maildir/ > ~miral/.qmail
# cd ~miral
# chown -R miral:miral /Maildir
# chown miral:miral .qmail
27. Jika semua user baru yang akan terdaftar pada /etc/passwd juga akan
menjadi anggota qmail, maka buat direktori Maildir
pada direktori
/etc/skel
# /var/qmail/bin/maildirmake /etc/skel/Maildir
# echo ./Maildir/ > /etc/skel/.qmail
28. Instalasi selesai, jalankan qmail yang baru saja Anda install
# /etc/rc.d/init.d/qmail start
Masukkan command ini pada file /etc/rc.d/rc.local,
jika Anda
menginginkan qmail berjalan secara otomatis
pada saat komputer Anda
boot.
29. Test hasil instalasi dengan mengikuti langkah yang dijelaskan pada
file
/var/qmail/doc/TEST.deliver dan /var/qmail/doc/TEST.receive
3. Instalasi Pop3 Server
------------------------
Qmail menyertakan sebuah POP3 Server yaitu
module qmail-pop3d. Tetapi
module yang merupakan daemon ini tidak terinstal dan terkonfigurasi
pada
proses intalasi qmail pada bagian 2 di atas. qmail-pop3d mensupport
berbagai
macam authentikasi melalui beberapa module atuhentikasi.
Sebuah qmail-pop3d server memiliki tiga buah
module, yaitu:
1. qmaip-popup, untuk mengambil nama user dan password
2. checkpassword, untuk authentikasi nama user dan password. Module
ini
terlepas dari paket qmail.
3. qmail-pop3d, yaitu berupa POP daemon
Cara kerja qmail pop3 server: qmail-popup dijalankan
melalui inetd atau
tcpserver, menerima koneksi pada port 110, yaitu port Pop3. Jika terjadi
koneksi pada port tersebut, maka qmail-popup menanyakan nama user dan
password. Kemudian module checkpassword (atau module authentikasi
alternatif lainnya) melakukan verifikasi namauser/password dan akhirnya
daemon qmail-pop3d akan aktif jika verifikasi berhasil.
3.1. Instalasi checkpassword
----------------------------
Checkpassword melakukan authentikasi terhadap
user yang terdapat pada
file /etc/passwd. Jadi user pada pop3 juga merupakan user yang terdaftar
pada system Unix Anda.
1. Dapatkan paket checkpassword terkini. Pada saat tulisan ini
dibuat versi
terakhir adalah checkpassword-0.81.tar.gz. Paket
ini dapat diambil pada
http://pobox.com/~djb/checkpwd.html.
2. Copy paket tersebut pada direktori /usr/local/src
3. Unpack:
# tar -zxvf checkpassword-0.81.tar.gz
4. Kompilasi:
# make
# make setup check
Hasil instalasi adalah /bin/checkpassword
5. Jalankan pop3 server dengan 2 metode:
a). Dari inetd.conf. Tambahkan baris berikut pada
file /etc/inetd.conf
# pop3 stream tcp nowait
root /var/qmail/bin/qmail-popup \
hostname.domain
/bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir
# kill -HUP PID-of-inetd,
untuk merestart inetd.
b). Dari tcpserver. Buat file /etc/rc.d/init.d/pop-start
dengan mode 755:
#!/bin/sh
env - PATH="/var/qmail/bin:/usr/local/bin"
\
tcpserver -v -R 0 pop3 /var/qmail/bin/qmail-popup
hostname.domain \
/bin/checkpassword
/var/qmail/bin/qmail-pop3d Maildir 2>&1 | \
/var/qmail/bin/splogger
pop3d &
Apabila Anda menginginkan
pop3 server berjalan secara otomatis pada
saat komputer boot, masukkan
baris /etc/rc.d/init.d/pop-start tersebut
di atas pada file /etc/rc.d/rc.local.
6. Test hasil instalasi dengan melakukan telnet localhost pada
port 110
# telnet localhost 110
3.2. Instalasi vpopmail
-----------------------
vpopmail adalah sekumpulan program yang mengotomatisasi
proses
pembuatan dan pemeliharaan user pop mail yang tidak berada pada file
/etc/passwd.
vpopmail merupakan module authentikasi yang dapat menggantikan
checkpassword.
vpopmail menggunakan sebuah user pada /etc/passwd untuk membuat banyak
user
virtual pop di bawah direktori ~vpopmail. User yang menjadi anggota
pop mail
adalah virtual user yang berada di bawah direktori ~vpopmail tersebut,
bukan
user pada file /etc/passwd. Vpopmail juga mampu membuat banyak virtualdomain
pada email server Anda.
Terdapat 2 paket tambahan pada vpopmail, yaitu:
1. qmailadmin, menyediakan interface web untuk melakukan administrasi
dan
pemeliharaan user pop, forwards, aliases, mailing list
dan autorespond.
2. sqwebmail, merupakan system email berbasis web seperti hotmail yang
membaca langsung dari Maildirs, local, NFS atau NAS dan autoresponders.
vpopmail beserta 2 paket tambahannya dapat
diambil pada
http://www.inter7.com/qmail. Semua paket tersebut adalah GPL.
Langkah instalasi vpopmail adalah:
1. Dapatkan paket vpopmail terkini. Pada saat tulisan ini dibuat
versi
terakhir adalah vpopmail-4.9.tar.gz. Paket ini dapat
diambil di
http://www.inter7.com/vpopmail.
2. Copy paket tersebut pada direktori /usr/local/src
3. Unpack:
# tar -zxvf vpopmail-4.9.tar.gz
4. Lakukan pengecekan ruang HDD Anda, untuk menentukan lokasi
vpopmail akan
ditempatkan:
# df
5. Tambahkan user dan group di bawah ini pada system Unix Anda:
# groupadd vchkpw
# useradd -g vchkpw vpopmail
Jika Anda ingin menempatkan direktori vpopmail selain
/home/vpopmail:
# useradd -g vchkpw -d /path/tempat/vpopmail/yang/diinginkan
vpopmail
6. Buat file ~vpopmail/etc/tcp.smtp
# mkdir ~vpopmail/etc
# echo "127.0.0.:allow,RELAYCLIENT=\"\"" > ~vpopmail/etc/tcp.smtp
Jika Anda menginginkan local network dapat merelay
smtp tambahkan baris
berikut:
# echo "192.168.1.:allow,RELAYCLIENT=\"\"" >> ~vpopmail/etc/tcp.smtp
7. Konfigurasi dan instalasi:
# ./configure
Jika Anda ingin menginstall vpopmail dengan authentikasi
melalui database
yang disimpan pada mysql, maka lakukan command berikut:
# ./configure --enable-mysql=y \
--enable-sqlincdir=/usr/local/mysql/include/mysql
\
--enable-sqllibdir=/usr/local/mysql/lib/mysql
\
--enable-default-domain=your_virtual_domain_name
(hanya jika Anda ingin
menjadikan sebuah virtual
domain sebagai domain primary/default.
Lihat penjelasan pada langkah
9b di bawah. Opsi ini tidak ada
hubungannya dengan mysql).
Diasumsikan Anda telah menginstall mysql
pada direktori
/usr/local/mysql.
Sebelum melakukan konfigurasi, terlebih
dahulu edit file vmysql.h.
Ubah nama host, user dan password yang
telah diberi izin mengakses
mysql. Biasannya adalah user root (bukan
root dari system Unix).
# make
# make install-strip
Apabila Anda akan melakukan rekonfigurasi dan reinstalisasi
lakukan
langkah berikut:
# make clean
# rm -rf config.cache
# ./configure (dengan opsi-opsi yang Anda inginkan)
# make
# make install-strip
8. Buat file start-up pop3 pada /etc/rc.d/init.d/pop-start dengan
mode 755:
#!/bin/sh
env - PATH="/var/qmail/bin:/usr/local/bin" \
tcpserver -u509 -g509 -H -R 0 pop3 \
/var/qmail/bin/qmail-popup hostname.domain
\
/home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d
Maildir &
Ganti u509 dan g509 dengan uid vpopmail dan gid vchkpw.
Ubah juga
hostname.domain dengan nama host dan domain Anda.
9. Buat pop user account dengan 2 metode berikut:
a). Tanpa virtual domain
# cd ~vpopmail/bin
# ./vadduser user1
# ./vadduser user2
# ...dst, sesuai dengan
jumlah user yang akan didaftarkan.
User yang dibuat akan ditempatkan
pada direktori ~vpopmail/users.
Perhatikan file /var/qmail/users/assign
untuk melihat proses
pengarahan
mail yang datang pada user1,
user2, dst tersebut.
Pada metode ini domain yang
digunakan adalah dari file
/var/qmail/control/locals.
Nama user untuk authentikasi user pop
adalah namauser.
b). Dengan virtual domain
# cd ~vpopmail/bin
# ./vadddomain virtual.domain.com
# ./vadduser user1@virtual.domain.com
# ./vadduser user2@virtual.domain.com
# ...dst, sesuai jumlah
user yang akan didaftarkan.
User ini akan ditempatkan
pada direktori
~vpopmail/domains/virtual.domain.com.
Perhatikan file
/var/qmail/users/assign
untuk melihat proses pengarahan
mail yang datang pada user1,
user2, dst tersebut. Pada metode ini nama
user untuk authentikasi
user pop adalah namauser%virtual_domain_name.
Anda dianjurkan menggunakan
virtual domain, sekalipun Anda akan
memanfaatkan satu domain
saja. Apabila virtual domain tersebut ingin
dijadikan primary domain
sehingga metode authentikasi seperti tanpa
virtual domain (domain local)
yaitu cukup dengan memberikan namauser
(tanpa menambahkan %virtual_domain_name),
lakukan langkah berikut:
# rm -f ~vpopmail/users
# ln -s ~vpopmail/domains/virtual_domain_name
~vpopmail/users
Langkah tersebut di atas
dapat dilakukan juga dengan menambahkan opsi
--enable-default-domain=your_virtual_domain_name
pada ./configure
(langkah 7). Kemudian lakukan
pembuatan virtual domain yang akan
dijadikan default dan pembuatan
virtual user seperti pada langkah 9b.
Anda tidak perlu lagi menghapus
direktori ~vpopmail/users dan membuat
softlink ke direktori ~vpopmail/domains/virtual_domain_name.
Metode
authentikasi pada pop server
Anda cukup dengan memasukkan nama user
saja tanpa diikuti dengan
%virtual_domain_name.
10. Start pop3 server dengan menjalankan file /etc/rc.d/init.d/pop-start
# /etc/rc.d/init.d/pop-start
Apabila Anda menginginkan pop3 server berjalan secara
otomatis pada
saat komputer boot, masukkan command /etc/rc.d/init.d/pop-start
pada
file /etc/rc.d/rc.local
11. Lakukan pengetesan dengan mengirim mail ke user-user yang telah
dibuat
tersebut, dan lihat hasilnya pada port 110 dengan
telnet:
# telnet localhost 110
12. Catatan tambahan: untuk administrasi virtual domain dan virtual
user
- Menghapus virtual domain
# ~vpopmail/bin/vdeldomain virtual_domain_name
- Megnhapus virtual user
# ~vpopmail/bin/vdeluser namauser@virtual_domain_name
(untuk user pada
virtual domain)
# ~vpopmail/bin/vdeluser namauser (untuk
user tanpa virtual domain)
- Mengubah password virtual user
# ~vpopmail/bin/vpasswd namauser@virtual_domain_name
(untuk user pada
virtual domain)
# ~vpopmail/bin/vpasswd namauser (untuk
user tanpa virtual domain)
4. Instalasi mailing-list manager
---------------------------------
Mailing-list manager yang khusus diperuntukkan
bagi qmail adalah ezmlm.
Langkah instalasi secara cepat (quick install) dan konfigurasi ezmlm
adalah:
1. Dapatkan paket ezmlm dan ezmlm-idx terkini. Pada saat tulisan
ini dibuat
versi terakhir adalah ezmlm-0.53.tar.gz dan ezmlm-idx-0.40.tar.gz.
Kedua
paket ini dapat diambil pada http://www.ezmlm.org
2. Copy kedua paket tersebut pada direktori /usr/local/src
3. Unpack:
# cd /usr/local/src
# tar -zxvf ezmlm-0.53.tar.gz
# tar -zxvf ezmlm-idx-0.40.tar.gz
4. Pindahkan semua direktori/usr/local/src/ezmlm-idx-0.40 ke direktori
/usr/local/src/ezmlm-0.53
# mv -f /usr/local/src/ezmlm-idx-0.40/* /usr/local/src/ezmlm-0.53/
5. Lakukan patch
# cd /usr/local/src/ezmlm-0.53
# patch < idx.patch
6. Kompilasi:
# make clean
# make; make man
7. Buat user eztest untuk keperluan testing ezmlm sebelum instalasi
# useradd eztest
8. Aktif sebagai user eztest
# su eztest
9. Lakukan pengetesan pada direktori /usr/local/src/ezmlm-0.53
% ./ezmlm-test
Perhatikan pesan error yang terjadi
10. Pindahkan lagi diri Anda sebagai root
% exit
11. Lakukan instalasi
# make setup
12. Buat mailing list
# cd /usr/local/bin/ezmlm
# ./ezmlm-make -utf ~alias/milis ~alias/.qmail-milis
milis host.domain
^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^
(1) (2)
(3) (4)
(5)
(1) option -u = hanya user tersubscribe
yang boleh mengirim email ke
mailing list
-t = akan dibuat file ~alias/milis/text/trailer yang akan
berisi footer pada message yang dikirim mailing list
-f = akan dibuat file ~alias/milist/prefik yang akan
berisi tambahan kata-kata sebelum subject email
yang dikirim mailing list
(2) direktori tempat miling-list berada
(3) nama file dot-qmail yang dibutuhkan
oleh qmail untuk menjalankan
ezmlm
(4) nama mailing-list yang dibuat yaitu
milis
(5) nama host tempat miling-list berada.
Jika mailing list yang akan dibuat berada
pada virtual domain, maka
metode pembuatannya adalah:
# ./ezmlm-make -utf ~vpopmail/domains/virtual_domain_name/milis
\
~vpopmail/domains/virtual_domain_name/.qmail-milis
\
milis virtual_domain_name
13. Ubah ownership user ke pemilik milis
# chown -R alias ~alias/milis
# chown -R vpopmail:vchkpw ~vpopmail/domains/virtual_domain_name/milis
,
jika mailing list berada pada virtual
domain.
14. Masukkan alamat email sebagai anggota miling-list milis
# ./ezmlm-sub ~alias/milis user1@host.domain
# ./ezmlm-sub ~alias/milis user2@host.lain.domain
# ./ezmlm-sub ~vpopmail/domains/virtual_domain_name/milis
\
user1@virtual.domain.com (u/ daftar
ke mailing list pada
virtual domaiain).
Pendaftaran ke milis dapat juga dilakukan dari mail
client (MUA: eudora,
outlook express, dll) dengan mengirim mail kosong
ke
milis-subscribe@host.domain atau milis-subscribe@virtual.domain.com
pada mailing list virtual domain.
15. Lakukan pengetesan pengiriman email dengan menggunakan user yang
telah
terdaftar (misal user1@host.domain)
$ echo subjet:test | /var/qmail/bin/qmail-inject
milis@host.domain
Pengetesan dapat pula dilakukan secara langsung
dari mail client user
kepada mailing list.
16. Lihat direktori ~alias/milis/archive apakah terdapat email yang
baru saja
masuk. Lihat pula mailbox masing-masing user yang
telah terdaftar pada
milis.
17. Jika ada masalah lakukan troubleshooting dengan mengamati file
/var/log/qmail/current
# tail -f /var/log/qmail/current
18. Untuk memperbaiki proses reply ke miling-list terhadap email yang
telah
diterima oleh miling-list dari salah satu usernya,
lakukan langkah berikut:
Edit file /var/qmail/alias/milis/headerremove menjadi:
return-path
teturn-receipt-to
content-length
reply-to
Kemudian tambahkan baris berikut pada file
/var/qmail/alias/milis/headeradd:
raply-to:milis@host.domain
5. Instalasi sqwebmail
----------------------
Sqwebmail adalah MUA, Mail User Agent dengan interface
web seperti
hotmail.
Sqwebmail dapat bekerja dengan baik bersama vpopmail. Sqwebmail mendukung
banyak tipe authentikasi seperti authentikasi via /etc/passwd konvensional,
shadow,
PAM, vchkpw, LDAP, mysql dan userdb. Pada tulisan ini hanya digunakan
metode
authentikasi melalui vchkpw yang merupakan bawaan paket vpopmail.
Langkah instalasi dan konfigurasi sqwebmail adalah:
1. Dapatkan paket sqwebmail terkini. Pada saat tulisan ini dibuat
versi terakhir adalah sqwebmail-1.0.tar.gz
2. Copy paket tersebut pada direktori /usr/local/src
3. Unpack:
# cd /usr/local/src
# tar -zxvf sqwebmail-1.0.tar.gz
4. Kompilasi dan instalasi
# cd /usr/local/src/sqwebmail-1.0
# ./configure --without-authpam --without-authuserdb
--without-authpwd \
--without-authshadow --without-authldap
--without-authmysql \
--enable-webpass=no
Jika Anda telah menginstall vpopmail dengan opsi
mysql maka lakukan:
# env LIBS="-L/usr/local/mysql/lib/mysql -lmysqlclient"
./configure \
--without-authpam --without-authuserdb
--without-authpwd
--without-authshadow \
--without-authldap --without-authmysql
--enable-webpass=vpopmail \
--enable-logincache --with-cachedir
Sebelumnya edit file authlib/preauthvchkpw.c. Comment
(tambahkan /* dan */)
diantara vclose(); pada baris 75, sehingga menjadi
/* vclose(); */
Langkah pengubahan source code di atas tidak perlu
dilakukan jika Anda menginstal
vpopmail-4.9.3a.tar.gz bersama dengan sqwebmail-1.0.tar.gz.
# make configure-check
# make
# make check
# make install-strip
Jika Anda ingin merekompilasi dan reinstalasi lakukan
urutan langkah
berikut:
# make clean
# rm -rf config.cache
# ./configure (dengan opsi yang Anda inginkan)
# make configure-check
# make
# make check
# make install-strip
5. Jika Anda ingin agar domain/virtual domain yang Anda miliki
dijadikan
sebagai default domain sehingga return address pada outgoing
message diarahkan ke domain
yang bersangkutan, maka buat file hostname yang isinya nama domain/virtual
domain tersebut pada direktori
/usr/local/share/sqwebmail.
6. Buat cronjob untuk menghapus cache
# su -c "/usr/local/share/sqwebmail/cleancache.pl"
bin
7. Jalankan command berikut untuk memulai sqwebmail
# /usr/local/libexec/authlib/authdaemond start
Masukkan baris di atas pada file /etc/rc.d/rc.local,
jika Anda
menginginkan sqwebmail berjalan otomatis pada saat komputer boot.
6. Instalasi autorespond
~~~~~~~~~~~~~~~~~~~~~~~~~
Autorespond adalah paket/aplikasi email yang berfungsi
seperti answering
machine pada sistem telephony. Misalkan seseorang mengirim email kepada
help@domain.com, maka dengan menggunakan autorespond email orang tersebut
secara otomatis akan dijawab seketika oleh help@domain.com. Bentuk pesan
yang diberikan oleh help@domain.com dapat dibuat menggunakan kalimat sendiri
yang diinginkan.
Langkah instalasi dan konfigurasi:
1. Dapatkan paket autorespond terkini. Pada saat tulisan ini dibuat
versi terakhir adalah autorespond-1.0.0.tar.gz
2. Copy paket tersebut pada direktori /usr/local/src
3. Unpack:
# cd /usr/local/src
# tar -zxvf autorespond-1.0.0.tar.gz
4. Kompilasi dan instalasi
# cd /usr/local/src/autorespond-1.0.0
# gcc -Wall -o autorespond autorespond.c
# cp /usr/local/src/autorespond-1.0.0/autorespond
/usr/local/bin/autorespond
5. Penggunaan
- Buat sebuah file .qmail-help dpada direktori /var/qmail/alias
(untuk
local domain) atau pada direktori ~vpopmail/domains/your_virtual_domain
(untuk virtual
domain), dengan isi sebagai berikut:
|autorespond 1000 5 help_message
help_autorespond
&your-email-address@domain.com
- Informasi untuk Anda, format argumen autorespond
adalah:
time -> amount of
time to consider a message (in seconds)
num -> maximum
number of messages to allow within time seconds
message -> the filename of the message
to send
dir -> the directoru
to hold the log messages
- Isi file .qmail-help di atas menyatakan bahwa:
This will allow up to five messages
within about 3 hours.
- Buat sebuah file help_message pada /var/qmail/alias
(domain local) atau
pada ~vpopmail/domains/your_virtual_domain
(untuk virtual domain), dengan isi sebagai
berikut:
From: Support
<help@domain.com>
Subject: Help
Response
This is a response
to your help request.
Below is a copy
of the message we received.
--------
- Buat sebuah direktori help_autorespond pada pada
/var/qmail/alias (domain local)
atau pada ~vpopmail/domains/your_virtual_domain
(untuk virtual domain).
Direktori ini digunakan untuk mencatat
log dari pesan yang dikirimkan.
- Jangan lupa ubah owhnership semua file dan direktori
yang Anda buat
(alias untuk direktori ~alias dan vpopmail:vchkpw
untuk direktori virtual domain).
7. Instalasi qmailadmin
~~~~~~~~~~~~~~~~~~~~~~~
Qmailadmin adalah paket/aplikasi yang sangat berguna
bagi mail
administrator. Aplikasi ini merupakan sebuah interface web untuk melakukan
administrasi terhadap virtual domain, user dalam virtual domain, email
forwarding, autorespond, dan mailing list. Untuk menginstal qmailadmin,
Anda terlebih dahulu telah menginstal vpopmail, ezmlm dan autorespond.
Langkah instalasi yang akan dijelaskan di bawah mengasumsikan bahwa vpopmail
yang telah Anda instal menggunakan opsi enable mysql=y.
Langkah instalasi dan konfigurasi adalah:
1. Dapatkan paket qmailadmin terkini. Pada saat tulisan ini dibuat
versi terakhir adalah qmailadmin-0.35.tar.gz
2. Copy paket tersebut pada direktori /usr/local/src
3. Unpack:
# cd /usr/local/src
# tar -zxvf qmailadmin-0.35.tar.gz
4. Kompilasi dan instalasi
# cd /usr/local/src/qmailadmin-0.35
# make clean
# env LIBS="-L/usr/local/mysql/lib/mysql -lmysqlclient"
./configure
# make
# make install
5. Jalankan web browser Anda dan buka http://localhost/cgi-bin/qmailadmin
--------------------------------------------------------------------------------------------
Selamat mencoba
miral@divnet.telkom.co.id