最近线上的一台qmail邮件系统因硬件出现故障,又重新部署了新的Qmail邮件系统,在网上查阅了好多关于qmail安装资料,下面是我整理的qmail安装和SMTP认证配置文档。

准备条件:
系统:centos 5.5 64位
安装qmail邮件系统依赖的相关软件包
yum install g++ gcc-g++ gdbm gdbm-devel openssl openssl-devel stunnel krb5-devel bzip2 bzip2-devel
然后删除系统自带的邮件系统,以免安装受影响
rpm -e --nodeps sendmail postfix

mkdir -p /var/src/qmail
软件包:
qmail           http://www.qmail.org/netqmail-1.05.tar.gz
ucspi-tcp       http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tat.gz
daemontools     http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
vpopmail        http://shupp.org/software/vpopmail-5.4.10.tar.gz

安装netqmail
cd ../
tar -zxvf qmail/netqmail-1.05.tar.gz
cd netqmail-1.05
./collate.sh

安装daemontools
mkdir -p /package
chmod 1755 /package
cd /package
tar -zxvf /var/src/qmail/daemontools-0.76.tar.gz
cd admin/daemontools-0.76
patch -p1 < /var/src/netqmail-1.05/other-patches/daemontools-0.76.errno.patch
package/install

安装ucspi-tcp
cd /var/src/
tar -zxvf qmail/ucspi-tcp-0.88.tar.gz
cd ucspi-tcp-0.88
patch -p1 < /var/src/netqmail-1.05/other-patches/ucspi-tcp-0.88.errno.patch
make
make setupcheck

设置qmail文件目录用户及其用户组
mkdir /var/qmail
groupadd nofiles
useradd -g nofiles -d /var/qmail/alias alias
useradd -g nofiles -d /var/qmail qmaild
useradd -g nofiles -d /var/qmail qmaill
useradd -g nofiles -d /var/qmail qmailp
groupadd qmail
useradd -g qmail -d /var/qmail qmailq
useradd -g qmail -d /var/qmail qmailr
useradd -g qmail -d /var/qmail qmails
cd /var/src
tar -zxvf qmail/toaster-scripts-0.8.tar.gz
cd netqmail-1.05/netqmail-1.05/
ln -s /usr/include/ /usr/kerberos/include/
rm /usr/sbin/sendmail
make
make setup check

注意qmail的补丁将在vpopmail安装以后打
打开SPF checking
echo 3 > /var/qmail/control/spfbehavior
cd ~alias; echo "admin@test.com" > .qmail-postmaster
echo "admin@test.com" > .qmail-mailer-daemon
echo "admin@test.com" > .qmail-root
chmod 644 ~alias/.qmail*
./config-fast mail.test.com   你可以填写你实际邮件服务器的域名

修改qmail的man路径
Edit  /etc/man.config
Add "MANPATH /var/qmail/man"
相应脚本
cd /var/src
cp toaster-scripts-0.8/rc /var/qmail/rc
chmod 755 /var/qmail/rc
mkdir /var/log/qmail
echo ./Maildir/ >/var/qmail/control/defaultdelivery
cp toaster-scripts-0.8/qmailctl /var/qmail/bin/
chmod 755 /var/qmail/bin/qmailctl
ln -s /var/qmail/bin/qmailctl /usr/bin
ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
#Now create the supervise directories/scripts for the qmail services:
mkdir -p /var/qmail/supervise/qmail-send/log
mkdir -p /var/qmail/supervise/qmail-smtpd/log
mkdir -p /var/qmail/supervise/qmail-pop3d/log
mkdir -p /var/qmail/supervise/qmail-pop3ds/log
cp /var/src/toaster-scripts-0.8/send.run /var/qmail/supervise/qmail-send/run
cp /var/src/toaster-scripts-0.8/send.log.run /var/qmail/supervise/qmail-send/log/run
cp /var/src/toaster-scripts-0.8/smtpd.run /var/qmail/supervise/qmail-smtpd/run
cp /var/src/toaster-scripts-0.8/smtpd.log.run /var/qmail/supervise/qmail-smtpd/log/run
cp /var/src/toaster-scripts-0.8/pop3d.run /var/qmail/supervise/qmail-pop3d/run
cp /var/src/toaster-scripts-0.8/pop3d.log.run /var/qmail/supervise/qmail-pop3d/log/run
cp /var/src/toaster-scripts-0.8/pop3ds.run /var/qmail/supervise/qmail-pop3ds/run
cp /var/src/toaster-scripts-0.8/pop3ds.log.run /var/qmail/supervise/qmail-pop3ds/log/run
echo 20 > /var/qmail/control/concurrencyincoming
chmod 644 /var/qmail/control/concurrencyincoming
chmod 755 /var/qmail/supervise/qmail-send/run
chmod 755 /var/qmail/supervise/qmail-send/log/run
chmod 755 /var/qmail/supervise/qmail-smtpd/run
chmod 755 /var/qmail/supervise/qmail-smtpd/log/run
chmod 755 /var/qmail/supervise/qmail-pop3d/run
chmod 755 /var/qmail/supervise/qmail-pop3d/log/run
chmod 755 /var/qmail/supervise/qmail-pop3ds/run
chmod 755 /var/qmail/supervise/qmail-pop3ds/log/run
mkdir -p /var/log/qmail/smtpd
mkdir -p /var/log/qmail/pop3d
mkdir -p /var/log/qmail/pop3ds
chown -R qmaill /var/log/qmail
允许daemontools来启动qmail
ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service

