首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > 其他操作系统 > OpenBSD全能服务器安装手册之邮件服务器篇(Qmail)
【标  题】:OpenBSD全能服务器安装手册之邮件服务器篇(Qmail)
【关键字】:OpenBSD,Qmail
【来  源】:http://www.cublog.cn/u/18380/showart.php?id=131586

OpenBSD全能服务器安装手册之邮件服务器篇(Qmail)

第四课、配置邮件服务 

其实OpenBSD 2.8在系统安装完成之后,就已经安装且启动了邮件服务sendmail。我们在这里需要为

OpenBSD找一个比sendmail更加安全、更加容易使用和高效能的邮件服务程序,我们选择了qmail(利用

qmail加上vpopmail可以把系统用户和邮件用户分离,并且使用虚拟邮件域。再加上MySQL就可以实现邮件

用户的数据库口令校验,这是我选择qmail的原因)。 

 

第一节、关闭sendmail 

因为qmail作为sendmail的替代服务程序,不能和sendmail一起工作,所以必须先关闭sendmail程序。

执行以下的命令关闭正在执行的sendmail程序。 

Kill –9 `cat /var/run/sendmail.pid` 

同时,必须把sendmail相关的链接删除,并把senmail更名 

chmod 0 /usr/sbin/sendmail /usr/sbin/sendmail.old 

最后还必须修改/etc/rc.conf文件,更改sendmail_flags以避免系统重新启动时sendmail自动启动。 

sendmail_flags=”-q 30m” 改为 sendmail_flags=NO 

 

第二节、安装qmail 

如果一直按照手册的例子进行练习,那么现在应该可以访问CD-ROM,如果系统曾经重新启动,那么

请按照第三课、第一节的内容来访问CD-ROM。 

进入/mnt/packages目录并安装qmail执行代码包: 

cd /mnt/packages 

pkg_add qmail-1.03.tgz 

安装的过程中会询问是否添加一些组和用户,默认选择Y,不用改变,直接回车继续就可以了。一定

要记录qmaild的uid和nofiles的gid,因为在以后的课程中启动smtp和pop的时候需要它们(例如qmaild的

uid是2850,nofiles的gid是32750)。Qmail被安装到/var/qmail目录。 

 

第三节、配置qmail 

要配置和运行需要DNS正确运行,如果还没有配置DNS服务,请按照第二课的内容进行配置。 

首先执行以下的命令建立新的sendmail链接,以实现和sendmail的兼容: 

ln –s /var/qmail/bin/sendmail /usr/sbin/sendmail 

然后建立基础的域信息,使用下面的命令来完成: 

/var/qmail/setup/config-fast 01tech.nat 

当然,也可以通过/var/qmail/setup/config来设置基础域信息,不过既然DNS正常,为什么不使用更

快捷的方法呢?config的用法请参考/var/qmail/doc里面的文档。 

复制rc文件,并对其进行修改,让它和sendmail兼容: 

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

qmail默认使用Mailbox,而sendmail默认使用Maildir,很多的程序都根据sendmail规则来编写,需

要使用Maildir,所以需要更改rc文件,作出以下的更改: 

Mailbox 改为 Maildir 

 

第四节、测试qmail 

安装和配置完成之后当然要测试一下qmail的运作是否正常了,执行以下的命令启动qmail服务: 

csh –cf ‘/var/qmail/rc &’ > /dev/null & 

然后使用以下的命令查看是否存在qmail-lspawn ./Maildir。如果已经存在,则证明qmail服务已经

正常启动,如果没有找到,就需要按照第三节的内容重新配置。 

ps -x 

 

第五节、启动系统时自动运行qmail服务 

首先修改/etc/rc.conf文件,添加以下的内容: 

qmail_flags=”” 

然后修改/etc/rc文件,找到sendmail的启动代码,在后面添加以下的代码: 

if [ “X${qmail_flags}” != X”NO” ]; then 

echo –n ‘ qmail’; csh –cf ‘/var/qmail/rc &’ > /dev/null & 

fi 

 

 

 

 

 

第五课、分离系统用户和邮件用户 

我们使用vpopmail来分离系统用户和邮件用户,这样可以提高系统的安全性。而且vpopmail还可以

使用虚拟域名,也就是同一个IP的不同域名的邮箱。 

 

第一节、展开源代码包 

进入/usr/src目录,并解压vpopmail-4.9.8源代码包,然后进入vpopmail-4.9.8目录: 

cd /usr/src 

tar zxvf /mnt/packages/vpopmail-4.9.8.tar.gz 

cd vpopmail-4.9.8 

 

第二节、使用MySQL支持 

如果您的系统没有提供MySQL支持,请跳过这一步。 

修改vmysql.h文件,找到其中的一行内容为: 

#define MYSQL_PASSWORD “gipgap” 

