Qmail Mysql Squirrelmail
เอาโปรแกรมที่ไม่ใช้ออกโปรโตคอลที่เกี่ยวข้องในการใช้งานเม ลหลักๆ แล้ว จะมีดังนี้ SMTP, POP3, IMAP.ซึ่งหากใช้ลีนุกซ์ตระกูล RH จำเป็นต้องเอา package บางอย่างออกก่อน เพื่อไม่ให้ทำงานซ้ำกัน.
การเอา SMTP Server ออก (ปกติจะเป็น sendmail) ทำได้โดย
$rpm -e --nodeps sendmail
ขั้นต่อไป download โปรแกรมต่าง ๆ เพื่อที่จะนำมาติดตั้ง, โดยเก็บไว้ที่ /var/src/tar ส่วนซอร์สโค้ดที่แตกออกมาแล้ว จะเก็บไว้ที่ /var/src
wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
wget http://www.zrius.com/software/netqmail-1.05.tar.gz
wget http://www.zrius.com/software/qmail-toaster-0.6-1.patch.bz2
wget http://www.zrius.com/software/chkuser-0.6.patch
wget http://qmail.ixip.net/download/vpopmail-5.4.10.tar.gz
wget http://www.zrius.com/software/courier-imap-3.0.4.tar.bz2
wget http://www.zrius.com/software/squirrelmail-1.4.2-zrius-version.tar.gz
wget http://www.zrius.com/software/toaster-scripts-0.6.tar.gz
wget http://www.zrius.com/software/Mail-SpamAssassin-2.63.tar.gz
wget http://www.zrius.com/software/clamav-0.74.tar.gz
wget http://www.zrius.com/software/tnef-1.2.3.1.tar.gz
wget http://www.zrius.com/software/maildrop-1.6.3.tar.bz2
wget http://www.zrius.com/software/qmail-scanner-1.22.tgz
daemontools
เป็น tools เพื่อใช้สำหรับ start, stop, monitor UNIX services.
สำหรับ qmail จะใช้ daemontools ในการ start, stop, monitor service ที่เกี่ยวข้อง คือ qmail-send, qmail-smtpd และ qmail-pop3d.
ขั้นตอนการติดตั้ง:
tar xzf /var/src/tar/daemontools-0.76.tar.gz
cd ~/admin/daemontools-0.76
patch -p1 < /var/src/netqmail-1.05/other-patches/daemontools-0.76.errno.patch
package/install
ถ้าไม่มีอะไรผิดพลาด เมื่อใช้คำสั่ง ps ax ควรจะเห็น บรรทัดดังต่อไปนี้
'/bin/sh /command/svscanboot' และ 'svscan /service'
ucspi-tcp
ในโปรแกรม ucspi-tcp จะมีคำสั่ง tcpserver ซึ่งในที่นี้ จะใช้สำหรับ กำหนดสิทธิ์การส่งเมล ว่าจะให้ IP ใดบ้าง ใช้เครื่องนี้ส่งเมล (relay) ได้
ขั้นตอนการติดตั้ง:
cd /var/src/
tar -xzf tar/ucspi-tcp-0.88.tar.gz
cd ucspi-tcp-0.88
patch -p1 < /var/src/netqmail-1.05/other-patches/ucspi-tcp-0.88.errno.patch
make
make setup check
Vpopmail
Vpopmail เป็นโปรแกรมที่ช่วยจัดการเรื่อง user และ domain ที่จะใช้งานเมลของ qmail สามารถจัดการให้สามารถใช้งานเมลได้หลายโดเมนพร้อมกันบนเครื่องเดียว โดยใช้เพียง IP เดียว และไม่จำเป็นต้องมี system user (/etc/passwd) ซึ่งเราจะใช้ร่วมกับ Mysql
ขั้นตอนการติดตั้ง:
tar -xzf vpopmail-5.4.10.tar.gz
cd vpopmail-5.4.10
./configure --enable-auth-module=mysql --enable-valias
make
make install-strip
echo '127.:allow,RELAYCLIENT="",QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"' > /etc/tcp.smtp
echo '10.0.0.:allow,RELAYCLIENT="",QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"' > /etc/tcp.smtp
echo '192.168.0.:allow,RELAYCLIENT="",QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"' > /etc/tcp.smtp
echo ':allow,QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"' > /etc/tcp.smtp
tcprules tcp.smtp.cdb tcp.smtp.tmp < tcp.smtp
Courier-IMAP
Courier-IMAP เป็น IMAP Server ที่ support การเก็บเมล์แบบ Maildir ติดตั้งเพื่อให้ใช้งาน WebMail ได้
ขั้นตอนการติดตั้ง:
tar -xjf courier-imap-3.0.4.tar.bz2
cd courier-imap-3.0.4
./configure --with-redhat --disable-root-check
make
make install
make install-configure
ปรับแต่ง:
แก้ไขไฟล์ /usr/lib/courier-imap/etc/authdaemonrc
ในส่วนของ authmodulelist="..." ให้เป็น authmodulelist="authvchkpw"
แก้ไขไฟล์ /usr/lib/courier-imap/etc/imapd
ในส่วนของ 'IMAPDSTART=NO' ให้เป็น 'IMAPDSTART=YES'
/etc/rc.d/init.d/courier-imap start
SquirrelMail
SquirrelMail เป็น web based IMAP client หรือ WebMail นั่นเอง พัฒนาขึ้น ด้วยภาษา PHP
ขั้น ตอนการติดตั้ง:
tar -xzf /var/src/tar/squirrelmail-1.4.2-zrius-version.tar.gz
cd squirrelmail
chown -R nobody:nobody /data/
Anti Spam และ Anti Virus
ตอนนี้คุณมี mail server ที่ทำงานได้อย่างสมบูรณ์แล้ว ขึ้นตอนต่อไป จะเป็นการเพิ่มความสามารถ ให้กับ mail server ของเรา คือให้มันสามารถ scan virus ได้ และตรวจสอบเมล์ ว่าเป็น spam หรือไม่ ด้วย qmail-scanner + clam anti-virus + spam assassin
SpamAssassin
SpamAssassin เป็นโปรแกรมที่ใช้สำหรับตรวจสอบว่าเมลที่รับมานั้น น่าจะเป็น spammail หรือไม่ โดยใช้การวิเคราะห์ header, subject ข้อความ ฯลฯ แล้วให้คะแนนกับเมลนั้น ถ้าหากเมลฉบับไหน มีคะแนนมากกว่า ค่าที่ตั้งไว้ (ค่า default = 5) จะถือว่าเป็น spammail
ขั้นตอนการติดตั้ง:
tar xzf tar/Mail-SpamAssassin-2.63.tar.gz
perl Makefile.PL
make
make install
groupadd spamd
useradd -g spamd spamd
cp spamd/redhat-rc-script.sh /etc/rc.d/init.d/spamd
chmod 700 /etc/rc.d/init.d/spamd
chkconfig --add spamd
ปรับ แต่ง:
แก้ไขไฟล์ /etc/sysconfig/spamassassin ให้เป็นดังนี้
# Hint : if you want to enable SpamAssassin debugging
# (the debug output goes to /var/log/maillog) then use :
# SPAMDOPTIONS="-x -u spamd -H /home/spamd -d -D"
# Don't leave debugging turned on unnecessarily though,
# because it will slow down a busy server.
#
# Otherwise, for normal operation (debugging disabled) use :
SPAMDOPTIONS="-x -u spamd -H /home/spamd -d"
/etc/rc.d/init.d/spamd start
qmail-scanner
qmail-scanner เป็นโปรแกรมเสริมให้ qmail มีความสามารถในการ scan virus และตรวจสอบ spammail ได้ (ผ่านโปรแกรม anti virus และ spam assassin) และยังสามารถ block การส่ง attach file ตามนามสกุลของไฟล์ได้ เช่น *.VBS, *.EXE เป็นต้น
ติด ตั้งโปรแกรมที่ qmail-scanner ต้องการก่อน ซึ่งมีดังนี้
TNEF unpacker
tar xzf tar/tnef-1.2.3.1.tar.gz
./configure
make
make install
ReformatMIME (from the Maildrop package)Info:
tar xjf tar/maildrop-1.6.3.tar.bz2
./configure
make
make install-strip
make install-man
Qmail-scanner
tar xzf tar/qmail-scanner-1.22.tgz
groupadd qscand
useradd -c "Qmail-Scanner Account" -g qscand -s /bin/false qscand
./configure
Qmail เป็น MTA (Mail Transfer Agent) ที่เป็นที่นิยมใช้มากที่สุดตัวหนึ่งก็ว่าได้. ด้วยความที่มัน Stable เอามากๆ, ถึงขนาดทางผู้จดทำ จะไม่ทำการ release เวอร์ชันใหม่ๆ ออกมาแล้ว.
เพื่อ ให้เข้าใจถึงการทำงานของ Qmail มากยิ่งขึ้น. คุณสามารถดูแนวคิด การทำงาน ได้จาก "Qmail big picture".
นอกจากนั้น คุณยังสามารถเพิ่มประสิทธิภาพการทำงานของ Qmail ได้โดย patch ต่างๆ.
#ขั้น ตอนการติดตั้ง Qmail
#mkdir /var/qmail
<>// we need to add the vpopmail user here
#groupadd nofiles
#useradd -g nofiles -d /var/qmail/alias alias
#useradd -g nofiles -d /var/qmail qmaild
#useradd -g nofiles -d /var/qmail qmaill
#useradd -g nofiles -d /var/qmail qmailp
#groupadd qmail
#useradd -g qmail -d /var/qmail qmailq
#useradd -g qmail -d /var/qmail qmailr
#useradd -g qmail -d /var/qmail qmails
#groupadd -g 89 vchkpw
#useradd -u 89 -g vchkpw vpopmail
#cd /var/src
#tar -xzf tar/toaster-scripts-0.6.tar.gz
#cd netqmail-1.05
#bunzip2 -c ../tar/qmail-toaster-0.6-1.patch.bz2 | patch -p0
#cd netqmail-1.05
#make
#make setup check
// turn on checking for valid dns envelope sender
#echo 1 > /var/qmail/control/mfcheck
#(cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root)
#chmod 644 ~alias/.qmail*
//on the next line replace "full.hostname" with the hostname of your mail server
./config-fast full.hostname
Configure:
#cd /var/src
#cp toaster-scripts-0.6/rc /var/qmail/rc
#chmod 755 /var/qmail/rc
#mkdir /var/log/qmail
#echo ./Maildir/ >/var/qmail/control/defaultdelivery
#cp toaster-scripts-0.6/qmailctl /var/qmail/bin/
#chmod 755 /var/qmail/bin/qmailctl
#ln -s /var/qmail/bin/qmailctl /usr/bin
#ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
#ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
//Now create the supervise directories/scripts for the qmail services:
#mkdir -p /var/qmail/supervise/qmail-send/log
#mkdir -p /var/qmail/supervise/qmail-smtpd/log
#mkdir -p /var/qmail/supervise/qmail-pop3d/log
#mkdir -p /var/qmail/supervise/qmail-pop3ds/log
#chmod +t /var/qmail/supervise/qmail-send
#chmod +t /var/qmail/supervise/qmail-smtpd
#chmod +t /var/qmail/supervise/qmail-pop3d/log
#chmod +t /var/qmail/supervise/qmail-pop3ds/log
#cp /var/src/toaster-scripts-0.6/send.run #/var/qmail/supervise/qmail-send/run
#cp /var/src/toaster-scripts-0.6/send.log.run #/var/qmail/supervise/qmail-send/log/run
#cp /var/src/toaster-scripts-0.6/smtpd.run #/var/qmail/supervise/qmail-smtpd/run
#cp /var/src/toaster-scripts-0.6/smtpd.log.run #/var/qmail/supervise/qmail-smtpd/log/run
#cp /var/src/toaster-scripts-0.6/pop3d.run #/var/qmail/supervise/qmail-pop3d/run
#cp /var/src/toaster-scripts-0.6/pop3d.log.run #/var/qmail/supervise/qmail-pop3d/log/run
#cp /var/src/toaster-scripts-0.6/pop3ds.run #/var/qmail/supervise/qmail-pop3ds/run
#cp /var/src/toaster-scripts-0.6/pop3ds.log.run #/var/qmail/supervise/qmail-pop3ds/log/run
#echo 20 > /var/qmail/control/concurrencyincoming
#chmod 644 /var/qmail/control/concurrencyincoming
#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
#chmod 755 /var/qmail/supervise/qmail-pop3d/run
#chmod 755 /var/qmail/supervise/qmail-pop3d/log/run
#chmod 755 /var/qmail/supervise/qmail-pop3ds/run
#chmod 755 /var/qmail/supervise/qmail-pop3ds/log/run
#mkdir -p /var/log/qmail/smtpd
#mkdir -p /var/log/qmail/pop3d
#mkdir -p /var/log/qmail/pop3ds
#chown -R qmaill /var/log/qmail
//allow daemontools to start qmail
#ln -s /var/qmail/supervise/qmail-send #/var/qmail/supervise/qmail-smtpd /service
//verify that it's running with qmailctl
#sleep 5
#qmailctl stat
#ติด ตั้ง Vpopmail
#ติดตั้ง Mysql
#แก้ไข ที่ไฟล์ /etc/rc.local
/usr/local/bin/tcpserver -v -H -R -x /etc/tcp.smtp.cdb -c80 -u503 -g502 0 smtp /usr/local/bin/rblsmtpd -r list.dsbl.org -r relays.ordb.org -r bl.spamcop.net /var/qmail/bin/qmail-smtpd admin.issp-thailand.com /var/vpopmail/bin/vchkpw /bin/true 2>&1 | /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t n100 s1000000 /var/log/qmail-smtp &amp;amp;
/var/qmail/rc &
แก้ไข ไฟล์ /usr/lib/courier-imap/etc/authdaemonrc
#authmodulelist="..."
authmodulelist="vchkpw"
#copy ไฟล์ vchkpw
$cp /var/vpopmail/bin/vchkpw /usr/lib/courier-imap/libexec/authlib/
$cp /var/vpopmail/bin/vchkpw /usr/lib/courier-imap/libexec/var/
ไม่มีความคิดเห็น:
แสดงความคิดเห็น