分享
 
 
 

SOLARIS+QMAIL+VPOPMAIL+IGENUS+QMAILAMDIN

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

作者: LLZQQ

MAIL: LLZQQ@126.COM

FROM:WWW.CHINAUNIX.NET

一、准备工作:

安装gcc、make、autoconf、automake等编译工具,建立网络连接,配置域名。

二、安装patch工具:

# gzip –d patch-2.5.4-sol8-intel-local.gz

# pkgadd –d patch-2.5.4-sol8-intel-local

# mv /usr/bin/patch /usr/bin/patch.bak

# cp /usr/local/bin/patch /usr/bin/patch

三、安装ucspi-tcp-0.88

# gzip -d ucspi-tcp-0.88.tar.gz

# tar xvf ucspi-tcp-0.88.tar

# cd ucspi-tcp-0.88

# patch -p1

# patch -p1

# patch -p1

# make

# make setup check

四、安装qmail

1.建目录:

# mkdir /var/qmail

# mkdir /var/qmail/alias

2.建组及用户:

# groupadd nofiles

# groupadd qmail

# useradd -g nofiles -m -d /var/qmail/alias -s /bin/false alias

# useradd -g nofiles -m -d /var/qmail -s /bin/false qmaild

# useradd -g nofiles -m -d /var/qmail -s /bin/false qmaill

# useradd -g nofiles -m -d /var/qmail -s /bin/false qmailp

# useradd -g qmail -m -d /var/qmail -s /bin/false qmailq

# useradd -g qmail -m -d /var/qmail -s /bin/false qmailr

# useradd -g qmail -m -d /var/qmail -s /bin/false qmails

3.打补丁及编绎安装qmail

# gzip -d qmail-1.03.tar.gz

# tar xvf qmail-1.03.tar

# gzip -d qmail-smtpd-auth-0.31.tar.gz

# tar xvf qmail-smtpd-auth-0.31.tar

# cp qmail-smtpd-auth-0.31/base64.* qmail-1.03

# patch -d qmail-1.03

# cd qmail-1.03

# patch -p1

# patch -p1

# patch -p1

# patch -p1

# patch -p1

修改qmail-smtpd.c将函数straynewline中的451改为553.(在53行)

查找“http://”两次,改其中的url如下(这样可以使QMAIL更安全些):

