文本版|topic 高级搜索
   名人堂 帮助 论坛制度 意见反馈 | 首页 博客 周新贴 专题 求职 读书
RSS 底部
 
社区导航: 专家门诊   网络技术   操作系统   数据库   程序设计   系统应用   考试认证   CIO及信息化   站长交流   综合交流   下载基地  51CTO产品服务 设为首页 | 收藏本站
51CTO技术论坛» Linux & Advanced Application » Qmail+vpopmail安装文档(提供相关源码包)       [ 打印]  [ 订阅]  [ 收藏]  [ 推荐给朋友]   [ 本帖文本页]

论坛跳转:
 31  1/2  1  2  > 
     
标题: [原创] Qmail+vpopmail安装文档(提供相关源码包)  ( 查看:826  回复:30 )   
  本主题由 termite3304 于 2008-4-5 23:28 设置高亮  
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 22:30   标题:Qmail+vpopmail安装文档(提供相关源码包)
上一帖 |
近几天一直被人问及Qmail安装的问题,经过2天的翻箱倒柜,终于将以前总结的文档找到了

现在发上来跟大家分享一下。当时装到最后可能是有些问题,后来也一直没弄了,如果哪里有问题,也请大家指正。不过照这个文档做qmail的架构还是可以搭建起来的,o(∩_∩)o...  

我会在帖子中把相关的源码包上传上来,省的大家找的费事。
由于这是以前写的文档,可能有的源码包已经有了新版本,大家可以尝试一下,其实我觉得文档就是给大家一个思路,并不一定每一个细节都要一样

下面我们就开始吧


首先做好安装前的准备:

需要apache、mysql、php的支持:
我的apache、mysql装在了/usr/local下,php配置文件在/etc/php.ini
具体安装请看我的另一个帖子 http://bbs.51cto.com/thread-435380-1-12.html

还要确认下面的软件也已经安装:

rpm -q gdbm
rpm -q gdbm-devel
rpm -q openssl
rpm -q openssl-devel
rpm -q stunnel
rpm -q krb5-devel

检查DNS设置
在开始之前,确保正确设置了DNS MX记录.例如使用"termite.org"作为邮件域,对MX记录进行测试:

在Linux下:

        # host -t mx termite.org
        termite.org. mail is handled by 10 mail.termite.org.
        # host -t a mail.termite.org
        mail.termite.org. has address xxx.xxx.xxx.xxx

在Windows下:
        C:\>nslookup
        Default Server: ns.termite.org
        Address: xxx.xxx.xxx.xxx
        >set type=mx
        >termite.org
        termite.org MX preference = 10, mail exchanger = mail.termite.org
        mail.termite.org internet address = xxx.xxx.xxx.xxx
        >exit

卸载已有的邮件系统
确认没有SMTP/POP/IMAP服务在运行:
        /etc/init.d/sendmail stop
        netstat -na | grep 25
        netstat -na | grep 110
        netstat -na | grep 143
        ntsysv

删除已有的SMTP/POP/IMAP软件:
        rpm -e --nodeps sendmail
        rpm -e --nodeps postfix



需要的软件包:  qmail-1.03.tar.tar
                qmail-1.03.errno.patch
                qmail-1.03.qmail_local.patch
                qmail-103.patch
                qmail-maildir++.patch
                qmail-smtpd-auth-0.31.tar.gz
                qmail-toaster-0.6-1.patch.bz2
                qmailadmin-1.2.9.tar.gz
                qmailqueue-patch
                netqmail-1.05.tar.gz
                toaster-scripts-0.6.tar.gz
                ucspi-tcp-0.88.tar.gz
                ucspi-tcp-0.88.a_record.patch
                ucspi-tcp-0.88.errno.patch
                ucspi-tcp-0.88.nobase.patch
                daemontools-0.76.tar.gz
                vpopmail-5.4.13.tar.tar
                vqadmin-2.3.6.tar.gz
                chkuser-0.6.mysql.patch
                courier-imap-2.2.2.20040207.tar.bz2
                autorespond-2.0.4.tar.gz
                ezmlm-0.53.tar.gz
                ezmlm-idx-0.42.tar.gz
                igenus_2.0.1_20040713_release.tgz


