更新:iredmail集成了postfix,dovecot,postfixadmin,roundcubemail,spamassassin,clamav,一键安装,异常方便!赶时间的朋友们就装这个吧!
邮件服务器这东西,小瞧它了。
我用的是LAMP(前端支持)+postfix(smtp)+dovecot(pop3/imap和smtp认证)+postfixadmin(数据库管理)+squirrelmail(webmail)。
他们的关系大概是这样:源码编译安装带dovecot和mysql模块的postfix,然后稍微改改postfix的配置文件main.cf,然 后postfix就认识他俩了;然后装dovecot,对其进行配置使支持mysql和postfix,然后弄个基于PHP的squirrelmail网 页客户端,微微设置一下./config,然后松鼠同学就认识dovecot了。然后他们就全都连通了。。然后一回生二回熟,就一起工作了。。
1)安装 & 配置postfix
具体命令怎么打请查阅官方文档,清清楚楚。make && make install 大家懂的,然后注意各种文件夹的权限设置,然后装完来句
postfix start
启动服务,可以验证下有没有启动:
qs -eaf|grep postfix
我只看到一个master和两个postfix的进程,理应还有个postfix的smtpd进程的,不过没有也罢。至少暂时只能罢了。
可以看看25端口有没被监听:
netstat -anp|grep :25
想知道自己是否成功扩展dovecot认证和mysql数据库支持,请来句
postconf -a
postconf -m
配置postfix需要达成两个目的:获得dovecot认证和mysql支持。
为什么要获得dovecot认证?因为dovecot管着用户名密码的认证。用户输入密码,由客户端递交给dovecot,dovecot到数据库里一查,嗯,没错,好,告诉postfix,这用户合法。
既然mysql由dovecot来支配,那为什么postfix也要支持mysql呢?因为他们各自拥有的账户必须一致。dovecot认为,我们 这个邮件服务器的账户是mysql里面那些记录;而postfix在不认识mysql的情况下,会认为我们邮件服务器的账户是Linux操作系统的用户。 我们需要对postfix说,童鞋你搞错了,真正的账户在数据库里,别盯着系统账户不放了= =
我的/etc/postfix/main.cf 和上面提到的参考文章中基本一致,除了自己的路径和域名。
2)安装postfixadmin
这是个基于php的给postfix和dovecot提供数据库结构的软件,有了它你可以不用手动创建表了,而且还可以当作后台使用~
装好LAMP之后,扔进去安装下基本就能用了,不过最新版采用把系统密码写进配置文件的方法,网页上面有点不友好=。=
3)安装,配置dovecot
偷个懒,直接yum install dovecot了,倘是deb系列的sudo apt-get install dovecot 应该也可以,不行的话就search一下被~