void straynewline() { out("451 See http://nero.3322.org.\r\n");

out("214 llzqq home page: http://nero.3322.org\r\n");

# make setup check

出现错误后,修改auto-ccld.sh文件中CC,LD成你所用的环境就可以了。

# ./config-fast nero.3322.org

4.添加别名用户:

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

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

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

5.如果存在postfix和sendmail,停用现在的mail服务

# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail

# chmod 777 /usr/sbin/sendmail

五、安装vpopmail

1.建立目录:

# mkdir /export/home/vpopmail

# mkdir /export/home/vpopmail/etc

2.添加用户和组:

# groupadd vchkpw

# useradd -g vchkpw -s /bin/false -m -d /export/home/vpopmail vpopmail

3.添加MySQL的vpopmail用户,用于操作vpopmail数据库

# mysql -u root –p******

mysqlcreate database vpopmail;

mysqlgrant all on vpopmail.* to vpopmail@localhost identified by "passWord";

4.编译安装vpopmail

# gzip -d vpopmail-5.2.1.tar.gz

# tar xvf vpopmail-5.2.1.tar

# cd vpopmail-5.2.1

# vi vmysql.h

========================= vmysql.h========================

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

#define MYSQL_UPDATE_USER "vpopmail" (用户名)

#define MYSQL_UPDATE_PASSWD "*****" (改成你设置的密码)

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

#define MYSQL_READ_USER "vpopmail" (用户名)

#define MYSQL_READ_PASSWD "*****" (改成你设置的密码)

在54行和58行后加 \

#define TABLE_LAYOUT "pw_name char(32) not null, \

pw_domain char(64) not null,

pw_passwd char(40), \

pw_uid int, pw_gid int, \

pw_gecos char(4

, \

pw_dir char(160),

pw_shell char(20), \

PRimary key (pw_name, pw_domain ) "

========================= vmysql.h========================

5.创建tcp.smtp文件(或者使用/etc/tcp.smtp)

# vi /export/home/vpopmail/etc/tcp.smtp

127.0.0.1:allow,RELAYCLIENT=""

:allow

# cd /export/home/vpopmail/etc

# tcprules tcp.smtp.cdb tcp.smtp.tmp

6.进行编译:

./configure

--prefix=/export/home/vpopmail

--enable-mysql=y

--enable-incdir=/opt/sfw/mysql/include/mysql --enable-libdir=/opt/sfw/mysql/lib/mysql --enable-default-domain=nero.3322.org

--enable-passwd=n

--enable-defaultquota=52428800s --enable-tcprules-prog=/usr/local/bin/tcprules --enable-tcpserver-file=/export/home/vpopmail/etc/tcp.smtp --enable-vpopuser=vpopmail

--enable-vpopgroup=vchkpw

--enable-ip-alias-domains=n

需要改下面两个文件中的“cc -s”为“gcc -s”

./cdb/conf-cc

./cdb/conf-ld

# make

# make install-strip

7.创建虚拟域

# cd /export/home/vpopmail/bin

# ./vadddomain nero.3322.org

如果不成功的话,则必须先删除创建的域(vdeldomain 域名),

# ./vadduser llzqq@nero.3322.org

# ./vadduser test@nero.3322.org

如果添加domain时,提示Domain already exists,但却删除domain又提示Domain does not exist.则采用下面的处理方法.

删除/var/qmail/control目录下rcpthosts,virtualdomains文件中有关domain的信息;同时删除/var/qmail/user目录下assign文件中有关domain的信息;然后运行/var/qmail/bin/qmail-newu.这时候就可以正常添加domain了.

六、smtp-auth的设置

1.修改vchkpw的属性

# cd /export/home/vpopmail/bin

# chmod 4755 vchkpw

# chown root:sys vchkpw

如果使用带验证的smtp,smtp进程要调用密码验证程序,则必须要使用 setuid 和setgid。提高vchkpw的权限,才能完成setgid操作。

2.安装cmd5checkpw

# gzip -d cmd5checkpw-0.22.tar.gz

# tar xvf cmd5checkpw-0.22.tar

# cd cmd5checkpw-0.22

# make

# mkdir /usr/man/man8

# make install

七、生成qmail的启动脚本

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

对rc文件进行修改,以决定投送方式:

# vi /var/qmail/rc

这里要注意,这三个文件中的命令最好写在一行.

=====================================rc=====================================

#!/bin/sh

# Using splogger to send the log through syslog.

# Using dot-forward to support sendmail-style ~/.forward files.

# Using qmail-local to deliver messages to ~/Mailbox by default.

exec env - PATH="/var/qmail/bin:$PATH" qmail-start ./Maildir/ splogger qmail %26amp;

=====================================rc=====================================

编辑smtp服务的启动脚本

# vi /var/qmail/smtp

====================================smtp====================================

#!/bin/sh

QMAILDUID=qmaild

NOFILESGID=nofiles

/usr/local/bin/tcpserver -H -R -l 0 -t 1 -v -p -x /export/home/vpopmail/etc/tcp.smtp.cdb -u $QMAILDUID -g $NOFILESGID 0 smtp /var/qmail/bin/qmail-smtpd nero.3322.org /export/home/vpopmail/bin/vchkpw /bin/true /bin/cmd5checkpw /bin/true 2%26amp;1 | /var/qmail/bin/splogger smtpd 3 %26amp;

====================================smtp====================================

编辑pop3服务的启动脚本

# vi /var/qmail/pop3

====================================pop3====================================

#!/bin/sh

/usr/local/bin/tcpserver -H -R 0 pop3 /var/qmail/bin/qmail-popup nero.3322.org

/export/home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir %26amp;

====================================pop3====================================

# chmod 755 /var/qmail/rc

# chmod 755 /var/qmail/smtp

# chmod 755 /var/qmail/pop3

八、运行qmail并测试

# /var/qmail/rc

# /var/qmail/smtp

# /var/qmail/pop3

查看qmail的服务进程是否已完全正常启动

# ps -ef | grep qmail

九、建立开机启动脚本:

# vi /etc/init.d/qmail

==================================qmail==============================

#! /bin/sh

# chkconfig: 2545 90 90

# description: qmail (include smtp and pop3) auto start/stop scripts.

case "$1" in

start)

echo -n "start qmail:"

/var/qmail/rc %26amp;

echo "."

echo -n "start smtp service:"

/var/qmail/smtp

echo "."

echo -n "start pop3 service:"

/var/qmail/pop3

echo "."

;;

stop)

echo "stop qmail:"

pkill qmail-send

pkill qmail-clean

pkill qmail-rspawn

pkill qmail-lspawn

pkill splogger

pkill tcpserver

;;

*)

exit 1

;;

esac

exit 0

==================================qmail==============================

# chmod 744 /etc/init.d/qmail

# chown root:sys /etc/init.d/qmail

# ln -s /etc/init.d/qmail /etc/rc3.d/S82qmail

# ln -s /etc/init.d/qmail /etc/rc2.d/K82qmail

十、安装IGENUS

# gzip -d igenus_2_20030516_snap.tgz

# tar vxf igenus_2_20030516_snap.tar

# mv igenus /var/www/html/

# cd /var/www/html/igenus

# mkdir temp

# chmod -R 0755 temp

# chown -R vpopmail:vchkpw temp