[ 本帖最后由 termite3304 于 2008-4-4 22:49 编辑 ]



Be the change you want to see in the world!
2008-4-4 22:301楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 22:45   标题:一、安装qmail

一、安装qmail (qmail-1.03.tar.tar)

安装netqmail:
        我把上面提到的包都放到了/home/qmail下,(目录自己定)
        tar zxf netqmail-1.05.tar.gz
        cd netqmail-1.05
        ./collate.sh

安装daemontools (daemontools-0.76.tar.gz)
daemontools是一个收集管理UNIX进程的工具.用它来监听qmail-send,qmail-smtpd,qmail-pop3d
        cp daemontools-0.76.tar.gz /home/qmail
        tar zxf daemontools-0.76.tar.gz
        cd admin/daemontools-0.76
        patch -p1 < /home/qmail/netqmail-1.05/other-patches/daemontools-0.76.errno.patch       
        package/install
        ps ax | grep svscan  \\验证daemontools已经运行:
                        1242 ?        Ss     0:00 /bin/sh /command/svscanboot
                        1244 ?        S      0:00 svscan /service
                        1254 pts/2    S+     0:00 grep svscan

创建目录:
        mkdir -p /var/qmail/alias
创建组和用户:
        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 vchkpw   \\这里把vpopmail用户也加上
        useradd -g vchkpw vpopmail

打补丁&编译安装:
        cd /home/qmail
        tar zxf qmail-1.03.tar.tar
        tar -zxf qmail-smtpd-auth-0.31.tar.gz       
        cp qmail-smtpd-auth-0.31/base64.* qmail-1.03
        patch -d qmail-1.03 < qmail-smtpd-auth-0.31/auth.patch
        cd qmail-1.03
        patch -p1 < ../qmail-103.patch
        patch -p1 < ../qmailqueue-patch
        patch -p1 < ../qmail-maildir++.patch
        patch -p1 < ../qmail-1.03.errno.patch
        patch -p1 < ../qmail-1.03.qmail_local.patch
        vi qmail-smtpd.c  将函数straynewline中的451改为553
        cd ../netqmail-1.05
        bunzip2 -c ../qmail-toaster-0.6-1.patch.bz2 |patch -p0
        cd netqmail-1.05
        make
        make setup check
        ./config-fast domain.com  \\domain.com为你的服务器名

添加别名用户
        touch /var/qmail/alias/.qmail-root
        touch /var/qmail/alias/.qmail-postmaster
        touch /var/qmail/alias/.qmail-mailer-daemon
        chmod 644 /var/qmail/alias/.qmail*

如果存在postfix和sendmail,将它们停用。
        killall sendmail
        cp /var/qmail/bin/sendmail /usr/sbin/qmail.sendmail
        rm -f /etc/alternatives/mta
        ln -s /usr/sbin/qmail.sendmail /etc/alternatives/mta
        rm -f /usr/lib/sendmail
        rm -f /usr/sbin/sendmail
        ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
        ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
        chmod 777 /usr/sbin/sendmail
        echo 1 > /var/qmail/control/mfcheck
        echo ./Maildir/ > /var/qmail/control/defaultdelivery
        make cert 按提示输入公司信息
        make tmprsadh
        用"crontab -e"在crontab里增加下面这条,每天晚上更新temp keys
                01 01 * * * /var/qmail/bin/update_tmprsadh > /dev/null 2>&1
        cd /home/qmail       
        tar zxf toaster-scripts-0.6.tar.gz

