Qmail toaster Chinese version
By Funbsd
Last update date: August 9, 2004
Foreword
What?
function list
Reference
Installation preparation
Installation Environment
Check DNS settings
Uninstall existing mail system
Download software
install software
Daemontools
UCSPI-TCP
Qmail
vpopmail
Courier-IMAP
AutoRespond
ezmlm
Qmailadmin
Squirrelmail
test
Test qmailadmin
Test Squirrelmail
Test POP3
Test IMAP
Optional installation
QMail Scanner
Qmailadmin Limits
iGenus
-------------------------------------------------- ------------------------------
Foreword
What?
What is TOASTER? I don't know: (, Chinese did not learn well, English did not learn well.
English explanation: http://cr.yp.to/qmail/toaster.html
function list
SMTF Server: SMTP-Auth Certification (Plain, Login, CRAM-MD5), TLS (SSL) support, virus and spam detection
POP3 Server: CRAM-MD5, APOP, and SSL Support
IMAP Server: TLS (SSL) Support
automatic response
Mailing Lists
Web management
Webmail
Reference
English original: http://shupp.org/toaster
FreeBSD version: qmail freebsd toaster (mysql)
Qmail reference: http://www.lifewithqmail.org
Page
-------------------------------------------------- ------------------------------
Installation preparation
Installation Environment
Here, the Apache, MySQL is installed in the / usr / local directory, and the PHP configuration file is in the apache / conf directory.
Also confirm that the following software has been installed:
RPM -Q GDBM
RPM -Q GDBM-DEVEL
RPM -Q OpenSSL
RPM -Q OpenSSL-DEVEL
RPM -Q Stunnel
RPM -Q KRB5-Devel
I was successful under Redhat 9 and Redhatas 3.2, and other systems have not tried it.
Check DNS settings
Before starting, make sure the DNS MX record is set correctly. For example, "Funbsd.org" is used as a mail domain, and the MX record is tested:
Under Linux:
# host -t mx funbsd.org
Funbsd.org. Mail is handled by 10 mail.funbsd.org.
# Host -t a mail.funbsd.org
Mail.funbsd.org. Has Address XXX.XXX.XXX.XXX
Under Windows:
C: /> nslookup
DEFAULT Server: ns.funbsd.org
Address: xxx.xxx.xxx.xxx
> set type = mx
> funbsd.org
Funbsd.org mx preference = 10, mail exchanger = mail.funbsd.org
Mail.funbsd.org Internet address = xxx.xxx.xxx.xxx
> EXIT
Uninstall existing mail system
Confirm that there is no SMTP / POP / IMAP service is running: /etc/init.d/sendmail stop
Netstat -na | GREP 25
Netstat -na | GREP 110
Netstat -na | GREP 143
NTSYSV
Delete existing SMTP / POP / IMAP software:
RPM-E --Nodeps Sendmail
RPM -E --Nodeps Postfix
Download software
I usually put the software below / home / pkg, according to personal habits
MKDIR / HOME / PKG
CD / Home / PKG
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://shupp.org/software/netqmail-1.05.tar.gz
Wget http://shupp.org/software/toaster-scripts-0.6.tar.gz
Wget http://shupp.org/patches/qmail-toaster-0.6-1.patch.bz2
Wget http://easynews.dl.sourceForge.Net/SourceForge/vpopmail/vpopmail-5.4.5.tar.gz
Wget http://shupp.org/patches/chkuser-0.6.patch
Wget http://shupp.org/patches/chkuser-0.6.mysql.patch
Wget http://shupp.org/software/courier-imap-2.2.2.20040207.tar.bz2
Wget http://shupp.org/software/autorespond-2.0.4.tar.gz
Wget http://ezmlm.org/archive/ezmlm-0.53.tar.gz
Wget http://ezmlm.org/archive/0.42/EZMLM-IDX-0.42.tar.gz
Wget http://optusnet.dl.sourceForge.Net/SourceForge/qmailadmin/qmailadmin-1.2.2.tar.gz
Wget http://shupp.org/software/squirrelmail-1.4.2.tar.bz2
Wget http://shupp.org/software/quota_usage-1.2.tar.gz
Tar -xzf Netqmail-1.05.tar.gz
CD NetQmail-1.05
./collate.sh
Note: ./ Collate.sh This step is not to forget
Page
-------------------------------------------------- ------------------------------
install software
Daemontools
Daemontools is a tool to collect management UNIX processes. Use it to listen to qmail-send, qmail-smtpd, qmail-pop3d.
Reference: http://cr.yp.to/daemontools.html
installation:
MKDIR / PACKAGE
CHMOD 1755 / PACKAGE
CD / package
Tar -zxvf /Home/pkg/daemontools-0.76.tar.gz
CD admin / daemontools-0.76
Patch -p1
Package / Install
# Verify that daemontools have been running normal: PS AX | GREP SVSCAN
UCSPI-TCP
UCSPI-TCP includes TCPServer and TCPClient, a command line tool to create a Client-Server application.
Reference: http://cr.yp.to/ucspi-tcp.html
installation:
CD / Home / PKG
TAR ZXVF UCSPI-TCP-0.88.tar.gz
CD UCSPI-TCP-0.88
Patch -p1
Make
Make setup check
Page
-------------------------------------------------- ------------------------------
Qmail
Reference: http://www.qmail.org
This TOASTER patch is a combination of these patches:
SMTP AUTH 0.4.2
qmail-queue (to allow for virus scanners)
MAildir Patch
Support Oversize DNS Packets (Not Necessary if you use dnscache)
Mfcheck (Check That The Envelope Sender Has A DNS Entry)
Tarpit delay
QRegex (Regular Expression Matching in Badmailfrom and Badmailto)
BIG Concurrency (SET the spawn limited above 255)
installation:
MKDIR / VAR / Qmail
GroupAdd Nofiles
UserAdd -g Nofiles -d / var / qmail / alias alias
UserAdd -g nofiles -d / var / qmail qmails
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
# 在 here to put vpopmail users
GroupAdd -g 89 vchkpw
UserAdd -u 89 -g vchkpw vpopmail
CD / Home / PKG
Tar -xzf toaster-scripts-0.6.tar.gz
CD Netqmail-1.05 /
Bunzip2 -c ../qmail-toaster-0.6-1.patch.bz2 | Patch -p0
CD NetQmail-1.05
# Note: On RedHat 9, you need to link an incrude file for the TLS patch:
Ln -s /usr/kerberos/include/com_err.h /usr/kerberos/include/krb5.h /
/usr/kerberos/include/profile.h / usr / include /
Make
Make setup check
# With your own hostname instead of the following mail.funbsd.org
./config-fast mail.funbsd.org
CD / VAR / QMAIL / Alias
Touch .qmail-postmaster .qmail-mailer-daemon .qmail-root
CHMOD 644 /VAR/QMAIL/Alias/.qmail*cd -
Echo 1> / VAR / QMAIL / Control / MFCheck
echo ./mailDir/> / var / qmail / control / defaultdelivery
Make CERT
# Press prompt to enter company information
Make tmprsadh
# 注: You may have to wait for a while
# Use "crontab -e" to add the following in crontab, update Temp KEYS every night
01 01 * * * / var / qmail / bin / update_tmprsadh> / dev / null 2> & 1
Create a service:
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 /Home/pkg/toaster-scripts-0.6/send.run / var / qmail / supervise / qmail-send / run
Cp /Home/pkg/toaster-scripts-0.6/send.log.run / var / qmail / supervise / qmail-send / log / run
CP /HOME/pkg/toaster-scripts-0.6/smtpd.run / var / qmail / supervise / qmail-smtpd / run
Cp /Home/pkg/toaster-scripts-0.6/smtpd.log.run / var / qmail / supervise / qmail-smtpd / log / run
Cp /Home/pkg/toaster-scripts-0.6/pop3d.run / var / qmail / superVise / qmail-pop3d / run
CP /Home/pkg/toaster-scripts-0.6/pop3d.log.run / var / qmail / supervise / qmail-pop3d / log / run
Cp /Home/pkg/toaster-scripts-0.6/pop3ds.run / var / qmail / supervise / qmail-pop3ds / run
Cp /Home/pkg/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 / RunchMod 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
Start the script:
CP /Home/pkg/toaster-scripts-0.6/rc / var / qmail /
CP /HOME/pkg/toaster-scripts-0.6/QmailctL / VAR / QMAIL / BIN /
CHMOD 755 / VAR / QMAIL / RC
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
# Use daemontools to launch qmail-send and qmail-smtpd
LN -S / VAR / QMAIL / SuperVise / qmail-send / var / qmail / supervise / qmail-smtpd / service
command:
# 启动, stop, restart, see queue, etc.
QMailctl Start | Stop | Rest | DOQUE | FLUSH | RELOAD | Stat | Pause | Cont | CDB | Queue | Help
# Check service
NetStat -an | GREP 25
PS-EF | GREP QMAIL
PS-EFL | GREP "Service Errors" | GREP -V GREP
Page
-------------------------------------------------- ------------------------------
vpopmail
vpopmail is a virtual domain management package based on qmail
Reference: http://vpopmail.sf.net/
Vpopmail users and groups have been established in front of us
Configuration:
MKDIR ~ VPOPMAIL / ETC
# Set the default domain
Echo "Funbsd.org"> ~ VPOPMAIL / etc / defaultdomain
# Set the SMTP rule
Echo '127.0.0.1: ALLOW, RELAYCLIENT = ""> ~ vpopmail / etc / tcp.smtp
CD ~ vpopmail / etc; tcprules tcp.smtp.cdb tcp.smtp.tmp # Set mySQL information Echo "Localhost | 0 | VPOPUSER | VPOPWD | VPOPMAIL"> ~ vpopmail / etc / vpopmail.mysql CHMOD 640 ~ VPOPMAIL / ETC / VPOPMAIL.MYSQL Chown -R vpopmail.vchkpw ~ vpopmail / etc # Add VPOPMAIL in MySQL / usr / local / mysql / bin / mysql -uroot --password = "mysqlpwd" CREATE DATABASE VPOPMAIL; Grant SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON VPOPMAIL. * To vpopuser @ localhost identified by 'vpoppwd'; flush privilege Quit installation: CD / Home / PKG / TAR ZXVF VPOPMAIL-5.4.5.TAR.GZ CD VPOPMAIL-5.4.5 # Do not bring database support # ./configure / # --enable-logging = V # With database support ./configure / --Disable-clear-passwd / --enable-auth-module = mysql / --enable-incdir = / usr / local / mysql / incrude / --enable-libdir = / usr / local / mysql / lib / --Disable-Many-Domains / --enable-mysql-logging / --enable-mysql-limiteds / --enable-valias / --enable-logging = V Make Make Install-Strip management: Echo 'export path = $ path: / home / vpopmail / bin' >> / etc / profile Source / ETC / PROFILE # 添 域 Vadddomain Funbsd.org Funpwd # 参照 /Home/vpopmail/etc/vlimits.default # Set default_quota, default_maxmsgcount, etc. with MySQL-Front # Add user Vadduser -q 104857600s Xy.wang@funbsd.org 1234 VMODUSER-C Wang Xiaoya Xy.wang@funbsd.org # Set the mailbox capacity to 90% warning information Vi ~ vpopmail / domains / .quotawarn.msg From: XYZ Mailbox Administrator Reply-to: Postmaster@funbsd.org TO: Mailbox user Subject: Mailbox Space Warning MIME-VERSION: 1.0 Content-type: text / html; charset = GB2312 Content-Transfer-Encoding: Base64 Your mailbox space has reached 90%. Please delete some letters if you want to continue using it. If you need help, please contact the email manager: Email: Postmaster@funbsd.org # Set the mailbox is full warning message Echo "email is rejected, the user's mailbox space is full."> ~ vpopmail / domains / .over-quota.msg Start the script: Cp /Home/pkg/toaster-scripts-0.6/vpopmailctl / var / qmail / bin Ln -s / var / qmail / bin / vpopmailctl / usr / bin CHMOD 755 / VAR / QMAIL / BIN / VPOPMAILCTL # Qmail-pop3d and qmail-pop3ds with daemontools LN -S / VAR / QMAIL / SuperVise / qmail-pop3d / service LN -S / VAR / QMAIL / SuperVise / qmail-pop3ds / service command: # 启动, stop, restart, see queue, etc. VpopMailctl Start | Stop | Restart | Stat | Pause | Cont | Help # Check service Netstat -an | GREP 110 PS-EF | GREP QMAIL PS-EFL | GREP "Service Errors" | Grep -V Grep View database with mysql-front patch: # Do not bring database support # cd /Home/pkg/netqmail-1.05/Netqmail-1.05 # patch -p0
# With database support CD /HOME/pkg/netqmail-1.05/netqmail-1.05 PATCH -P0
# If the database is a custom installation, you have to copy libmysqlclient.a to the specified location MKDIR -P / USR / local / mysql / lib / mysql / Cp /usr/local/mysql/lib/libmysqlclient.a / usr / local / mysql / lib / mysql / Make clean Make Qmailctl Stop Make setup check Qmailctl Start Installation option Reference: Vpopmail 5.4.5 ------------------------------------ vpopmail directory = / home / vpopmail UID = 89 GID = 89 ROAMING USERS = OFF - Disable-Roaming-Users (Default) Password Learning = Off --disable-Learn-Passwords (Default) MD5 Passwords = on --enable-md5-passwords (default) FILE LOCKING = on --enable-file-locking (Default) VDELIVERMAIL FSYNC = OFF - Disable-file-sync (default) Make seekable = on --enable-make-seekable (default) Clear Passwd = Off --disable-Clear-Passwd User Dir Hashing = on --enable-user-big-dir (default) Address Extensions = Off --disable-qmail-ext (Default) IP alias = off --disable-ip-alias-domains (Default) Domain quotas = Off --disable-domainquotas (Default) Auth module = mysql --enable-auth-module = mysql mysql replication = off --disable-mysql-replication (default) mysql logging = on --enable-mysql-logging MySQL LIMITS = ON --ENABLE-MYSQL-LIMITS MySQL Valias = On --enable-Valias Auth incker = -i / usr / local / mysql / incrude Auth lib = -L / usr / local / mysql / lib -lmysqlclient -lz -lm System passwords = off --disable-passwd (default) POP syslog = log success and errors incruding passwords - enable-logging = V Auth logging = on --enable-auth-logging (default) One Domain Per Sql Table = --disable-Many-Domains Page -------------------------------------------------- ------------------------------ Courier-IMAP Courier-IMAP supports IMAP / SIMAP Access Reference: http://www.inter7.com/courierimap installation: CD / Home / PKG Tar -XJF Courier-IMAP-2.2.2.20040207.tar.bz2 CD Courier-IMAP-2.2.2.20040207 # Install as a vpopmail user Chown -r vpopmail: vchkpw ../courier-Imap-2.2.2.20040207 Su vpopmail ./configure --with-redhat # Note: Redhat users need to use "--with-redhat" option Make exit Make Install-Strip Make Install-Configure Cp court-imap.sysvinit /etc/rc.d/init.d/courier-imap Chmod 755 /etc/rc.d/init.d/courier-imap ChkConfig --Add Courier-IMAP Configuration: # 修 修 文件 / USR / LIB / COUREER-IMAP / ETC / Authdaemonrc AuthmoduleList = "authvchkpw" # 修 修 文件 / USR / Courier-IMAP / etc / iMapd ImapdStart = YES # Modify file / usr / lib / court / etc / iMapd-SSL Imapdsslstart = YES start up: /etc/rc.d/init.d/courier-imap start Page -------------------------------------------------- ------------------------------ AutoRespond AutoRespond is an automatic reply tool that can be used well with qmailadmin Reference: http://qmailadmin.sf.net installation: CD / Home / PKG Tar-xvzf automaticspond-2.0.5.tar.gz CD AutoRespond-2.0.5 Make Make Install ezmlm Exmlm is a fast, powerful mailing list, can be configured by qmailadmin Reference: http://www.ezmlm.org installation: CD / Home / PKG Tar-xvzf ezmlm-0.53.tar.gz Tar-xvzf ezmlm-idx-0.42.tar.gz CP-RF EZMLM-IDX-0.42 / * EZMLM-0.53 / CD EZMLM-0.53 PATCH CHMOD U X Makelang # Do not bring database support Make # With database support # According to EZMLM: this is for the mysql-3.22.10.i386 rpm. # I have no success on MySQL-4.0, here is just an example: # echo "-i / usr / local / mysql / include"> sub_mysql / conf_sqlcc # echo "-l / usr / local / mysql / lib -lmysqlclient -lnsl -lm"> SUB_MYSQL / Conf-SqLD # Make MySQL Make man Make ch_GB Make Setup Page -------------------------------------------------- ------------------------------ Qmailadmin In addition to unable to add delete virtual domains, qmailadmin can almost complete all virtual domain management. Reference: http://sourceforge.net/projects/qmailadmin installation: CD / Home / PKG Tar-xvzf qmailadmin-1.2.2.tar.gz CD qmailadmin-1.2.2 ./configure / --enable-htmldir = / usr / local / apache / htdocs / --enable-cgibindir = / usr / local / apache / cgi-bin / --enable-vpopuser = vpopmail / --enable-autoresponder-bin = / usr / bin / --enable-ezmlmdir = / usr / local / bin / ezmlm / --enable-maxusersperpage = 20 / --enable-maxaliaSperpage = 20 / --enable-modify-quota / --Disable-ezmlm-mysql / --Disable-help Make Make Install-Strip CD / usr / local / share / qmailadmin / lang MV en en.bak CP zh-cn en Installation option Reference: Qmailadmin 1.2.2 --------------------------------------- CGI-BIN DIR = / usr / local / apache / cgi-bin HTML DIR = / usr / local / apache / htdocs Image dir = / usr / local / apache / htdocs / images / qmailadmin Image url = / images / qmailadmin Template dir = / usr / local / share / qmailadmin qmail dir = / var / qmail vpopmail dir = / home / vpopmail AutoRespond dir = / usr / bin EZMLM DIR = / usr / local / bin / ezmlm ezmlm idx = yes Mysql for ezmlm = no Help = NO Modify quota = yes Domain autofill = no Modify spam check = no Page -------------------------------------------------- ------------------------------ Squirrelmaild Squirrelmail is an IMAP-based webmail Reference: http://www.squirrelmail.org installation: CD / Home / PKG Tar -Xjf Squirrelmail-1.4.2.tar.bz2 CD Squirrelmail-1.4.2 / pluginstar -xvzf /Home/pkg/quota_usage-1.2.tar.gz CP quota_usage / config.php.sample quota_usage / config.php CD .. ./configure 1. -> 6. -> zh_cn 4. -> 1. -> GB2312 4. -> 2. -> / usr / local / apache / squirreldata 8. -> 17 D. -> Courier S preserved Q exit # These options can also be modified directly in the configuration file: squirrel / config / config.php # 中文 模版 文件 文件: Squirrel / Locale / EN_CN / LC_MESSAGES / SQUIRRELMAIL.PO MV Data / USR / local / apache / squirreldata Chown -r apache: Apache / usr / local / apache / data Cd ../ MV Squirrelmail-1.4.2 / usr / local / apache / htdocs / squirrelmail Page -------------------------------------------------- ------------------------------ test Test qmailadmin http://mail.funbsd.org/cgi-bin/qmailadmin Test Squirrelmail http://mail.funbsd.org/squirrelmail/ Test POP3 # Telnet Localhost 110 Trying 127.0.0.1 ... Connected to localhost.localdomain. Escape Character is '^]'. Ok hello there. User Xy.wang@funbsd.org OK Password Required. Pass [Password] OK Logged in. quit OK BYE-BYE. Connection Closed by Foreign Host. Test IMAP # Telnet Localhost 143 Trying 127.0.0.1 ... Connected to localhost.localdomain. Escape Character is '^]'. * OK Courier-Imap Ready. Copyright 1998-2001 Double Precision, Inc. See Copying for Distribution Information. A001 Login Xy.wang@funbsd.org [Password] A001 ok login ok. A001 Logout * BYE COURER-IMAP Server Shutting Down A001 OK Logout Completed Connection Closed by Foreign Host. Page -------------------------------------------------- ------------------------------ Optional installation QMail Scanner This TOASTER already includes qmail-scanner support. Reference: http://qmail-scanner.sourceforge.net Qmailadmin Limits QMAILADMIN can set quotas and defaults for each domain. Reference: qmailadmin-1.2.2 / install.igenus IGENUS is more in line with Chinese habits and features. Reference: http://www.igenus.org