其他关于IGENUS的详细设置略。

十一、建立MySQL数据表:

# mysql -u root -p******

mysqluse vpopmail;

mysqlalter table vpopmail drop primary key;

mysqlalter table vpopmail add column pw_id int(5) NOT NULL primary key auto_increment;

mysqlcreate 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;

十一、安装autorespond

# gzip –d autorespond-2.0.2.tar.gz

# tar xvf autorespond-2.0.2.tar

# cd autorespond-2.0.2

# vi Makefile

将其中的INSTALL_DIR =修改为 /var/qmail/bin

# make

# make install

# cp autorespond /usr/local/bin

十二、安装QMAILADMIN

# gzip –d qmailadmin-1.0.6.tar.gz

# tar xvf qmailadmin-1.0.6.tar

# cd qmailadmin-1.0.6

# ./configure

--enable-cgibindir=/var/www/cgi-bin

--enable-htmldir=/var/www/html

--disable-ezmlmdir

# make

# make install-strip

再一次执行

# chown -R vpopmail:vchkpw /var/www/html/igenus/temp

汉化qmailadmin首先删除qmailadmin安装的菜单文件

# rm -f /usr/local/share/qmailadmin/html/en

# rm -f /usr/local/share/qmailadmin/html/en-us

生成自己的简体中文菜单文件/usr/local/share/qmailadmin/html/en

# vi /usr/local/share/qmailadmin/html/en

=================================== en ===================================

000 gb2312

001 主菜单

002 邮件帐号

003 添加邮件机器人:

004 邮件机器人的名字:

005 发送拷贝到邮件地址:

006 标题:

007 添加转发帐号:

008 转发到邮件地址:

009 本地邮件用户名:

010 要转发的邮件地址的格式是:user@domain.com.

本地邮件用户的格式是: popaccount

例如,

如果转发 本地用户: sales到邮件地址: joe@domain.com

那么所有发到sales用户的邮件都将转发到 joe@domain.com这个邮件地址中

011 Add List Moderator

012 Add Moderator to mailing list

013 邮件地址:

014 添加新的用户到邮件类别

015 创建新的邮件列表

016 邮件列表的名字

017 邮件列表所有者的邮件地址:

018 Archived

019 Not archived

020 Block archive. Only moderators are allowed to access the archive.

021 Archive access is open to anyone or subscribers only, depending on the Guard setting.

022 No digest. Do not set up the digest list.

023 Prefix. Set up the list so that the outgoing subject will be prefixed with the list name.

024 No prefix.

025 Guard archive. Archive access requests from unrecognised SENDERs will be rejected.

026 Do not guard archive. Archive access request from any SENDERs will be serviced.

027 Subscriptions do not require confirmation.

028 Subscription requires confirmation by reply to a message sent to the subscription address.

029 Indexed for WWW archive access.

030 The list is created without WWW archive index

031 Unsubscribe does not require confirmation.

032 Unsubscribe requires confirmation by a reply to a message sent to the subscription address.

033 List subscribers. Remote administrators can request a subscriber list, and search the subscriber log.

034 The subscriber list cannot be obtained.

035 Message moderation.

036 Message posting is not moderated.

037 Posts from addresses other than moderators are rejected. This is applicable to message moderated lists only.

038 Others not rejected. For moderated lists, all posts are forwarded to the moderators. The switch has effects only on message moderated lists.

039 Respond to adminstrative requests and allow archive retrieval.

040 Allow only digest creation, remote adminstration, and archive retrieval by remote administrators, (if the list is configured with this options).

041 Allow remote administrators to edit files in text directory

042 Text file editing is not allowed

043 ReQuest address is serviced

044 Do not process messages sent to the request address

045 Enables remote administration

046 No remote administration.

047 Subscription moderation.

048 Subscriptions are not moderated.

049 Trailer

050 No trailer

051 User posts only

052 Do not restrict posts based on SENDER address

053 允许数据库支持

054 主机名

055 端口

056 用户名

057 密码

058 数据库

059 表

060 添加

061 邮件帐号

062 CatchAll:

063 说明

064 修改

用户

065 删除

帐号

066 CatchAll

帐号

067 创建新的邮件帐号

068 帐号别名

069 别名

070 邮件帐号

071 修改

072 删除

073 创建新的别名

074 Forward Accounts

075 转发

076 创建新的转发

077 邮件机器人

078 邮件机器人

079 新的邮件机器人

080 邮件列表

081 列表

082 打开.qmail-default时出错

083 添加

订阅人

084 删除

订阅人

085 列出

订阅人

086 添加

Moderator

087 删除

Moderator

088 列出

Moderators

089 新的邮件列表

090 创建邮件帐号

091 密码 (again):

092 真实姓名

093 列表名

094 提交用户

095 提交新用户到下列邮件列表