创建服务:
        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/software/toaster-scripts-0.6/send.run /var/qmail/supervise/qmail-send/run
        cp /home/software/toaster-scripts-0.6/send.log.run /var/qmail/supervise/qmail-send/log/run
        cp /home/software/toaster-scripts-0.6/smtpd.run /var/qmail/supervise/qmail-smtpd/run
        cp /home/software/toaster-scripts-0.6/smtpd.log.run /var/qmail/supervise/qmail-smtpd/log/run
        cp /home/software/toaster-scripts-0.6/pop3d.run /var/qmail/supervise/qmail-pop3d/run
        cp /home/software/toaster-scripts-0.6/pop3d.log.run /var/qmail/supervise/qmail-pop3d/log/run
        cp /home/software/toaster-scripts-0.6/pop3ds.run /var/qmail/supervise/qmail-pop3ds/run
        cp /home/software/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

Qmail限制附件的大小:在/var/qmail/control/databytes 文件中设置附件的大小,可以实现对qmail附件大小的限制,一般安装完成后,这个文件是没有的,你可以自己创建。 smtp方式是以qmail的databytes作限制的
        echo 20480000 > /var/qmail/control/databytes   \\设置邮件最大为20M

用qmail拒绝寄信人:/var/qmail/control/badmailfrom 这个控制文件实现拒收邮件功能的,每一个地址要单独一行。而且,不用重起qmail就能生效
        vi /var/qmail/control/badmailfrom
                123@123.com   \\限制一个特定用户
                @456.net      \\限制整个域

启动脚本:
        cp /home/qmail/toaster-scripts-0.6/rc /var/qmail/
        cp /home/qmail/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/

安装ucspi-tcp (ucspi-tcp-0.88.tar.gz) :ucspi-tcp包括tcpserver和tcpclient,一个命令行工具来建立client-server应用程序
        cd /home/software
        tar zxf ucspi-tcp-0.88.tar.gz
        cd ucspi-tcp-0.88
        patch -p1 < ../ucspi-tcp-0.88.a_record.patch
        patch -p1 < ../ucspi-tcp-0.88.errno.patch
        patch -p1 < ../ucspi-tcp-0.88.nobase.patch
        make
        make setup check

用daemontools来启动qmail-send和qmail-smtpd
        ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service
   命令:

        启动,停止,重启,查看队列等
                qmailctl start|stop|restart|doqueue|flush|reload|stat|pause|cont|cdb|queue|help

        检查服务
                netstat -an | grep 25
                ps -ef | grep qmail
                ps -efl | grep "service errors" | grep -v grep
        日志
                /var/log/maillog
                /var/log/qmail/current
                /var/log/qmail/pop3d/current
                /var/log/qmail/pop3ds/current
                /var/log/qmail/smtpd/current


[ 本帖最后由 termite3304 于 2008-4-4 22:51 编辑 ]

附件(查看下载说明): 第一步相关源码包.rar (2008-4-4 22:45,大小:608.65 K)
该附件被下载 27 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 22:452楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 22:48   标题:二、安装vpopmail

二、安装vpopmail (vpopmail-5.4.13.tar.tar)  vpopmail是一个以qmail为基础的虚拟域管理包

vpopmail的用户和组前面已经建立了
       
配置:
        mkdir -p /home/vpopmail/etc
设置默认域:domain.com为你要设置的域
        echo 'termite.org' > /home/vpopmail/etc/defaultdomain
设置SMTP规则,关闭open relays
        echo '127.0.0.1:allow,RELAYCLIENT=""' > /home/vpopmail/etc/tcp.smtp
        cd /home/vpopmail/etc
        tcprules tcp.smtp.cdb tcp.smtp.tmp < tcp.smtp
设置MySQL信息,第一个vpopmail是帐号,xukixu为密码,第二个vpopmail是数据库
        echo "localhost|0|vpopmail|4321|vpopmail" > /home/vpopmail/etc/vpopmail.mysql
        chmod 640 /home/vpopmail/etc/vpopmail.mysql
        chown -R vpopmail.vchkpw /home/vpopmail/etc
