Postfix+Cyrus-SASL+Cyrus-IMAPD+PgSQL

2009-05-13 12:54:25来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

Powerplane
[附言]
该附言或许不成其为什么许可证,但还是希望您尊重作者的愿望。
如果您发现有什么错误,请及时通知我,我将尽快作出修改。如果您在网上转载,那将是免费,但希望您附上本附言,并且注明出处的链接。如果您要把它用印刷物形式出版,请通过www.cnfug.org跟本人接洽。
您在以本文作为根据配置电脑的时候,若出现任何故障,后果自负,与本作者无关。
目标
本文的目的是在于说明如何在FreeBSD的环境下面搭建一个邮件系统。这个邮件系统支持虚拟用户,提供IMAP服务,可以成为构成WebMail系统的基础。
支持IMAP服务的Webmail有著名的IMP和SquirrelMail等等。
本文虽然是用PgSQL作为后台数据库,但是仍然对使用MySQL,LDAP数据库的作为后台的类似邮件系统有启发作用。如果仔细阅读本文,一定会有所收货的。使用其他后台数据库的话,要修改的地方有两处:pam服务和main.cf的virtual_mailbox_maps项。
本文所有的调试是在FreeBSD-4.8 release上通过的,也对FreeBSD-5作了额外的说明,主要的差异是集中在pam服务的配置不同而已,希望能有所帮助。
Linux的用户也能可以参考本文的配置,您只需要留意路径和pam服务的配置。pam服务配置跟FreeBSD-5类似。
零、阅读准备
1)阅读本文需要一定基础,我假设你已经清楚以下的东西:
邮件系统的基本原理,邮件系统的相关协议的作用,例如smtp,pop3,imap。
2)什么是SASL:
SASL的英文全称是Simple Authentication and Security Layer,简单验证和安全层。
SMTP协议并没有提供用户验证功能,很容易匿名中转邮件。即使限制了可以转发的网段,也不安全。他的定义是: a method for adding authentication support to connection-based protocols,为基于连接的协议提供认证功能。
3)软件的角色:
Postfix:充当MTA,就是smtpd,作为邮件转发用。
Cyrus-SASL:分成两部分
a)Cyrus项目的SASL lib,Postfix使用SASL需要用到的lib。
b)Cyrus-saslauthd,一个SASL的验证后台程序。
Cyrus-IMAPD:
提供IMAP服务,提供邮件读取和管理邮箱的作用。
cyradm:
这个不是一个独立的软件,安装Cyrus-IMAP的时候会自动安装上去的。它的作用是创建和管理邮箱。
PgSQL:后台数据库,存放用户的密码等等。
总的来讲,Postfix充当转送邮件的服务;Cyrus-IMAP充当提供邮件读取、管理的服务;SASL使用验证服务。
4、Cyrus-SASL和Cyrus-IMAPD不是同一样东西
就跟Microsoft Visual C++和Microsoft Office不是同一个东西一样
一、本系统的工作原理和结构
注意是本系统。实现一个邮件系统有很多种方式,即使你用的都是跟本系统完全一样的软件,也有不同的实现方式。
本系统的邮件主机是:
f4.room
f4是因为fbsd-4,域为room:是因为电脑放在房间里头。您要看不顺眼,就把本文的f4.room都换成example.com算了。
I、Postfix的担任的工作的部分:
1、这个是投递邮件的时候的用户验证的部分:
|------------------------| | Postfix | | | | |-------------| | |-| Cy-SASL-lib |--------| | | |-------------| | | |--------------| | Cy-saslauthd | |--------------| | | |-------| | PAM | |-------| | | |-----------------------| | PostgreSQL | |-----------------------|
图例说明:
当有程序访问smtp服务(TCP端口25)的时候,Postfix会给出220 ESMTP的回应,提示是要验证的smtp服务。密码和用户名提交给Postfix以后,Postfix会把密码和用户名通过调用Cy-SASL lib提交给一个后台验证程序:Cy-saslauthd。Cy-saslauthd会调用PAM模块进行验证。PAM模块会调用名为smtp的PAM服务名进行验证。在本系统中,PAM服务是调用pam_pgsql访问PostgreSQL进行验证的。然后结果再Return回去。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD4.7环境下构建中小企业Qmail邮件系统

下一篇:Apache1.3.27+mod_ssl+自定义SSL证书