启动qmail服务
qmailctl start
安装vpopmail
groupadd -g 89 vchkpw
useradd -u 89 -g vchkpw vpopmail
cd /var/src
tar -zxvf qmail/vpopmail-5.4.10.tar.gz
cd vpopmail-5.4.10

./configure --enable-logging=v
make
make install-strip
echo '127.:allow,RELAYCLIENT=""' > ~vpopmail/etc/tcp.smtp
cd ~vpopmail/etc
tcprules tcp.smtp.cdb tcp.smtp.tmp < tcp.smtp

安装vpopmail启动脚本
cp ../toaster-scripts-0.8/vpopmailctl /var/qmail/bin/vpopmailctl
chmod 755 /var/qmail/bin/vpopmailctl
ln -s /var/qmail/bin/vpopmailctl /usr/bin

安装qmail的补丁
cd /var/src/netqmail-1.05/netqmail-1.05
bunzip2 -c ../../tar/qmail/qmail-toaster-0.9.2.patch.bz2 | patch -p0
make clean
make
qmailctl stop
make setup check
chown -R vpopmail:vchkpw /var/qmail/spam

重启启动qmail
qmailctl start
允许daemontools来启动vpopmail
ln -s /var/qmail/supervise/qmail-pop3d /var/qmail/supervise
/qmail-pop3ds /service
启动vpopmail
vpopmailctl start

添加域:
/home/vpopmail/bin/vadddomain test.com [系统会让用户定义域管理员密码的]
添加用户:
/home/vpopmail/bin/vadduser -q 10MB jerry@test.com

qmail SMTP 认证配置
在/var/src/netqmail-1.05/netqmail-1.05目录里面备份qmail-smtpd.c文件,然后拷贝http://down.51cto.com/data/452396里面的qmail-smtpd.c文件到该目录下面,然后执行下面命令:
./compile qmail-smtpd.c
./load qmail-smtpd rcpthosts.c commands.c timeoutread.c timeoutwrite.c ip.c ipme.c ipalloc.c control.c constmap.c received.c date822fmt.c now.c qmail.c cdb.a fd.a wait.a datetime.a getln.a open.a sig.a case.a env.a stralloc.a alloc.a substdio.a error.a str.a fs.a auto_qmail.o `cat socket.lib`
cp qmail-smtpd /var/qmail/bin/qmail-smtpd.auth
chmod 6755 /home/vpopmail/
chmod 6755 /home/vpopmail/bin/vchkpw

测试:
root@mail netqmail-1.05]# su - qmaild -c "/var/qmail/bin/qmail-popup localhost /home/vpopmail/bin/vchkpw pwd"
+OK <24041.1323042311@localhost>
user jerry@test.com
+OK
pass jerry
/home/vpopmail/domains/test.com/jerry 如果出现用户邮件的家目录说明认证配置成功
kill 掉tcpserver进程,安装下面的方法重启tcpserver服务,其中504,503为qmaild用户的属主和属组。
/usr/local/bin/tcpserver  -H -R -l 0 -t 1  -c 100 -x /home/vpopmail/etc/tcp.smtp.cdb -u504 -g503 \
0 smtp /var/qmail/bin/qmail-smtpd.auth /home/vpopmail/bin/vchkpw /bin/true 2>&1 \
| /var/qmail/bin/splogger smtpd 3 &

必须出现下面进程SMTP认证才会成功,否则在客户端SMTP认证通不过的
[root@mail ~]# ps -auxw |grep “ tcpserver”
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
qmaild    8473  0.0  0.0   5916   564 ?        S    Dec06   0:00 /usr/local/bin/tcpserver -H -R -l 0 -t 1 -c 100 -x /home/vpopmail/etc/tcp.smtp.cdb -u504 -g503 0 smtp /var/qmail/bin/qmail-smtpd.auth /home/vpopmail/bin/vchkpw /bin/true

标注:源码包和SMTP认证文件下载地址:http://down.51cto.com/data/452396

本文转自 sfzhang 51CTO博客,原文链接:http://blog.51cto.com/sfzhang88/852059,如需转载请自行联系原作者