在MySQL里添加vpopmail的帐号
        mysql  (这里我的mysql中的root没有设置密码,如果你的有密码的话用:mysql -u root -p)
          mysql> create database vpopmail;
          mysql> grant all on vpopmail.* to vpopmail@localhost identified by '4321';
          mysql> flush privileges  更新MySQL的权限表,用grant的就不需要
          mysql> quit
安装
        cd /home/software/
        tar zxf vpopmail-5.4.13.tar.tar
        cd vpopmail-5.4.13
        vi vmysql.h  修改文件
           添加下面几行:
                #define UPDATE SERVER "localhost"
                #define UPDATE USER "vpopmail"
                #define UPDATE PASSWD "4321"

                #define READ SERVER "localhost"
                #define READ USER "vpopmail"
                #define READ PASSWD "4321"        
           如果版本较低的话,要这样写(具体的要看文件里的注释):
                #define MYSQL_UPDATE_SERVER "localhost"
                #define MYSQL_UPDATE_USER "vpopmail"
                #define MYSQL_UPDATE_PASSWD "4321"

                #define MYSQL_READ_SERVER "localhost"
                #define MYSQL_READ_USER "vpopmail"
                #define MYSQL_READ_PASSWD "4321"
        ./configure --prefix=/home/vpopmail --enable-incdir=/usr/include/mysql --enable-libdir=/usr/lib/mysql --enable-auth-module=mysql  --enable-passwd=n  --enable-tcprules-prog=/usr/local/bin/tcprules --enable-tcpserver-file=/home/vpopmail/etc/tcp.smtp --enable-vpopuser=vpopmail --enable-vpopgroup=vchkpw --enable-ip-alias-domains=n --enable-logging=p --disable-passwd --enable-clear-passwd --disable-domain-quotas --enable-auth-module=mysql --enable-auth-logging --enable-sql-logging --disable-valias --disable-mysql-limits
        make
        make install-strip
管理
        echo 'export PATH=$PATH:/home/vpopmail/bin' >> /etc/profile
        source /etc/profile
测试
        vadddomain 123.com 密码
        vuseradd (-q 邮箱大小) 456@123.com 密码  括号中的可以不写
        vmoduser -c 邮箱描述 456@123.com
        vdeldomain 123.com
        等...

限制单域的邮箱数量
        vi /home/vpopmail/domains/domain.com/.qmailadmin-limits
            添加 maxpopaccounts 100
                 default_quota 52428800s
        chmod 700 /home/vpopmail/domains/domain.com/.qmailadmin-limits
        chown vpopmail:vchkpw /home/vpopmail/domains/domain.com/.qmailadmin-limits
    这样就把邮箱总数限制在100个,每个邮箱为50M了

启动脚本
        cp /home/software/toaster-scripts-0.6/vpopmailctl /var/qmail/bin/
        ln -s /var/qmail/bin/vpopmailctl /usr/bin/
        chmod 755 /var/qmail/bin/vpopmailctl
        ln -s /var/qmail/supervise/qmail-pop3d /service
        ln -s /var/qmail/supervise/qmail-pop3ds /service
启动,停止,重启,查看队列等
        vpopmailctl start|stop|restart|stat|pause|cont|help
检查服务
        netstat -an | grep 110
        ps -ef | grep qmail
        ps -efl | grep "service errors" | grep -v grep
带数据库支持
        cd /home/software/netqmail-1.05/netqmail-1.05
        patch -p0 < /home/software/chkuser-0.6.mysql.patch
修改libmysqlclient.a存在路径
        vi conf-mysql
                改为/usr/lib/mysql/libmysqlclient.a
        make clean
        make
        qmailctl stop
        make setup check
        qmailctl start
修改vchkpw的属性  (如果是以root安装的话可以不改)
        cd /home/software/vpopmail-5.4.13
        chmod 4755 vchkpw
        chown root.root vchkpw  如果使用带验证的smtp,smtp进程要调用密码验证程序,则必须要使用 setuid 和setgid。提高vchkpw的权限,才能完成setgid操作。