把里面的gipgap替换成为可以访问MySQL的系统管理员口令123456: 

#define MYSQL_PASSWORD “123456” 

 

第三节、添加组和用户 

编译和运行vpopmail,需要vchkpw组和属于vchkpw组的vpopmail用户。使用以下的命令添加组和用户: 

groupadd vchkpw 

useradd –g vchkpw vpopmail 

 

第四节、准备/etc/tcp.smtp文件 

要编译vpopmail需要有tcp.smtp文件,默认的存放路径是/etc目录,通过下面的命令产生该文件: 

echo ‘127.0.0.:allow,RELAYCLIENT=””’ > /etc/tcp.smtp 

 

第五节、运行配置程序 

运行配置程序configure,获取编译所需的编译器,外部环境等信息: 

./configure --enable-default-domain=01tech.nat \ 

          --enable-admin-email=zenz-hu@01tech.nat \ 

          --enable-mysql=y \ 

          --enable-sqlincdir=/usr/local \ 

          --enable-sqllibdir=/usr/local \ 

          --enable-large-site=y \ 

          --enable-passwd=n \ 

          --enable-hardquota=8000000 

解释一下各项的含义:--enable-default-domain=01tech.nat指定默认的邮件域是

01tech.nat;--enable-admin-email=zenz-hu@01tech.nat说明管理员的邮箱;--enable-mysql=y告诉编

译器要使用MySQL数据库作口令检查服务;--enable-sqlincdir=/usr/local和—enable-sqllibdir=/usr/local

告诉编译器到哪里寻找MySQL的头文件和库文件;--enable-large-site=y用于把域信息保存到MySQL数据库中,

但是如果有太多的虚拟域则不适宜采用本项;--enable-passwd=n告诉系统不在/etc/passwd口令文件中

查找邮箱用户的口令;--enable-hardquota=8000000限制每个用户的邮箱大小为8Mb。 

第六节、编译并安装vpopmail 

只需要简单的命令,即可编译并安装vpopmail: 

make 

make install-strip 

安装后的vpopmail在/home/vpopmail目录下。 

 

第七节、添加邮件域和更改postmaster口令 

现在的vpopmail还没有邮件域,即使在编译的时候指定了默认的邮件域也一样需要通过执行以下的

程序来添加邮件域: 

/home/vpopmail/bin/vadddomain 01tech.nat 

系统会询问属于这个域的postmaster的口令并要求确认,输入123456作为口令吧(记住,这里使用的

任何口令都不应该在实际应用中出现,否则您的系统会有很大的安全问题)! 

如果在这个步骤出现错误提示,那么您很可能需要重新进行本课的练习了。 

第八节、启动smtp和pop3服务 

要用户可以用smtp方式发送邮件以及使用pop3方式接受邮件,需要修改/etc/rc文件,在qmail启动代

码后面添加以下的代码: 

if [ -x /home/vpopmail/bin/vchkpw ]; then 

echo –n ‘ smtpd’ 

/usr/local/bin/tcpserver –u2850 –g32750 0 smtp \ 

/var/qmail/bin/qmail-smtpd 2>&1 > /dev/null & 

echo –n ‘ popd’ 

/usr/local/bin/tcpserver 0 pop3 \ 

/var/qmail/bin/qmail-popup pop.01tech.nat \ 

/home/vpopmail/bin/vchkpw \ 

/var/qmail/bin/qmail-pop3d Maildir & 

fi 

经过上面的修改,系统在每次重新启动之后,都会自动启动smtp和pop3服务了。 

 

vpopmail的管理手册在/home/vpopmail/doc目录中。 

linux tar命令详解(转载):【上一篇】
OpenBSD全能服务器安装手册之域名解析篇:【下一篇】
【相关文章】
  • 收藏两片qmail的文章
  • 用~Openbsd3.8建立 CS1.6服务器~~~
  • 理解qmail
  • 防火墙技术____PF:OpenBSD数据包过滤
  • vpopmail和qmailadmin对用户的管理
  • qmail的作者做的调查
  • Qmail邮件系统下防止滥用mail relay
  • OpenBSD 入门
  • OpenBSD+OpenSSL+Apache 实现要求个人证书的网页服务器
  • 曾经写过关于qmail的技术文章
  • 【随机文章】
  • MS Windows Mailslot Ring0 Memory Corruption Exploit (MS06-035)
  • 实时监测网络是否断线的几种办法
  • 在大型IP网络中采用MPLS实现流量工程
  • 非常好用小工具pstools!
  • 源代码 超值仅售100元
  • 《数据精灵》(DataFairy)?
  • 让Linux账号搬家
  • 2G email account from MSN
  • 网页上的脚本造成 ie 运行速度减慢
  • 新的一周里又有多少未知的事情(闲谈浏览器)
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.