转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> SyBase >> 正文
linux下用qmail建立邮件服务器         ★★★★

linux下用qmail建立邮件服务器

作者:闵涛 文章来源:闵涛的学习笔记 点击数:741 更新时间:2009/4/22 23:08:03

参考文档:
The qmail HOWTO v2
by Adam McKenna
http://www.flounder.net/qmail/qmail-howto.html

Life with qmail
by Dave Sill
http://www.lifewithqmail.org/lwq.html

xx作系统:redhat linux 7.2 (Enigma)
所需软件:
qmail-1.03.tar.gz
qmail-103.patch
ucspi-tcp-0.88.tar
daemontools-0.76.tar.gz
MySQL-3.22.32-1.i386.rpm
  MySQL-client-3.22.32-1.i386.rpm
  MySQL-share-3.22.32-1.i386.rpm
  MySQL-devel-3.22.32-1.i386.rpm
vpopmail-4.9.8.tar.gz
vqsignup-0.5.tar.gz
sqwebmail-1.2.0.tar.gz
所有软件都放置在/home/kingsix 目录下。
设置该测试机的hostname为testmail.com.cn。

1. qmail的安装

在安装之前完全删除sendmail(linux自带的mail服务器)
killall -TERM sendmail
rpm -e --nodeps sendmail

[root@testmail kingsix]# tar zxvf qmail-1.03.tar.gz
对qmail打补丁
[root@testmail kingsix]#cp qmail-103.patch qmail-1.03
[root@testmail kingsix]# cd qmail-1.03
[root@testmail qmail-1.03]#patch -p1 < qmail-103.patch
此补丁修改dns.c文件,解决域名服务的一些问题。

创建 /var/qmail目录。
创建运行qmail所需要的组和用户:
# groupadd nofiles
# useradd -g nofiles -d /var/qmail/alias -s /bin/false alias
# useradd -g nofiles -d /var/qmail -s /bin/false qmaild
# useradd -g nofiles -d /var/qmail -s /bin/false qmaill
# useradd -g nofiles -d /var/qmail -s /bin/false qmailp
# groupadd qmail
# useradd -g qmail -d /var/qmail -s /bin/false qmailq
# useradd -g qmail -d /var/qmail -s /bin/false qmailr
# useradd -g qmail -d /var/qmail -s /bin/false qmails
下一步编译qmail:
[root@testmail qmail-1.03]#make setup check
如果编译成功,在/var/qmail下面将会有完整的qmail的目录结构。

2 . 安装daemontools
[root@testmail kingsix]#tar zxvf daemontools-0.76.tar.gz
将会在kingsix目录下产生admin目录
[root@testmail kingsix]#cd admin
[root@testmail admin]#cd daemontools-0.76
[root@testmail daemontools-0.76]#package/install
完成daemontools的安装。

3. qmail的配置
为qmail添置域名
[root@testmail qmail-1.03]#./config-fast testmail.com.cn
修改 /var/control目录下面的locals 和rcpthost 文件。

4. 安装qmail alias
[root@testmail qmail-1.03]#cd /var/qmail/alias
[root@testmail alias]#echo admin > .qmail-root
[root@testmail alias]#echo admin > .qmail-postmaster
[root@testmail alias]#echo admin > .qmail-mailer-daemon

5.装配daemontools和创建控制目录
下面设置当系统启动时自动启动qmail。这里要使用daemontool里面的svcan工具。这些工具安装
在/usr/local/bin目录下面。
# mkdir -p /var/qmail/supervise/qmail-send/log
# mkdir -p /var/qmail/supervise/qmail-smtpd/log
# chmod +t /var/qmail/supervise/qmail-send
# chmod +t /var/qmail/supervise/qmail-smtpd
# mkdir -p /var/log/qmail/qmail-send
# mkdir -p /var/log/qmail/qmail-smtpd
# chown -R qmaill /var/log/qmail

在各个目录下面编辑一些脚本文件
到/var/qmail/supervise/qmail-send 目录下,创建名为run的文件,内容如下:
#!/bin/bash
exec /var/qmail/rc

到/var/qmail/supervise/qmail-send/log 目录下,创建名为run的文件,内容如下:
#!/bin/bash
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s2500000 /var/log/qmail/qmail-send

到/var/qmail/supervise/qmail-smtpd 目录下,创建名为run的文件,内容如下:
#!/bin/sh
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
exec /usr/local/bin/softlimit -m 2000000 \
/usr/local/bin/tcpserver -H -R -v -p -x /etc/tcp.smtp.cdb \
-u $QMAILDUID -g $NOFILESGID 0 smtp /var/qmail/bin/qmail-smtpd 2>&1

到/var/qmail/supervise/qmail-smtpd/log 目录下,创建名为run的文件,内容如下:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s2500000 /var/log/qmail/qmail-smtpd

修改脚本属性为可执行
chmod +x run

6.访问控制
编辑/etc/tcp.smtp文件为
127.0.0.1:allow,RELAYCLIENT=""
192.168.2.:allow,RELAYCLIENT=""
:allow
允许本机和本地局域网任意转发。但是tcpserver通过读取cdb文件来工作,所以需要用tcprules来转换tcp.smtp文件
# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp

7. 创建/var/qmail/rc
#cp /var/qmail/boot/home /var/qmail/rc
编辑rc
#!/bin/sh

# Using splogger to send the log through syslog.
# Using qmail-local to deliver messages to ~/Mailbox by default.

exec env - PATH="/var/qmail/bin:$PATH" \
qmail-start ./Maildir/ splogger qmail
增加rc的可执行属性 chmod +x rc

8.启动qmail
#mkdir /service
#ln -s /var/qmail/supervise/* /service/

用ps 察看进程,可以看到一些supervise 和qmail相关的进程。
一个邮件服务器就这样安装好了。


[MySql][转5dmail.com] freebsd+qmail+mysql+vpopmail之完…  
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台