sasl+Extmail实现基于虚拟用户的邮件系统架构

用户可以通过Extmail提供的Webmail来注册虚拟用户的帐号和密码,用户的帐号和密码都保存在MySQL数据库中,当用户使用虚拟的帐号和密码通过postfix发送邮件时要通过mysql对其帐号和密码进行认证(需要配置postfix基于mysql的认证),只有认证成功虚拟用户才可以发送邮件,当邮件服务器接收到一个本地用户的邮件的时候,这个用户的帐号和密码也必须通过mysql的认证,否则将不能通过dovecot来接受邮件(需要配置dovecot基于mysql的认证)。

Extmail能够提供例如126邮箱等webmail的所有功能,还能够在其基础上进行二次开发,下面我们就通过实际的操作配置来切实的体验一下吧

配置过程:

本文的linux操作系统内核为:vmlinuz-2.6.18-164.el5
本机IP为:192.168.0.200
主机名:mail.test.com (永久有效)

一、准备工作:

1、安装以下开发所用到的rpm包组:
Development Libraries
Development Tools
Legacy Software Development
X Software Development
yum groupinstall "Development Libraries" "Development Tools" "Legacy Software Development " "X Software Development" -y

2、关闭sendmail,并将它的随系统自动启动功能关闭,卸载sendmail
service sendmail stop
chkconfig sendmail off
rpm -e sendmail --nodeps
成功卸载将出现如下提示:

2011-09-22 13-22-41

3、安装所需的rpm包:
yum install -y httpd php php-mysql mysql mysql-server mysql-devel openssl-devel dovecot perl-DBD-MySQL tcl tcl-devel libart_lgpl libart_lgpl-devel libtool-ltdl libtool-ltdl-devel expect

4、启动mysql数据库,并给mysql的root用户设置密码:
service mysqld start   
chkconfig mysqld on
mysqladmin -u root password 'RedHat'     为mysql的用户设置密码:redhat
5、启动saslauthd认证服务,并将其加入到自动启动队列:
service saslauthd start
chkconfig saslauthd on

二、配置DNS服务器

1、快速构建一个纯缓存DNS服务器

yum install caching-nameserver -y

2、编辑DNS的主配置文件,内容如下:

2011-09-22 00-32-00

named-checkconf   检查主配置文件是否有语法错误,如果没返回信息,则语法正确

3、编辑区域正向解析文件/var/named/test.zone,内容如下:

2011-09-22 00-34-21

将此文件的属组改为named
chown :named /var/named/test.zone

4、编辑区域反向解析文件/var/named/192.zone,内容如下:

2011-09-22 00-41-19

将此文的属组改为named

chown :named /var/named/192.zone

5、将设定test.com这个域的DNS服为本主机

vim /etc/resolv.conf    修改内容如下
nameserver 192.168.0.200

6、启动DNS服务,并将此服务加入开机自动启动项

service named start
chkconfig named on

7、测试DNS服务

测试正向解析邮件服务器域名:
dig A mail.test.com   显示如下:

2011-09-22 00-47-33

测试反向解析邮件服务器域名:

dig -x 192.168.0.200

2011-09-22 00-50-02

显示表示,DNS解析正常

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e369c750043f1c782cb96242057dd8dc.html