[ 本帖最后由 termite3304 于 2008-4-4 23:32 编辑 ]

附件(查看下载说明): vpopmail-5.4.13.tar.tar (2008-4-4 22:48,大小:424.53 K)
该附件被下载 12 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明


附件(查看下载说明): chkuser-0.6.mysql.rar (2008-4-4 23:32,大小:2.91 K)
该附件被下载 12 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 22:483楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 22:54   标题:三、安装cmd5checkpw

三、安装cmd5checkpw (cmd5checkpw-0.22.tar.gz)  

cmd5checkpw是一个和checkpasswd兼容的支持CRAM-MD5算法进行认证的工具。只要支持checkpasswd进行系统用户认证的程序均可以使用其来支持CRAM-MD5算法对数据进行信息摘要,防止密码被盗取。
        cd /home/software
        tar zxf cmd5checkpw-0.22.tar.gz
        cd cmd5checkpw-0.22
        make
        make install  如果出错的话就修改Makefile文件:
                vi Makefile
                        将cp cmd5checkpw /bin/ ; cp cmd5checkpw.8 /usr/man/man8/
                        改为cp cmd5checkpw /bin/ ; cp cmd5checkpw.8 /usr/share/man/man8/

                make install


附件(查看下载说明): cmd5checkpw-0.22.tar.gz (2008-4-4 22:54,大小:23.75 K)
该附件被下载 14 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 22:544楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 23:07   标题:四、安装courier-imap

四、安装courier-imap (courier-imap-2.2.2.20040207.tar.bz2)   

传统的IMAP并不支持Maildir邮件存储格式,为给Qmail用户提供IMAP协议,必须安装Courier-IMAP。Courier-IMAP 是一个提供IMAP协议访问Maildir的服务器,它不再支持传统的Mailbox邮件存储方式。 Courier-IMAP主要特点   * 小巧而高效;   * 提供多种用户认证模块和方式;   * 支持虚拟邮箱;   * 可限制IMAP同时登录的总数目及同一个IP地址同时登录的数目,能有效保护系统在受到拒绝服务(Denial-of-service)攻击时不致因超载而瘫痪;   * 支持共享文件夹(Shared folder)。       
        tar jxf courier-imap-2.2.2.20040207.tar.bz2
        cd courier-imap-2.2.2.20040207
        chown -R vpopmail.vchkpw ../courier-imap-2.2.2.20040207
        su vpopmail  以vpopmail用户安装
        ./configure --with-redhat    注:Redhat用户需要使用"--with-redhat"选项
            make
        exit
        make install-strip
        make install-configure
        cp courier-imap.sysvinit /etc/rc.d/init.d/courier-imap
        chmod 755 /etc/rc.d/init.d/courier-imap
        chkconfig --add courier-imap
        修改文件:
                vi /usr/lib/courier-imap/etc/authdaemonrc
                        改为authmodulelist="authvchkpw"
                vi /usr/lib/courier-imap/etc/imapd
                        改为IMAPDSTART=YES
                vi /usr/lib/courier-imap/etc/imapd-ssl
                        改为IMAPDSSLSTART=YES
        /etc/rc.d/init.d/courier-imap start   启动

注意:使用前请将扩展名.bzip2改为.bz2  

附件(查看下载说明): courier-imap-2.2.2.20040207.tar.bzip2 (2008-4-4 23:07,大小:1.51 M)
该附件被下载 11 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 23:075楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 23:08   标题:五、安装autorespond

五、安装autorespond (autorespond-2.0.4.tar.gz)

Autorespond是一个自动回复工具,可以很好的与qmailadmin配合使用
        tar zxf autorespond-2.0.4.tar.gz
        cd autorespond-2.0.4
        make
        make install
        cp autorespond /usr/local/bin/