Qmail+vpopmail+daemontools+ucspi邮件系统安装及其SMTP认证配置相关推荐

  1. 反垃圾邮件网关 需关闭邮件中继开启SMTP认证

    在SMTP协议中的开放式转发(Open Relay)功能是电子邮件系统中最危险的安全缺陷之一.开放式转发功能的存在,使邮件可以任意转发,导致发件人完全不可追查.无论是技术手段还是法律手段都无法起作用. ...

  2. sendmail mysql_详细介绍如何在一台CentOS平台sendmail的imap,pop3,smtp认证配置

    中国存储网chinastor.com分享CentOS平台sendmail的imap,pop3,smtp认证配置方法 首先,安装邮件服务器 yum install sendmail sendmail-c ...

  3. Postfix邮箱(四):安装Cyrus-SASL使Postfix支持SMTP认证

    说明:Postfix的SMTP认证需要透过Cyrus-SASL,连接到authdaemon获取认证信息:       本节后面将讲解Postfix自带的限制.过滤功能. 一.安装配置Cyrus-SAS ...

  4. qmail+vpopmail+mysql安装

    qmail+vpopmail+mysql安装笔记 这是一篇qmail+vpopmail+mysql的安装笔记,有些地方的安装和配置笔者也是试了很多次才成功.希望对大家 有点帮助.本文参考了Bill's ...

  5. zmail邮件系统安装手册 V2.0版本

    2019独角兽企业重金招聘Python工程师标准>>> Tmail邮件系统安装手册 V2.0版本 1.系统环境 centos6.0以上,最小化安装(64位系统) 2.部署 1.删除自 ...

  6. linux下sendmail邮件系统安装操作记录

    电子邮件系统的组成: 1)邮件用户代理(Mail User Agent , MUA),MUA是一个邮件系统的客户端程序,它提供了阅读,发送和接受电子邮件的用户接口. 最常用的 MUA 有: linux ...

  7. qmail Vpopmail And sqwebmail HOWTO

    下一页  目录 qmail Vpopmail And sqwebmail HOWTO hleil <hleil@163.com> 07-04,2000 本文档全面介绍如何使用qmail建造 ...

  8. Postfix邮件系统安装与配置:Postfix,Cyrus-IMAP,Cyrus-sasl,Dovecot和SPF

    最近发现邮件发送服务还是挺重要的.可能对于每天只有一百来封的邮件发送需求的个人博主来说,一个免费的邮箱提供的免费SMTP邮件发送服务就可以满足了,但是对于一些大型的网站.论坛和平台,每天的邮件发送量可 ...

  9. 邮件协议(SMTP)性能测试总结(Foxmail邮箱)

    https://www.cnblogs.com/luihengk/p/6102095.html 先介绍一下邮件协议SMTP的工作机制(连接和发送过程),用wireshark工具抓包进行分析,如下: S ...

最新文章

  1. Turtle-可视化界面画圣诞树
  2. 3D数学 ---- 矩阵和线性变换
  3. 国内程序员最容易发音错误的单词集合
  4. 利用有序节点来实现分布式锁
  5. es6新增的html标签,javascript – 如何导入已在html中的标签中定义的es6模块?
  6. java GZIP压缩和解压
  7. ASP.NET开发经验积累(转发)以后会陆续放上新的
  8. 牛顿插值法 matlab程序计算方法,牛顿插值法matlab程序
  9. 薅羊毛专业版助手,支持抖音/快手/京东/刷宝等50多个APP自动签到领红包,分享源码互相学习
  10. 崩溃中!我终于看明白了,什么是财富自由的底层逻辑!思维导图+笔记精华
  11. 中国企业家:TD-SCDMA的坎坷商业路
  12. 向量的数量积,向量积,混合积及应用
  13. 计算机网络——传输层
  14. 百度地图API入门1-申请百度API key
  15. jquery-9 京东和酒仙网左侧导航如何实现
  16. Fintech将重构信贷行业的信用管理现状!
  17. tomcat服务器报503
  18. xml根据属性去重。如csprj去重
  19. 千年古都西安 一座城市的辉煌与梦想
  20. Not All Carrots Are Orange

热门文章

  1. qconf 配置中心 php,QConf
  2. 三国志战略版:奸雄骑,不要奸雄
  3. mysql堡垒机漏洞_关于近期网传齐治堡垒机漏洞的声明
  4. 2021湖南省地区高考成绩排名查询,2021长沙市地区高考成绩排名查询,长沙市高考各高中成绩喜报榜单...
  5. 海尔计算机无法装win7系统,海尔自带Win10系统如何改成Win7系统?海尔台式机装win7详细步骤...
  6. 我在达内学安卓-基于ArrayAdapter创建单一对象列表方式创建联系人列表!
  7. c语言指针部分上机,北科大C语言程序设计实验报告8-指针-练习题代码(2次上机课内容)--...
  8. 基于LightGBM分类实现英雄联盟数据预测(二)
  9. 构建基于Jenkins + Github的持续集成环境
  10. seo网络优化是什么?