Dokumen ini merupakan langkah-langkah yang dilakukan 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. Instalasi qmail dapat dilakukan pada mesin Linux Redhat 6.2 dan 7.x
Sangat direkomendasikan memiliki sebuah DNS server sebagai tempat registrasi Mail Exchanger (MX). Jika tidak memilikinya, dapat dilakukan registrasi gratis pada http://www.dyndns.org.
Sangat dianjurkan terhubung ke internet secara leased-line. Qmail dirancang untuk konektivitas jaringan yang baik, jadi jangan gunakan qmail pada 28,8 kbps dial-up. Untuk koneksi yang agak buruk qmail menyediakan serialmail.
Langkah instalasi dan konfigurasi Qmail
Sebelum 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 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 <
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.
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
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-hardquota=50000000
--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
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
Keterangan :
option –u = hanya user tersubscribe yang boleh mengirim email ke mailing list
option –t = akan dibuat file ~alias/milis/text/trailer yang akan berisi footer pada message yang dikirim mailing list
option -f = akan dibuat file ~alias/milist/prefik yang akan berisi tambahan kata-kata sebelum subject email yang dikirim mailing list
~alias/milis = direktori tempat miling-list berada
~alias/.qmail-milis = nama file dot-qmail yang dibutuhkan oleh qmail untuk menjalankan ezmlm
milis = nama mailing-list yang dibuat yaitu milis
host.domain = 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
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