|
安装和基本配置:
cd QMail-1.03 make setup check ./config-fast playease.com cd ~alias touch .QMail-postmaster .QMail-mailer-daemon .QMail-root chmod 644 ~alias/.QMail* echo "127.0.0.1:allow,RELAYCLIENT=""" > /etc/tcp.SMTP
下面这一条setuid: chmod 4755 /bin/checkpassword cp /var/QMail/boot/home /var/QMail/rc 修改/var/QMail/rc把./Mailbox 改成./Maildir/ 使用Maildir;
启动QMail:
csh -cf "/var/QMail/rc &"
然后启动SMTP服务
使用第一种补丁:
tcpserver -H -R -l 0 -t 1 -c 100 -x /etc/tcp.SMTP.cdb -u 507 -g 502 0 SMTP /var/QMail/bin/QMail-SMTPd playease.com /bin/checkpassword /bin/true /bin/md5checkpw /bin/true &
使用第二种补丁:
把playease.com去掉。
这样,基于系统用户的SMTP验证就完成了~
然后我们开始做基于vpopmail的:
groupadd vchkpw useradd -g vchkpw -d /vmail vpopmail 我把vpopmail的安装目录设在/vmail中。 su vpopmail mkdir ~vpopmail/etc echo "127.0.01.:allow,RELAYCLIENT=""" > ~vpopmail/etc/tcp.SMTP ./configure --help ./configure --enable-default-domain=playease.com make make install-strip cd ~vpopmail/bin ./vadddomain playease.com ./vadduser dawn@playease.com
这样就添加了一个用户
chmod 6755 /vmail/bin/vchkpw 这样是setuid
以下是启动SMTP服务:
使用第一种补丁:
tcpserver -H -R -l 0 -t 1 -c 100 -x /etc/tcp.SMTP.cdb -u 507 -g 502 0 SMTP /var/QMail/bin/QMail-SMTPd playease.com /vmail/bin/vchkpw /bin/true /bin/md5checkpw /bin/true &
使用第二种补丁:
把playease.com去掉。
启动pop3服务:
tcpserver -H -R 0 pop-3 /var/QMail/bin/QMail-popup playease.com /vmail/bin/vchkpw /var/QMail/bin/QMail-pop3d Maildir & 使用mysql等其它模块验证时不影响。 至此大功告成。
三、 要注意的问题:
1. 在上面的实践中我用playease.com做为例子域名,用dawn作为例子用户名,替换成你自己的域名就可以了。
2. 第二个要注意的是基于vpopmail多域名的情况我没有测试,请大家自己测试,理论上应该没有问题。
3. 我的系统设置了搜索路径所以我直接用tcpserver,一盘的系统需要使用/usr/local/bin/tcpserver的方式来写
4. 我的vpopmail安装在/vmail中,大家要注意写vchkpw的路径。
5. 我这儿的507、502分别是QMaild的uid和gid,你要换成你自己的。
6. 以上操作在redhat7.1下检验通过。
(出处:中华技术网) |