096 删除别名

097 确认删除

098 删除邮件机器人

099 数据库设置

100 删除转发

101 删除邮件列表

102 删除用户

103 转发邮件

104 是的, 将它转发到:

105 修改邮件机器人

106 名字

107 说明

108 创建新的邮件地址

109 修改用户

110 新的密码

111 修改用户

112 管理员帐号

113 域名

114 登录

115 Redirects for user

116 Current redirects

117 Add/Replace redirect email

118 Delete rediect

119 添加成功

120 无法添加

121 别名

122 转发

123 Show redirect

124 快捷链接

125 创建新的邮件帐号

126 创建新的别名

127 创建新的转发

128 创建新的邮件机器人

129 创建新的邮件列表

130 CatchAll: Bounced

131 没有用户可供浏览,请返回到上一页

132 默认

133 索引:

134 Set no default catch all account

135 上一页

136 刷新

137 下一页

138 Type in password

139 邮件用户的密码更改成功。

140 密码修改失败。

141 用删除成功。

142 没有认证

143 目录权限错误

144 文件权限错误

145 无效用户内部错误

146 Cannot Do redirect

147 Redirect Now

148 无效邮件地址

149 Cannot Delete Last Entry

150 文件错误

151 Line Deleted Succesfully

152 转发添加成功

153 用户名不存在

154 别名添加成功

155 Invalid Action

156 达到最大的别名数目限制

157 达到最大的转发数目限制

158 达到最大邮件机器人数目限制

159 Invalid DotQmail Type: adddotqmail()

160 别名无效

161 Did not add alias. POP Account must be an existing POP Account.

162 邮件用户名无效

163 本地用户名无效

164 Invalid Alias Type : adddotqmailnow()

165 添加邮件用户的别名失败

166 添加邮件用户的别名成功

167 删除用户的别名/转发出错。

168 添加用户的别名/转发成功。

169 Error deleting redirect/forward for POP Account

170 Redirect/forward for POP Account deleted successfully

171 Error: could not change to directory

172 Only one person can log in as system postmaster at one time. Someone else has logged in. Please only have one login at a time.

173 登录过期,请重新登录

174 无效的邮件机器人名

175 用户名已存在

176 Please fill in Mail Robot name

177 Invalid Owner Email Address

178 请输入标题

179 Please type in something to send

180 邮件机器人添加成功

181 无法删除邮件机器人

182 邮件机器人删除成功

183 邮件机器人修改成功

184 达到最大的邮件列表数

185 无法删除邮件列表数

186 邮件列表删除成功

187 邮件列表添加成功

188 无效的邮件列表名

189 邮件列表中邮件地址一览

190 End of list

191 邮件列表中moderator用户的邮件地址一览

192 返回主菜单

193 添加到主菜单

194 Email address added as a moderator to mailing list

195 从邮件列表中删除订阅人

196 从邮件列表中删除moderator

197 removed as a moderator for mailing list

198 登录无效

199 达到最大的邮件用户数目

200 密码不匹配,请重新输入

201 内存耗尽

202 Where the parameters are:

203 从邮件列表中移除

204 Go user

205 禁止 转发/假期(Vacation)

206 Set remote catch all account

207 Set Remote CatchAll

208 Remote CatchAll Address:

209 允许转发

210 允许保存拷贝和转发

211 转发邮件到:

212 允许假期(Vacaction)

213 Vacation 标题:

214 Vacation 信息:

215 必须提供转发地址

216 必须提供标题

217 刷新主菜单

218 退出

219 Moderators列表

220 Moderator

地址

221 订阅人列表

222 提交

地址

223 用户不存在

224 (点击修改)

225 修改邮件列表

226 邮件列表修改成功

227 诊断

228 总数:

229 不限制

230 订阅人总数:

231 没有列表可供显示

232 没有别名和转发可供显示

233 没有邮件机器人可供显示

=================================== en ===================================

# cd /usr/local/share/qmailadmin/html

# cp en en-us

生成admin表

# mysql -u root –p******

mysqluse vpopmail;

mysqlCREATE TABLE `admin` (

`id` tinyint(3) unsigned NOT NULL auto_increment,

`domain` varchar(128) NOT NULL default '',

`quota` smallint(5) unsigned NOT NULL default '0',

`total` smallint(5) unsigned NOT NULL default '0',

`createtime` timestamp(14) NOT NULL,

`login` char(1) NOT NULL default '',

`cur_total` smallint(5) NOT NULL default '0',

`cur_quota` smallint(5) NOT NULL default '0',

PRIMARY KEY (`id`),

UNIQUE KEY `domain` (`domain`)

) TYPE=MyISAM PACK_KEYS=1 AUTO_INCREMENT=1 ;

访问QMAILADMIN页面:

http://nero.3322.org/cgi-bin/qmailadmin

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有