TurboLinux下架设Qmail服务器历程
最新一直忙于其他琐事,今天下午才有了点时间。
上网下载到了 checkpassword-0.90.tar.gz,cmd5checkpw-0.22.tar.gz
开始忙乎吧:
# cd /usr/local/src/
# tar xfvz checkpassword-0.90.tar.gz
# cd checkpassword-0.90
# make
居然出现错误!!!
undefined reference to `errno' 。。。
又是未定义变量,太太太那个什么了吧?!
不管了,照上次一样处理了,
在 checkpassword.c 和 buffer_put.c 中增加了这个变量定义 int errno;
# make
居然通过,下面:
# make setup check
没有错误
# cd /usr/local/src
# tar xvfz cmd5checkpw-0.22.tar.gz
# cd cd cmd5checkpw-0.22
# mkdir /usr/man/man8
# make
# make install
好了,下面来搞这个SMTP认证吧。
修改qmail启动脚本文件 /var/qmail/bin/qmail
将smtp启动命令改为:
/usr/local/bin/tcpserver -v -x /etc/tcp.smtp.cdb 0 smtp \
/var/qmail/bin/qmail-smtpd /home/vpopmail/bin/vchkpw \
/bin/true /bin/md5checkpw /bin/true 2>&1 | \
/var/qmail/bin/splogger smtpd 3 &
重起qmail,测试一下看。。。
没有起作用?我随便输了个密码也通过?
换个不存在的用户。。。也通过?
这次把收件人换成其他服务器的地址。。。还是通过了!!!
看来有问题啊,再查资料吧。。。
好象是少了smtp认证补丁,再下一个
www.nimh.org/dl/qmail-smtpd.c
覆盖掉原文件,再编译一遍。。。
# /var/qmail/bin/qmail stop
# make setup check
# /var/qmail/bin/qmail start
再测试发信。。。
1、发给其他服务器
错的发信用户 被拒绝
对的发信用户,错的密码 被拒绝
对的用户/密码 成功
2、发给本机用户(存在的用户/不存在的用户)
错的发信用户 成功
对的发信用户,错的密码 成功
对的用户/密码 成功
真是一个奇怪的结果啊!