我的qmail、igenus安装笔记【原】

JavaGG 发布于 2009/05/05 16:57
阅读 357
收藏 1

首先感谢gadfly老大的帮助,没有他的大力帮忙,我的qmail就做不下去。谢谢!!!谢谢!!!!!!!
还要感谢peng姐的安装文档和帮助,没有他的文档和帮助,我也做不了,谢谢!!!谢谢!!!!!!!
还要感谢所有写过安装指南、FAQ的人,他们的资料是我在迷雾中的指明灯。谢谢!!!!!

偶D文档修改了部分peng姐D错误。
有问题需要我帮忙的话可以找我,QQ:298613,hojo,身份认证写上chinaunix。

操作系统是trustix linux。
1、安装mysql

groupadd mysql
useradd –g mysql mysql

tar –xzvf mysql-xxxxx.tar.gz
cd mysql-xxxxx
./configure –prefix=/usr/local/mysql
make
make install

/usr/local/mysql/bin/mysql_install_db
chown -R root:mysql /usr/local/mysql 
chmod -R 640 /usr/local/mysql 
chmod -R u+X,g+X /usr/local/mysql 
chmod -R ug+x /usr/local/mysql/bin 
chmod -R g+w /usr/local/mysql/data 
(# chmod -R g+w /usr/local/mysql/var)
chmod 755 /usr/local/mysql/libexec/mysqld
/usr/local/mysql/bin/safe_mysqld --user=mysql &

修改mysql密码
usr/local/mysql/bin/mysqladmin -u root password 'password'
修改启动:
vi /etc/rc.d/rc.local
/usr/local/mysql/bin/safe_mysqld --user=mysql &
/usr/local/apache/bin/apachectl start & (启动apache,装完apache才写)

2 、安装apache 2

cd apache-2.xxx
groupadd vchkpw
useradd -g vchkpw -d /home/vpopmail vpopmail

./configure --prefix=/usr/local/apache --enable-cgi --enable-cgid --enable-so
make 
make install
修改/usr/local/apache/conf/httpd.conf
启动apache用户、组改为:
User vpopmail
Group vchkpw
增加cgi头
AddHandler cgi-script .cgi .pl
启动apache:
/usr/local/apache/bin/apache start
访问:http://x.x.x.x/index.html.en测试
访问:http://x.x.x.x/cgi-bin/test-cg 测试cgi 

3、安装Qmail

设定qmail用户和组
mkdir /usr/local/qmail
groupadd nofiles 
useradd -g nofiles -d /usr/local/qmail/alias alias 
useradd -g nofiles -d /usr/local/qmail qmaild 
useradd -g nofiles -d /usr/local/qmail qmaill 
useradd -g nofiles -d /usr/local/qmail qmailp 
groupadd qmail 
useradd -g qmail -d /usr/local/qmail qmailq 
useradd -g qmail -d /usr/local/qmail qmailr 
useradd -g qmail -d /usr/local/qmail qmails


chmod 755 /usr/local/qmail
chgrp qmail /usr/local/qmail

# tar xzf qmail-1.03.tar.gz
# patch -p0 < qmail-103.patch 
(用ls命令要可以看到 qmail-1.03(目录)和qmail-103.patch(文件))
cd qmail-1.03 
make setup check 
./config-fast test.domain.com 
建立系统别名
cd /usr/local/qmail/alias 
touch .qmail-postmaster .qmail-mailer-daemon .qmail-root 
chmod 644 /usr/local/qmail/alias/.qmail* 

cp /usr/local/qmail/boot/home /usr/local/qmail/rc 
chmod 755 /usr/local/qmail/rc 

ln -s /usr/local/qmail/bin/sendmail /usr/lib/sendmail 
ln -s /usr/local/qmail/bin/sendmail /usr/sbin/sendmail
chmod 755 /usr/local/qmail/bin/sendmail

vi /usr/local/qmail/rc 
修改其中./Mailbox为./Maildir/ 

设定qmail自启动
mkdir /etc/qmail 
touch /etc/qmail/startvi /usr/local/qmail/rc 
echo "csh -cf '/usr/local/qmail/rc &'">;/etc/qmail/start 
echo "/etc/qmail/smtp.sh">;>;/etc/qmail/start

3、安装php

cd php-4.3.2RC3
./configure --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs 

--enable-track-vars --enable-force-cgi-redirect --enable-pic --enable-inline-optimiation 

--enable-memory-limit --enable-bcmath --enable-shmop --enable-versioning -enable-calendar 

--enable-dbx --enable-dio --enable-mcal --with-config-file-path=/usr/local/apache/conf
make
make install

cp php.ini-dist /usr/local/apache/conf/php.ini

vi /usr/local/apache/conf/httpd.conf 

让apache识别php
AddType application/x-httpd-php .php

# 加入以下行(装载php4模块并指定.php 文件) 
# LimitRequestBody (指定php处理的请求数据大小,以下指定为 20M) 

LoadModule php4_module        modules/libphp4.so

SetOutputFilter PHP 
SetInputFilter PHP 
LimitRequestBody 20971520 


#注解以下行(在文本前加#),使apache显示中文,具体原因未知 
ForceLanguagePriority Prefer Fallback 
修改AddDefaultCharset ISO-8859-1为:
AddDefaultCharset gb2312


#加入默认的引导文件index.php(找到DirectoryIndex,修改如下:) 
DirectoryIndex index.html index.html.var index.php 

#指定网站目录(假设为 /apache 目录) 
DocumentRoot "/apache" 

vi /usr/local/apache/conf/php.ini 
#找到并修改以下参数 
max_execution_time = 600 ;最大运行时间 600 秒 
max_input_time = 600 ;最大输出时间 600秒 
memory_limit = 20M ;最大内存限制 20M 
file_uploads = On ;允许上载文件 
upload_max_filesize = 20M ;最大文件大小 20M 
post_max_size = 20M ;php可接受的 post 方法大小 20M 
session.auto_start = 1 ;session自动启动
把register_globals = Off 改为register_globals = On

测试php,写个test.php文件放到html目录下:
phpinfo();
?>;
chmod 555 test.php

5、安装ucspi-t

# tar zxvf ucspi-tcp-0.88.tar.gz 
# cd ucspi-tcp-0.88 
# make 
# make setup check 
 执行档将被安装于 /usr/local/bin 中

touch /etc/qmail/smtp.sh
chmod 755 /etc/qmail/smtp.sh
 smtp.sh装完vpopmail再编辑

编写tcp.smtp规则
touch /etc/qmail/tcp.smtp
echo "127.0.0.1:allow,RELAYCLIENT="\"\" >; /etc/qmail/tcp.smtp 
echo ":allow" >;>; /etc/qmail/tcp.smtp 
编译tcp.smtp规则
/usr/local/qmail/bin/tcprules /etc/qmail/tcp.smtp.cdb /etc/qmail/tcp.smtp.tmp < 

/etc/qmail/tcp.smtp 

echo “/etc/qmail/start” >;>; /etc/rc.d/rc.locad
7、安装vpopmail

增加vpopmail用户、组(前面装apache的时候已经做了,现在可以省略,没有做的一定要增加

vpopmail用户、组)
# groupadd vchkpw 
# useradd -g vchkpw -d /home/vpopmail vpopmail

tar vpopmail-5.2.tar.gz 
cd vpopmail-5.2 
vi vmysql.h 
根据你的MYSQL的设置,更改下面的配置 
#define MYSQL_SERVER "localhost" 
#define MYSQL_USER "root" 
#define MYSQL_PASSWD "123456" 

#define MYSQL_SERVER "localhost" 
#define MYSQL_USER "root" 
#define MYSQL_PASSWD "123456"

编译、安装vpopmail
./configure --prefix=/home/vpopmail --enable-default-domain=test.domain.com 

--enable-passwd=n  --enable-ip-alias-dmains=n --enable-defaultquota=52428800s 

--enable-sqwebmail-pass=y --enable-mysql=y --enable-incdir=/usr/local/mysql/include/mysql 

--enable-libdir=/usr/local/mysql/lib/mysql --enable-libs=/usr/local/mysql/lib/mysql 

--enable-tcprules-prog=/usr/local/qmail/bin/tcprules 

--enable-tcpserver-file=/etc/qmail/tcp.smtp --enable-vpopuser=vpopmail 

--enable-vpopgroup=vchkpw --enable-qmaildir=/usr/local/qmail

   修改默认域名和邮箱容量,一些注释:
--prefix=/home/vpopmail \\指定安装路径 
--enable-mysql=y \\是否应用Mysql数据库 
--enable-incdir=/usr/local/mysql/include/mysql  \\Mysql数据库include文件所在目录 
--enable-libdir=/usr/local/mysql/lib/mysql \\Mysql数据库lib文件所在目录 
--enable-default-domain=test.domain.com \\定义虚拟域名 
--enable-passwd=n \\是否使用系统密码验证方式 
--enable-defaultquota=52428800s \\定义缺省邮箱大小,n为不限制,10485760为10MB,20971520为

20MB,52428800s为50MB 
--enable-tcprules-prog=/usr/local/qmail/bin/tcprules \\指定tcprules目录 
--enable-tcpserver-file=/etc/qmail/tcp.smtp \\指定tcprules应用规则文件 
--enable-vpopuser=vpopmail \\vpopmail的用户 
--enable-vpopgroup=vchkpw \\vpopmail的组 
--enable-ip-alias-domains=n \\在虚拟域中允许通过反向IP地址查找虚拟域名 
--enable-sqwebmail-pass=y \\sqwebmail的密码支持

make 
make install-strip 
chmod 6755 /home/vpopmail/bin/vchkpw

编写qmail启动pop、smtp启动文件
touch /etc/qmail/pop.sh
chmod 755 /etc/qmail/pop.sh

echo “/usr/local/qmail/bin/tcpserver -c 100 -v -l test.domain.com -U -H -R 0 pop3 

/usr/local/qmail/bin/qmail-popup test.domain.com /home/vpopmail/bin/vchkpw 

/usr/local/qmail/bin/qmail-pop3d Maildir 2>;&1 | /usr/local/qmail/bin/splogger & “ >;>; 

/etc/qmail/pop.sh

echo “/usr/local/qmail/bin/tcpserver -H -R -l test.domain.com -t 1 -c 100 -v -p 

-x/etc/qmail/tcp.smtp.cdb -u 581 -g 523 0 smtp /usr/local/qmail/bin/qmail-smtpd 

/home/vpopmail/bin/vchkpw /bin/true /usr/local/qmail/bin/cmd5checkpw /bin/true 2>;&1 | 

/usr/local/qmail/bin/splogger &” >;>; /etc/qmail/smtp.sh
  (注:581 and 523换成系统上的qmaild与nofiles的uid and gid的值。)

vi /etc/qmail/start
csh -cf '/usr/local/qmail/rc &'
/etc/qmail/pop.sh
/etc/qmail/smtp.sh
  最后写完应该是这样

chmod –R 755 /etc/qmail

添加域: 
# /home/vpopmail/bin/vadddomain test.domain.com 
(回车:输入两遍密码) 
添加用户: 
# /home/vpopmail/vadduser xmy@test.domain.com

 如果运行命令出现:error in loading shared libraries: libmysqlclient.so.10: cannot open 

shared object file: No such file or directory
则:cp libmysqlclient.so * /usr/lib
   chmod 755 /usrl/ib/ libmysqlclient.so

注意目录权限: 
/home/vpopmail/domains 的权限应该是700 
/home/vpopmail/domains/domail.com/.qmail-default 应该是600 
/usr/lib/libmysqlclient.so.10.0.0应该是755

8、安装 ezmlm

zmlm and ezmlm-idx with MySQL support! 
注意:为了启用maillist的MySQL支持,你必须首先: 
建立mysql管理用户:(Ex:user:ezmlm,pass:ezmlm) 
# mysql -u root –pmysql2003 
>;use mysql; 
>;insert into user 

values('localhost','ezmlm','','y','y','y','y','y','y','y','y','y','y','y','y','y', 'y'); 
>;update user set password=password('ezmlm') where user='ezmlm'; 
>;FLUSH PRIVILEGES; 
>;exit; 
建库:(Ex:database:ezmlm) 
# mysqladmin -u root -pXXXXX create ezmlm 
ezmlm-idx包含有对ezmlm的修正和补充,他们是一个整体。 
#cd /root/Qmail_setup
# 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 

在你建立一个基于MySQL的maillist之前,你必须保证ezmlm库中已存在一个对应的表: 
Ex:你想建一个基于MySQL的maillist:testlist 
/usr/local/qmail/bin/ezmlm/ezmlm-mktab -d testlist | mysql -uezmlm -pezmlm -f ezmlm 
这样就在ezmlm库中为testlist建立了一系列相关表格: 
+------------------------+ 
| Tables | 
+------------------------+ 
| testlist | 
| testlist_allow | 
| testlist_allow_slog | 
| testlist_cookie | 
| testlist_deny | 
| testlist_deny_slog | 
| testlist_digest | 
| testlist_digest_cookie | 
| testlist_digest_mlog | 
| testlist_digest_slog | 
| testlist_mlog | 
| testlist_mod | 
| testlist_mod_slog | 
| testlist_slog | 
+------------------------+ 

你可以用一下命令察看! 
# mysqlshow -u root -pXXXX ezmlm

9、安装autorespond 

(对于qmailadmin-0.74版以上,必须使用2.0以上的版本) 
# tar zxvf autorespond-2.0.0.tar.gz 
# cd autorespond-2.0.0 
# make 
# make install 
# cp autorespond /usr/local/bin


#./vdeldomain test.domain.com 
10、重新编译mysql数据库 

#cd /home/vpopmail/bin 
#./vadddomain test.domain.com

如果添加失败一定要删除虚拟域,然后查看mysql数据库是否有安装vpopmail时自动添加的数据库,如

果没有请检查mysql用户vpopmail是否拥有对数据库拥有全部权限,然后重新安装vpopmail程序。 

#/home/vpopmail/bin/vdeldomain test.domain.com
#/usr/local/bin/mysql –u root –p 

use vpopmail; 
drop table vpopmail; 
create table vpopmail 
( pw_id int(5) unsigned NOT NULL auto_increment, 
pw_name varchar(32) NOT NULL default '', 
pw_domain varchar(64) NOT NULL default '', 
pw_passwd varchar(40) NOT NULL default '', 
pw_uid int(11) default NULL, 
pw_gid int(11) default NULL, 
pw_gecos varchar(64) default NULL, 
pw_dir varchar(160) default NULL, 
pw_shell varchar(20) default NULL, 
pw_clear_passwd varchar(16) default NULL, 
PRIMARY KEY (pw_id), 
KEY pw_name (pw_name,pw_domain) 
) TYPE=MyISAM; 

(或者 
use vpopmail; 
alter table vpopmail drop primary key; 
alter table vpopmail add column pw_id int(5) NOT NULL primary key auto_increment; 


create table address 

id int(11) unsigned NOT NULL auto_increment, 
pw_id int(5) unsigned NOT NULL default '0', 
name varchar(64) NOT NULL default '', 
email varchar(128) NOT NULL default '', 
UNIQUE KEY id (id), 
KEY pw_id (pw_id) 
) TYPE=MyISAM; 

//*
peng的是(可供参考)
create table address 

id int(11) unsigned NOT NULL auto_increment, 
pw_id int(5) unsigned NOT NULL default '0', 
name varchar(64) NOT NULL default '' , 
email varchar(128) NOT NULL default '', 
UNIQUE KEY id (id), 
KEY pw_id (pw_id) 
);
修改原来的vpopmail表,方法如下: 
use vpopmail; 
alter table vpopmail drop primary key; 
alter table vpopmail add column pw_id int(5) NOT NULL primary key auto_increment;
*//
quit;
退去数据库:quit 

