当前位置:操作系统 > Unix/Linux >>

FreeBSD4.7+Qmail+Mysql+Vpopmail+QmailAdmin+Sqwebmail

本人刚开始考虑使用的是postfix+mysql+sasl+courier-map+sqwebmail(详见我发的《中小规模 POSTFIX邮件系统》),但是在配置SMTP认证方面没有成功,而且公司的邮件系统又要求使用邮件列表功能,没有找到解决方案,公司的领导又拿着鞭子在后面催赶,所以就使用Qmail了,因为Qmail的资料和软件比较丰富,而且高人也比较多,有问题也有高人帮忙,所以就使用了它。

  网上Qmail安装设置的资料很多,我也是参考这些资料完成各项设置的,我写这篇档案的目的是为了避免我忘记设置过程(年纪轻轻的就有了健忘症,痛苦……..),再者我发到网上也让各位高人看看还有什么地方存在问题,那些需要改进,废话少说,言归正传!

  一. 本文档所需软件

  1. ucspi-tcp-0.88.tar.gz

  http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz

  2. checkpassword-0.90.tar.gz (可选)

  http://cr.yp.to/checkpwd/checkpassword-0.90.tar.gz

  3. cmd5checkpw-0.22.tar.gz http://members.elysium.pl/brush/cmd5checkpw/dist/cmd5checkpw-0.22.tar.gz

  4. qmail-1.03.tar.gz

  http://cr.yp.to/software/qmail-1.03.tar.gz

  5. qmail-1.03.patch (Qmail补丁,这个补丁主要是处理有些DNS响应不完全遵从RFC标准,返回大于512字节的DNS应答包时可能出现的问题。)

  http://www.ckdhr.com/ckd/qmail-103.patch

  6. qmail-smtpd-auth-0.31.tar.gz(Qmail补丁) http://members.elysium.pl/brush/qmail-smtpd-auth/dist/qmail-smtpd-auth-0.30.tar.gz

  7. vpopmail-5.3.16.tar.gz

  http://www.inter7.com/devel/vpopmail-5.3.16.tar.gz

  8. Vpopmail汉化文件

  http://www.cw-isquare.com/en-us

  9. autorespond.tar.gz

  http://www.netmeridian.com/e-huss/autorespond.tar.gz

  10. ezmlm-0.53.tar.gz

  http://cr.yp.to/software/ezmlm-0.53.tar.gz

  11. sqwebmail-3.5.0-CN.tar.gz sqwbmail中文软件包

  http://www.cw-isquare.com/ sqwebmail-3.5.0-CN.tar.gz

  12. Qmail-smtpd.c

  http://www.cw-isquare.com/qmail-smtpd.c

  13. Qmail-smtpd.path (修正Qmail auth smtp中电子邮件地址任意的patch)

  http://www.cw-isquare.com/qmail-smtpd.patch.txt

  14. Mysql

  我是用/usr/ports进行安装的mysql

  注意:

  1. 所有程序下载后放在/down目录下。

  2. 在安装FreeBSD4.7时请把/home和/var尽量分的大一些,因为/home目录是作为所有用户的邮件存放目录,/var是日志存放目录。

  3. 一下所有操作都是在root权限下进行的,因为root用户对系统拥有全部的权限,所以操作时请进了小心,不要由于误操作带来不必要的麻烦。

  二. DNS设定

  我自己没有DNS服务器,负责解析的是我们母公司的DNS服务器,我使用nslooks –q=mx mail.localhost.com命令可以查看到已经绑定到我们公司的IP地址上。

  注:mail.localhost.com为我们公司域名,以下相同。

  三. Mysql的安装

  #cd /usr/ports/database/mysql323-server

  #make install

  #cd work/mysql-3.23.52

  #scripts/mysql_install_db

  #cp support-files/my-medium.cnf /etc/my.cnf

  #/usr/local/bin/safe_mysqld & 启动mysql服务

  #echo “/usr/local/bin/safe_mysqld &” >> /etc/rc.local 使mysql能随系统启动时一起启动

  #/usr/local/bin/mysqladmin –u root –password ‘123456’ 修改mysql用户root密码

  添加与root用户相同权限的用户vpopmail,在安装vpopmail时要用到

  #cd /usr/local/bin

  #./mysql -u root –p

  #Mysql>use mysql;

  #Mysql>grant select,insert,update,delete,create,drop on vpopmail.* to vpopmail@localhost identified by '12345678';

  或者安装webmin对数据库进行管理,如果使用以上命令不能使vpopmail用户拥有所有权限,请到webmin的mysql项进行修改。

  四. 安装TCPSERVER

  1. 安装ucspi-tcp

  #cd /down

  #tar zxvf ucspi-tcp-0.88.tar.gz

  #cd ucspi-tcp-0.88

  #make setup check

  2. 生成tcp.smtp.cdb

  #cd /etc

  #touch tcp.smtp

  #ee tcp.smtp 加入一下内容

  127.0.0.1:allow,RELAYCLIENT=""

  #cd /usr/local/bin

  #./tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp

  五. 安装cmd5checkpw

  #cd /down

  #mkdir /usr/man

  #mkdir /usr/man/man8

  #tar zxvf cmd5checkpw-0.22.tar.gz

  #cd cmd5chedkpw-0.22

  #make

  #make install

  如果你不需要对/etc/passwd中的用户开放mail,则不需要安装checkpassword,因为我不需要,所以我没有安装。如果你要使用参考一下方法:

  #cd /down

  # tar zxvf checkpassword-0.90.tar.gz

  # cd checkpassword-0.90

  # make setup check

  六. 安装Qmail

  1. 建立Qmail目录

  #mkdir /var/qmail

  #mkdir /var/qmail/alias

  2. 添加组和用户

  #pw groupadd nofiles

  #pw groupadd qmail

  #pw useradd alias -g nofiles -d /var/qmail/alias -s /nonexistent

  #pw useradd qmaild -g nofiles -d /var/qmail -s /nonexistent

  #pw useradd qmaill -g nofiles -d /var/qmail -s /nonexistent

  #pw useradd qmailp -g nofiles -d /var/qmail -s /nonexistent

  #pw useradd qmailq -g qmail -d /var/qmail -s /nonexistent

  #pw useradd qmailr -g qmail -d /var/qmail -s /nonexistent

  #pw useradd qmails -g qmail -d /var/qmail -s /nonexistent

  在添加一个系统用户admin作为邮件管理用户

  #pw useradd admin –g wheel

  3. 给Qmail打补丁

  #cd /down

  #tar zxvf qmail-1.03.tar.gz

  #patch –d ./qmail-1.03 < qmail-103.patch DNS补丁

  #tar zxvf qmail-smtpd-auth-0.30.tar.gz

  #cd qmail-smtpd-auth-1.30

  #cp base* README.auth ../qmail-1.03

  #patch -d ../qmail-1.03 < auth.patch

  4. 编译Qmail

  #make setup check

  5. ./config-fast mail.localhost.com

  6. 修正SMTP认证信息任意输入和任意更改电子邮件发件人地址的补丁

  #cd /down

  #cp qmail-smtpd.c ./qmail-1.03

  #cp qmail-smtpd.patch.txt ./qmail-1.03

  #cd qmail-1.03

  #patch < qmail-smtpd.pathch.txt

  #make qmail-smtpd

  #cp qmail-smtpd /var/qmail/bin

  7. 设置投递方式

  #cp /var/qmail/boot/home /var/qmail/rc

  #ee /var/qmail/rc 修改以下内容

  exec env - PATH="/var/qmail/bin:$PATH" \

  qmail-start ./Maildir/ splogger qmail

  8. 添加别名用户

  #touch /var/qmail/alias/.qmail-root

  #touch /var/qmail/alias/.qmail-postmaster

  #touch /var/qmail/alias/.qmail-mailer-daemon

  #echo postmaster /var/qmail/control/bouncefrom

  注意:/var/qmail/control/locals中必须有缺省域名,否则投递失败的邮件将不知锁踪。

  9. 停止Sendmail服务

  #chmod 0 /usr/sbin/sendmail

  #mv /usr/sbin/sendmail /usr/sbin/sendmail.bak

  #cp /var/qmail/bin/sendmail /usr/sbin/sendmail

  #vi /etc/rc.conf

  #ee /etc/rc.conf 修改如下选项

  sendmail_enable="NO"

  七. 安装vpopmail

  1. 建立目录

  #mkdir /home/vpopmail

  #mkdir /home/vpopmail/etc

  2. 建立组及用户

  #pw groupadd vchkpw

  #pw useradd vpopmail –g vchkpw

  3. 安装vpopmail

  #tar zxvf-5.3.12.tar.gz

  #ee vmysql.h 修改一下内容

  #define MYSQL_UPDATE_SERVER "localhost" (mysql服务器名)

  #define MYSQL_UPDATE_USER "vpopmail" (用户名)

  #define MYSQL_UPDATE_PASSWD "
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,