摘要
对qmail+vpopmail+igenus的安装过程
声明:这个文档是我根据我的配制所编写的,其中可能有些雷同,因为我也是参看那些文档安装而成的,但是,这个文档中包含了一些我在安装过程中出现的问题,以及我如何解决的方法。我曾在red hat 7.2 mandrake solaris8 3个unix系统上安装成功,希望对大家有些帮助。若有不对之处,希望大家批评指教。
[email protected] 一. 安装前的准备
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:
[email protected] |/home/qmail/bin/qmail-inject
如果没有报错,你可以在 ~dave/Maildir/new/目录下,看到一封信。
测试远程投递:
telnet mail.xxx.com 25 登陆本机的25端口
helo mail.xxx.com
mail from :
rcpt to : <
[email protected]>
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
[email protected] 在添加用户的时候会让你输入用户的密码。
如果没有报错,则在~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的用户和组。