重新添加虚拟域和用户 
#cd /home/vpopmail/bin 
#./vadddomain test.domain.com 输入postmaster密码,这是以后使用qmailadmin管理虚拟域

test.domain.com的密码 
#./vadduser test@test.domain.com 输入密码test 

检查数据库vpopmail的vpopmail表是否有你添加的用户。

11、 安装igenus 

# cd /home/software 
# cp igenus_2_20030311.tgz /var/www 
# cd /var/www 
# mkdir temp 
# chown vpopmail.vchkpw temp 
# tar zxvf igenus_2_20030311.tgz 
修改config/config_inc.conf文件。config_inc.conf是igenus的配置文件,必须正确设置,具体设置

如下: 
# vi /var/www/igenus 

$CFG_BASEPATH = "/var/www/igenus"; 
$ CFG_BASEPATH -----是iGNEUS webmail安装在系统的路径。 

$CFG_MYSQL_HOST = 'localhost'; 
$CFG_MYSQL_HOST -----是mysql服务器的地址。 

$CFG_MYSQL_USER = 'root'; 
$CFG_MYSQL_USER -----是mysql服务器的用户名。 

$CFG_MYSQL_PASS = 'mysql2003'; 
$CFG_MYSQL_PASS -----是mysql服务器的密码,根据你的实际填写 