附件(查看下载说明): autorespond-2.0.4.tar.gz (2008-4-4 23:08,大小:7.7 K)
该附件被下载 11 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 23:086楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 23:12   标题:六、安装ezmlm和ezmlm-idx

六、安装ezmlm和ezmlm-idx (ezmlm-0.53.tar.gz和ezmlm-idx-0.42.tar.gz)  

使qmail支持邮件列表功能,可以通过qmailadmin对其进行配置
  
        为了启用maillist的MySQL支持,必须建立mysql管理用户:
        mysql
          mysql> create database ezmlm;       
          mysql> grant all on ezmlm.* to ezmlm@localhost identified by 'ezmlm';
          mysql> flush privileges;   我用的是grant,所以这步可以不做
          mysql> exit
        tar zxf ezmlm-0.53.tar.gz
        tar zxf ezmlm-idx-0.42.tar.gz    # ezmlm-idx包含有对ezmlm的修正和补充,他们是一个整体
        cp -rf ezmlm-idx-0.42/* ezmlm-0.53/   将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支持 这里可能会提示错误"Permission denied",这是权限问题,更改makelang的权限:chmod 744 makelang 后就可以了
        修改下列文件:
                vi conf-sqlcc
                        内容为:-I/usr/include/mysql  
                vi conf-sqlld  
                        内容为: -L/usr/lib/mysql -lmysqlclient -lnsl -lm -lz  
                            -lz是增加zip压缩支持  
                vi conf-bin  
                        第一行:/var/qmail/bin/ezmlm  
                vi conf-man  
                        第一行:/var/qmail/man  
                vi conf-qmail         
                        第一行:/var/qmail
        make setup
    补充:       
    1、修改/var/qmail/bin/ezmlm/ezmlmrc将"To:##L@##H"修改为"To:<#L#>@<#H#>",主要是修改用邮件客户端收到信之后,收件人地址显示格式错误。  (找不到就不用改)
    2、邮件列表收到的信息乱码解决方法:  
        在/home/vpopmail/domains/cloud.com/maillistname/下建立一个charset的文件  
                #touch charset  
                #chown vpopmail:vchkpw charset  
                #chmod go-r charset  
                #vi charset 添加一行gb2312  
            这样你发一份邮件到maillistname@xxx.xxx 你收到的信息将可以正确的显示中文了!  

    3、在你建立一个基于MySQL的maillist之前,你必须保证ezmlm库中已存在一个对应的表(其实我发现没有表,ezmlm会自动建立,只是会提示错误):  
                Ex:你想建一个基于MySQL的maillist:testlist  
        # /var/qmail/bin/ezmlm/ezmlm-mktab -d testlist | mysql ezmlm  
        这样就在ezmlm库中为testlist建立了一系列相关表格,你可以用一下命令察看! (也不需要这样麻烦的,安装了qmailadmin后可以使用qmailadmin管理邮件列表了)  


附件(查看下载说明): ezmlm-0.53.tar.gz (2008-4-4 23:12,大小:61.22 K)
该附件被下载 11 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明


附件(查看下载说明): ezmlm-idx-0.42.tar.gz (2008-4-4 23:12,大小:503.99 K)
该附件被下载 15 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 23:127楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 23:13   标题:七、安装qmailadmin

七、安装qmailadmin (qmailadmin-1.2.9.tar.gz)

qmailadmin除了不能添加删除虚拟域外,几乎可以完成所有的虚拟域管理
        tar zxf qmailadmin-1.2.9.tar.gz
        cd qmailadmin-1.2.9
        ./configure --enable-htmldir=/usr/local/apache/htdocs --enable-cgibindir=/usr/local/apache/cgi-bin --enable-vpopuser=vpopmail --enable-autoresponder-path=/usr/bin --enable-ezmlmdir=/var/qmail/bin/ezmlm --enable-maxusersperpage=20 --enable-maxaliasesperpage=20 --enable-modify-quota --disable-ezmlm-mysql --disable-help
        make
        make install-strip


[ 本帖最后由 termite3304 于 2008-4-4 23:14 编辑 ]

附件(查看下载说明): qmailadmin-1.2.9.tar.gz (2008-4-4 23:13,大小:318 K)
该附件被下载 10 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 23:138楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 23:20   标题:八、安装igenus

八、安装igenus (igenus_2.0.1_20040713_release.tgz)

作为webmail这个iGENUS使用上更符合中国人的习惯,功能也很强.
        tar zxf igenus_2.0.1_20040713_release.tgz -C /usr/local/apache/htdocs
        cd /usr/local/apache/htdocs/igenus/
        mkdir temp
        mkdir /home/netdisk
        chmod -R 0755 /home/netdisk/
        chown -R vpopmail.vchkpw /home/netdisk/
        chmod -R 0755 ../
        chown -R vpopmail.vchkpw ../
        vi /usr/local/apache/conf/httpd.conf  \\修改apache配置文件
                User vpopmail
                Group vchkpw

                AddType application/x-httpd-php .php
                AddType application/x-httpd-php-source .phps

                DirectoryIndex index.php index.html index.html.var

                NameVirtualHost *:80

                <VirtualHost *:80>
                ServerName mail.domain.net
                DocumentRoot /var/www/html
                </VirtualHost>

        /usr/local/apache/bin/apachectl restart  \\重启apache
        vi config/config_inc.php  \\\修改config_inc.php文件
                $CFG_BASEPATH = "/usr/local/apache/htdocs/igenus";   \\改成你安装的目录
                $CFG_MYSQL_HOST = 'localhost';   
                $CFG_MYSQL_USER = 'vpopmail';        \\vpopmail访问mysql的帐号
                $CFG_MYSQL_PASS = '4321';           \\ vpopmail访问mysql的密码
                $CFG_MYSQL_DB   = 'vpopmail';        \\数据库
                $CFG_TEMP = $CFG_BASEPATH."/temp";   \\改成你安装的目录的当前目录下
    重新编制Mysql数据库表格:
        vdeldomain domain.com  \\删除之前建立的虚拟域
        mysql vpopmail
          mysql> drop table 表名;  \\删除vpopmail库中的所有表
          mysql> quit
        vi docs/iGENUS.sql   \\修改iDENUS.sql文件
                CREATE TABLE `vpopmail` (^M
                          `pw_id` int(5) unsigned NOT NULL auto_increment,^M
                          `pw_name` varchar(32) NOT NULL default '',^M
                          `pw_domain` varchar(64) NOT NULL default '',^M
                          `pw_passwd` varchar(40) NOT NULL default '',^M
                          `pw_uid` int(11) default NULL,^M
                          `pw_gid` int(11) default NULL,^M
                        `pw_gecos` varchar(48) default NULL,^M
                        `pw_dir` varchar(255) default NULL,^M
                        `pw_shell` varchar(20) default NULL,^M
                        `pw_clear_passwd` varchar(16) default NULL,^M   \\添加这一行,写后面的^M的方法是(Ctrl+v和Ctrl+m,这个是我偶然发现的哦 ^o^),有点麻烦,不如改的时候复制其它一行再修改就OK了
                        `createtime` timestamp(14) NOT NULL,^M
                          PRIMARY KEY  (`pw_id`),^M
                          KEY `pw_name` (`pw_name`,`pw_domain`)^M
                ) TYPE=MyISAM PACK_KEYS=1 ;^M
        mysql vpopmail < docs/iGENUS.sql  \\导入数据表
    设置igenus 定义允许上传下载的邮件的大小:
        vi /etc/php.ini  \\修改PHP配置文件
                max_execution_time=60
                memory_limit=20M
                post_max_size = 10M
                file_uploads=on
                upload_max_filesize=10M
                register_globals=On
                session.bug_compat_42=0
                session.bug_compat_warn=0
                sendmail_path = /var/qmail/bin/qmail-inject
    测试   
        http://127.0.0.1/


注意:使用前把扩展名.tar.gz改为.tgz


附件(查看下载说明): igenus_2.0.1_20040713_release.tar.gz (2008-4-4 23:20,大小:205.69 K)
该附件被下载 10 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 23:209楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1
最后登录 2008-10-12 在线

[查看资料]  [发短消息]  [Blog
[个人主页]         
发表于:2008-4-4 23:22   标题:九、安装vqadmin

九、安装vqadmin (vqadmin-2.3.7.tar.gz)

vqadmin 是虚拟域的管理程序,适合多域管理使用,qmailadmin适合单域管理员管理,各有区别。
        tar zxf vqadmin-2.3.7.tar.gz
        cd vqadmin-2.3.7
        vi db_owner.c  \\修改文件
                static const char *host="localhost";
                static const char *user="vpopmail";  
                static const char *passwd="4321";  
                static const char *db="vpopmail";

        ./configure --enable-cgibindir=/usr/local/apache/cgi-bin --enable-mysql=y --enable-vpopuser=vpopmail --enable-vpopgroup=vchkpw
        make
        make install
    增加vqadmin打开时候认证机制:
        vi /usr/local/apache/conf/httpd.conf   \\修改apache配置文件
           添加下面:
                <Directory "/usr/local/apache/cgi-bin/vqadmin">
                  deny from all
                  Options ExecCGI
                  AllowOverride AuthConfig
                  Order deny,allow
                </Directory>

        vi /usr/local/apache/cgi-bin/vqadmin/.htaccess  \\这里的内容如果与下面的不一样,就改一下
                AuthType Basic
                AuthUserFile /usr/local/apache/conf/vqadmin.passwd
                AuthName vQadmin
                require valid-user
                satisfy any
    设置认证的用户名和密码
        /usr/local/apache/bin/htpasswd -bc /usr/local/apache/conf/vqadmin.passwd admin adminpass
        chown apache:apache /usr/local/apache/conf/vqadmin.passwd
       
        /usr/local/apache/bin/apachectl restart  \\重启apache
    测试:  
        http://127.0.0.1/cgi-bin/vqadmin/vqadmin.cgi   (当时做完了有点问题)


[ 本帖最后由 termite3304 于 2008-4-4 23:24 编辑 ]

附件(查看下载说明): vqadmin-2.3.7.tar.gz (2008-4-4 23:22,大小:150.08 K)
该附件被下载 10 次     您下载该主题帖内所有附件同时将被扣掉2点无忧币  查看分数政策说明




Be the change you want to see in the world!
2008-4-4 23:2210楼
[ 顶部 ]
 
终极恶魔猎手
新新人类  点击可查看详细



帖子 86
精华 0
无忧币 66
积分 94
阅读权限 20
注册日期 2007-12-14
最后登录 2008-5-14 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2008-4-5 21:30 
了解!!



论坛活动:测测你对IT技术大会的了解指数(赠微软礼品、无忧币)
2008-4-5 21:3011楼
[ 顶部 ]
 
twx51
新新人类  点击可查看详细


帖子 163
精华 0
无忧币 68
积分 174
阅读权限 20
注册日期 2008-3-26
最后登录 2008-8-2 离线

[查看资料]  [发短消息]  [Blog
[个人主页]    QQ       
发表于:2008-4-7 11:08 
楼主辛苦了....
   
   在这里.不胜感激....

  ...先收下了。.....在3月3这天.多吃2个鸡蛋..  
   
  好好补一下. ..辛苦了。 ...



微软最有价值专家(MVP)申请 <2008-2009年度>
2008-4-7 11:0812楼
[ 顶部 ]
 
termite3304
主版主  点击可查看详细


十二生肖之虎   白羊座   行业勋章   技术勋章   诚信兄弟  
帖子 2138
精华 4
无忧币 36410
积分 3303
阅读权限 150
注册日期 2007-8-1