摘要
??对qmail+vpopmail+igenus的安装过程
??声明:这个文档是我根据我的配制所编写的,其中可能有些雷同,因为我也是参看那些文档安装而成的,但是,这个文档中包含了一些我在安装过程中出现的问题,以及我如何解决的方法。我曾在red hat 7.2 mandrake solaris8 3个unix系统上安装成功,希望对大家有些帮助。若有不对之处,希望大家批评指教。songtianlun@chinanews.com.cn
一. 安装前的准备
??1. 下载软件
ftp://cr.yp.to/software/qmail-1.03.tar.gz
?? http://www.inter7.com/vpopmail/vpopmail-5.2.1.tar.gz
?? http://www.igenus.org/webmail/download/
??http://gd.tuwien.ac.at/infosys/mail/imap/c-client.tar.Z (安装igenus时用)
??分别下载这3个包,当然安装为了安装vpopmail和igenus的webmail还需要安装apache,php,mysql。我们认为这些都以安装并以配制进行正常的使用。并且你dns的mx记录都以做好。
2. qmail的安装
??tar xvfz qmail-1.03.tar.gz
??mkdir /var/qmail (建立qmail的home目录)
??mkdir /etc/qmail 建立qmail的配制文件
??ln -s /etc/qmail /var/qmail/control
??cd /usr/local/src/qmail-1.03
??cp INSTALL.ids IDS 建立qmail的用户和组的shell文件
??chmod 700 IDS
??/bin/sh IDS
??make setup check
??./config-fast mail.xxx.com
??cd /var/qmail/
??cp boot/home /var/qmail/rc
??chmod 755 /var/qmail/rc
??vi rc
??将rc文件中的qmail-start ./Mailbox splogger qmail中的Mailbox改为“./Maildir/”。记住若./Maildir/中缺少最后的“/”,qmail将不能进行正常的投递!!!(当初我就吃过这亏)
??创建3个别名用户文件,qmail将退信等邮件以以下的用户发送,可以将下面的“dave”改为你邮箱的系统用户的名字
??echo dave /var/qmail/alias/.qmail-root
??echo dave /var/qmail/alias/.qmail-postmaster
??echo dave /var/qmail/alias/.qmail-mailer-daemon
??chmod 644 /var/qmail/alias/.qmail*
echo "csh -cf '/var/qmail/rc &' " /etc/rc.d/rc.local
????(机器启动时,自动启动qmail)
??ps ?ef| grep sendmail
??kill pid-of-sendmail 停掉已运行的sendmail服务
??csh -cf '/var/qmail/rc &' 启动qmail
??由于我是采用inetd的方式进行启动qmail的,所以在inetd.conf中加入smtp和pop3的配制
??smtp stream tcp nowait qmaild
?? /var/qmail/bin/tcp-env tcp-env
?? /var/qmail/bin/qmail-smtpd
??pop3 stream tcp nowait root
?? /var/qmail/bin/qmail-popup qmail-popup xxx.com
?? /var/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir
??重起inetd。
??在xinetd.d中,添加smtp和pop3
??vi smtp
??# default: off
??# description: The POP3 service allows remote
???users to access their mail
??# using an POP3 client such as Netscape
???Communicator, mutt,
??# or fetchmail.
??service smtp
??{
????disable = no
????socket_type = stream
????protocol = tcp
????wait = no
????user = qmaild
????server = /var/qmail/bin/tcp-env
????server_args = -R /var/qmail/bin/qmail-smtpd
????log_type = FILE /var/log/maillog
????env = NODNSCHECK=""
????log_on_success = HOST
????log_on_failure = HOST RECORD
????only_from = 0.0.0.0
??}
??vi pop3
??#default: off
??# description: The POP3 service allows remote
???users to access their mail
??# using an POP3 client such as Netscape
???Communicator, mutt,
??# or fetchmail.
??service pop3
??{
????disable = no
????socket_type = stream
????protocol = tcp
????wait = no
????user = root
????server = /var/qmail/bin/qmail-popup
????server_args = mail.ellenzp.com /home/vpopmail/bin/vchkpw
???? /var/qmail/bin/qmail-pop3d Maildir
????log_type = FILE /var/log/maillog
????log_type = FILE /var/log/xinetd.log
????log_on_success = HOST
????log_on_failure = HOST RECORD
??}
??重起xinetd /etc/rc.d/init.d/xinetd restart mkdir /etc/skel (建立一个样本,每当添加一个新用户的时候自动在他的home目录下建立Maildir目录) /var/qmail/bin/maildirmake /etc/skel/Maildir 测试本地投递:
??echo to: dave@xxx.com |/home/qmail/bin/qmail-inject
??如果没有报错,你可以在 ~dave/Maildir/new/目录下,看到一封信。
??测试远程投递:
??telnet mail.xxx.com 25 登陆本机的25端口
?? helo mail.xxx.com
?? mail from :
?? rcpt to :
?? data
?? subject : this is a test of qmail
?? dear dave:
?? this is a test
??. 必须以“.”作为结束
?? quit
??如果你在你的远程信箱中看见了这封信,那么恭喜你,你的qmail基本配制成功了。
??3. Vpopmail的安装
??进入解压之后的vpopmail的目录
??vi vmysql.h
??#define MYSQL_SERVER "localhost" (mysql服务器名)
??#define MYSQL_USER "root" (用户名)
??#define MYSQL_PASSWD "yyyyy" (密码)
前面的“#”号不能去掉,否则安装时会出错
??groupadd -g 89 vchkpw
??useradd -g vchkpw -u 89 vpopmail
至于组号89,可以自行修改。
??touch ~vpopmail/etc/tcp.smtp
建立smtp发信规则文件,不过在我的机上vpopmail
???下并没有etc目录,需要自己手工建立#mkdir etc
??echo "127.0.0.:allow,RELAYCLIENT="""
??~vpopmail/etc/tcp.smtp
??由于我的mysql使用rpm安装,所以在安装mysql的时候并不需要进行什么设置,如果你的mysql安装在一个指定的目录,例如你安装在/usr/local/mysql/,那么你在./configure vpopmail的时候,需要指定。
??./configure --enable-mysql=y --enable-mysql-replication=y
?? --enable-valias=y --enable-qmail-ext=y --enable-ip-alias-domains=y
?? --enable-password=n --enable-tcpserver-file=~vpopmail/etc/tcp.smtp
?? --enable-incdir=你mysql的include目录的绝对路径,
??--enable-libs=你mysql的lib目录的绝对路径
??make
??make install-strip
?? 用./vadddomain添加域名和./vadduser添加用户
??cd ~vpopmail/bin/
??./vadddomain xxx.com
???在添加域名的时候会让你输入postmaster的密码,???这个密码可以随意
? ./vadddomain dave@xxx.com
???在添加用户的时候会让你输入用户的密码。
??如果没有报错,则在~vpopmail/domain/目录下会看到你添加的域名的目录 xxx.com/,在此目录下可以看见你添加用户的目录 dave/
??在mysql库中可以看见一个名为vpopmail的库。
??3.igenus的安装
??igenus是一个国内制作的webmail,省去了我们还要对国外webmail进行翻译的麻烦。
??将解压后的igenus目录放入你web浏览的目录下面,如/usr/local/apache/htdoc/.
??进入解压后的目录
mkdir temp
chown -R vpopmail.vchkpw temp
cd config
vi config_inc.php
??修改以下部分
$CFG_BASEPATH = "/var/www/iGENUS"; ---是iGNEUS webmail安装在系统的路径
$CFG_MYSQL_HOST = 'localhost';
$CFG_MYSQL_USER = 'root';
$CFG_MYSQL_PASS = 'yyyyy';
$CFG_MYSQL_DB = 'vpopmail'
$CFG_HOSTNAME = "http://mail.xxx.com";
$CFG_LANGUAGE = gb
$CFG_GMT = +8;
$CFG_TEMP = $CFG_BASEPATH."./temp";确保浏览的目录和temp的目录在同一路径。
??修改默认登录域的设置:
??编辑login.php
??ellenzp.comTION ----默认登录域
??polytrip.com.cnTION ----其它域名。
??如果在浏览的时候,出现Mkdir 不能创建目录的情况,那么你可以将这个目录的权限设低一点,或者将这个目录的用户和组修改为vpopmail的用户和组。