qmail+smtp认证快速安装

12/3/2006来源:Qmail人气:7170

本文介绍了如何以最快的方式建立支持smtp认证的qmail邮件系统,环境为rh7.x,qmailrpm包已经打入了对smtp认证的补丁.写的仓促,有错误请大家及时指出


1下载我打包好的rpm



http://freemail.cnuol.com/daemontools-0.70-3.i386.rpm

http://freemail.cnuol.com/qmail-1.0...hes-18.i386.rpm

http://freemail.cnuol.com/supervise....3-1.noarch.rpm

http://freemail.cnuol.com/ucspi-tcp-0.88-2.i386.rpm

http://freemail.cnuol.com/ucspi-unix-0.34-1.i386.rpm

http://freemail.cnuol.com/ezmlm-0.53.tar.gz

http://freemail.cnuol.com/ezmlm-idx-0.40.tar.gz



2卸载sendmail


# rpm -e sendmail --nodeps



3安装qmail的rpm包



rpm -Uvh *rpm



4配置qmail



# echo "127.allow" >> /etc/tcpcontrol/pop-3.rules

# echo '127.allow,RELAYCLIENT=""' >> /etc/tcpcontrol/smtp.rules

# tcPRules /etc/tcpcontrol/pop-3.cdb /etc/tcpcontrol/pop-3.tmp < /etc/tcpcontrol/pop-3.rules


# tcprules /etc/tcpcontrol/smtp.cdb /etc/tcpcontrol/smtp.tmp < /etc/tcpcontrol/smtp.rules




5启动pop3和smtp



# svc-add /var/qmail/service/pop3d

# tcpserver -H -R -l 0 -t 1 -c 100 -x /etc/tcpcontrol/smtp.cdb -u 101 -g 102 0
smtp /var/qmail/bin/qmail-smtpd /home/vpopmail/bin/vchkpw /bin/true
/bin/cmd5checkpw /bin/true%26amp;

并把tcpserver -H -R -l 0 -t 1 -c 100 -x /etc/tcpcontrol/smtp.cdb -u 101 -g 102 0
smtp /var/qmail/bin/qmail-smtpd /home/vpopmail/bin/vchkpw /bin/true
/bin/cmd5checkpw /bin/true%26amp;加到rc.lcoal中以便自动启动smtp服务



6 配置vpopmail.可以到www.inter7.com下载最新的版本



http://www.inter7.com/vpopmail/vpopmail-5.0.1.tar.gz

确保MySQL运行正常,添加用户vpopmail,vpopmailread,vpopmail拥有全部权限,用于创建及管理 ,vpopmailread只可select,用于vpopmail的日常运行。不要为vpopmail设定default-domain。实在无此必要。并可能带来不必要的麻烦。




# groupadd vchkpw
# adduser -g vchkpw vpopmail
# tar zxvf vpopmail-5.0.1.tar.gz

# cd vpopmail-5.0.1

修改vmysql.h使支持mysql数据库校验密码

#
vi vmysql.h

* Edit to match your set up */

#define MYSQL_UPDATE_SERVER "localhost"

#define MYSQL_UPDATE_USER "root"

#define MYSQL_UPDATE_PASSWD "123"<--这里是你
mysql的密码



#define MYSQL_READ_SERVER "localhost"

#define MYSQL_READ_USER "root"

#define MYSQL_READ_PASSWD "123"<--这里是你
mysql的密码

# ./configure --enable-auth-logging=y --enable-logging=y --enable-log-name=vpopmail
--enable-mysql=y --enable-roaming-users=y --enable-sqwebmail-pass=n
--enable-many-domains=y --enable-passwd=n --enable-tcpserver-file=/etc/tcpcontrol/smtp
--enable-sqlincdir=/usr/include/mysql --enable-sqllibdir=/usr/lib/mysql
--enable-sqllibs=

mysqlclient --enable-ip-alias-domains=y --enable-qmail-ext=y --enable-hardquota=n
--enable-mysql-replication=n --enable-valias=y

我用的是rh71自带的mysql,如果你是自己编译的请把上面有关mysql的部分换成你服务器上的路径



#
make clean

# make

# make install-strip

# echo /home/vpopmail/bin/vchkpw
> /etc/qmail/control/checkpassWord

# svc-stop /service/pop3d

# svc-start /service/pop3d

# rm -f /etc/cron.hourly/qmail


  • 系统说明:由于qmail-1.03_252bpatches-18.src.rpm默认安装了一个自动更新/etc/qmail/users/assign及
    /etc/qmail/users/cdb的/etc/cron.hourly/qmail,每小时更新/etc/passwd到 /etc/qmail/users/cdb,更新过程简单覆盖/etc/qmail/users/assign,若不删除,将导致
    vpopmail丢失在/etc/qmail/users/assign及/etc/qmail/users/cdb中的配置。因此删除此文件!

    # cd ~vpopmail/bin

    #./vadddomain test.com

    # ./vadduser
    user1@test.com

    然后根据提示,设定user1@test.com的口令,OK,你已经有了一个基于虚拟域test.com的用户账号user1,此账号和系统本身是毫不相关的!
    Outlook中设定一个新账号,注意用户名应该填user1%test.com!然后测试收发,并选择我的服务器要求身份验证,OK!




    7 安装autorespond




    下载:autorespond-2.0.2.tar.gz

    # tar zxvf
    autorespond-2.0.2.tar.gz

    # cd autorespond-2.0.2

    # make

    # cp autorespond /usr/local/bin



    8 ezmlm and ezmlm-idx with MySQL support



    ezmlm-idx包含有对ezmlm的修正和补充,他们是一个整体



    # tar -zxvf ezmlm-0.53.tar.gz

    # tar -zxvf ezmlm-idx.0.40.tar.gz

    # mv ezmlm-idx-0.40/* ezmlm-0.53/


    # cd ezmlm-0.53

    # patch < idx.patch

    # make mysql #MySQL 支持

    # make clean

    # make man

    # make ch_GB #汉字GB2312支持

    # make setup



    9 qmailadmin

    下载最新的版本qmailadmin-1.0.1

    # tar zxvf qmailadmin-1.0.1.tar.gz

    # cd qmailadmin-1.0.1

    # ./configure --enable-cgibindir=/var/www/cgi-bin --with-htmllibdir=/var/www/qmailadmin
    --enable-htmldir=/var/www

    #
    make clean

    # make

    #
    make install-strip

    测试

    qmailadmin的测试very easy,打开浏览器,http://xx.xx.xx.xx/cgi-bin/qmailadmin



    10 sqwebmail
    以后再写
  • ,