$CFG_LANGUAGE = gb; 
$CFG_LANGUAGE-----是系统默认语言,可有中英日可选。 

$CFG_GMT = +8; // GMT time local 
$CFG_GMT----是时区设置,中国选+8。 

$CFG_TEMP = $CFG_BASEPATH."/../temp"; 
$CFG_TEMP----临时文件的位置。 

3、修改默认登录域的设置,编辑login.php,查找以下字符,可设置你默认的邮件主机地址,可以设置

多个。当然了,不改也可以的,略过这一步。 
# vi /var/www/igenus/login.php 

SIZE="10" STYLE="font-family: Tahoma">; 

;" SIZE="19"  >

CLASS="myinput2" STYLE='font-family:Tahoma'>; ----删除@后面的句子,改变成以下: 


                    value=test.domain.com SIZE="19" 
STYLE='font-family:Tahoma'>;test.domain.com;;

修改logout.php(原来的文件退出有点问题)
session_unset();
改为:session_destroy()

12、qmailadmin

在安装之前先确认: 
你是否已经安装了vpopmail,并使用vchkpw 。 
是否已经安装ezmlm。 
是否已经安装autorespond。 
确认以上的工作已完成,可以开始安装qmailadmin。 
# cd /home/software 
# tar zxvf qmail-setup.1.5.3.tar.gz 
# tar xvzf qmailadmin-1.0.6.tar.gz 
# cd qmailadmin-1.0.6 
# cp iceblood/en-us qmailadmin-1.0.6/html/en 
# cp iceblood/en-us qmailadmin-1.0.6/html/en-us 
(注:以上两步,是为了汉化qmailadmin,用iceblood的qmail-setup的汉化文件。) 
# cd qmailadmin-1.0.6

./configure --with-htmllibdir=/usr/local/apache/cgi-bin/qadm 

--enable-qmaildir=/usr/local/qmail --enable-autoresponder-bin=/usr/local/qmail/bin 

--enable-ezmlmdir=/usr/local/qmail/bin/ezmlm --enable-cgibindir=/usr/local/apache/cgi-bin 

--enable-htmldir=/usr/local/apache/htdocs

make 
make install-strip

chown –R vpopmail:vchkpw /usr/local/apache/cgi-bin/qadm
chown –R vpopmail:vchkpw /usr/local/apache/htdocs/images/qmailadmin



加载中
返回顶部
顶部