centos 6.4 postfix mysql_CentOS6.4+LAMP+Postfix+Dovecot+Postfixadmin+Roundcubemail 打造企业级邮件服务器[1]...

大纲

一、mail 协议

二、mail 组件

三、mail 工作原理(两种对比)

四、安装前的准备工作

五、安装并配置LAMP环境

六、安装并配置postfixadmin

七、安装并配置phpmyadmin

八、配置postfix邮件发送代理

九、安装并配置dovecot邮件检索代理

十、测试SMTP与POP3服务

十一、安装并配置WebMail(Roundcubemail)

十二、安装并配置病毒扫描与垃圾邮件过滤

十三、安装并配置managesieve插件

十四、常见问题分析

注:系统,CentOS 6.4 X86_64 。软件,全部都是RPM包,有兴趣的博友可以尝试一下全部源码包安装!(所安装的主要软件如下,LAMP+Postfix+Dovecot+PostfixAdmin+Roundcubemail+Amavisd-new+ClamAV+SpamAssassin+Managesieve) 软件包下载

一、mail 协议

mail使用的协议有,

协议名称

协议类型

端口号

smtp

tcp

25

pop3

tcp

110

smtps

tcp

465

pop3s

tcp

995

imap

tcp

143

imaps

tcp

993

二、mail 组件

1.MTA:mail transfer agent 邮件传输代理

常见软件,

2.MRA:mail retravial agent 邮件检索代理

常见软件,

3.MDA:mail delivery agent 邮件投递代理

常见软件,

4.MUA:mail user agent 邮件用户代理

常见软件,

5.Mailbox 信箱

三、mail 工作原理

1.常规架构

如下图,

230056681.png

各组件具体说明

(1).常用的客户端

(2).Postfix,最常用的MTA,我们通过postfix来发送邮件

(3).Dovecot,最常用的MRA,我们通过dovecot来收发邮件

(4).amavisd-new,可以理解成一个代理,Postfix把邮件交给他,他负责联系杀毒和反垃圾

(5).SpamAssassin,防垃圾邮件,是邮件系统的基本功能,SpamAssassin,是最有名的,尤其是和Amavisd ClamAV结合起来,这是一个经得起考虑的组合

(6).ClamAV,对邮件进行病毒扫描

(7).Cyrus-SASL,认证函数库

(8).Courier-Authlib,调用mysql数据库进行认证

(9).WebMail,通过浏览器来管理收发邮件

(10).OpenLDAP或MySQL,虚拟用户或虚拟域的存放数据库

(11).Maildir或Mailbox,用来存放用户邮件,两者的区别在于maildir为每个用户单独存放邮件,mailbox是所有邮件都存放在同一文件

(12).phpLDAPadmin,管理LDAP工具,用来管理虚拟用户与虚拟域

2.具体工作流程

(1). 当邮件通过outlook或foxmail发送到服务器的25端口,postfix接受连接,它会做一些基本检查

发送者是否在黑名单或者实时黑名单,如果在黑名单,马上拒绝

是否是授权用户,是授权可以进行转发

接收者是否是服务器的用户,在这里postfix调用Cyrus-SASL认证函数库,并通过Courier-Authlib去mysql数据中验证用户,如果不是,马上拒绝

如果我们启用了灰名单,会进行判断是否会拒绝邮件或者接收

230114246.png

(2).postfix 把邮件通过10024端口交给amavis来处理,注意amavis,只会检查邮件而不会丢弃或者拒绝邮件(如上图)

(3).amavis调用SpamAssassin检查邮件是否是spam,如果SpamAssassin认为邮件是垃圾邮件,会给邮件打上标记spam(如下图)

230147794.png

(注:大家会看到,只会给邮件打上spam标记,我们还是可以收到这个邮件的)

(4).amavis调用ClamAV,看邮件是否含有病毒

(5).amavis把检查完的邮件,通过10025端口重新把邮件交回给postfix

(6).postfix把邮件交给LDA(local delivery agent),LDA是负责本地邮件投放到用户的邮箱,postfix默认使用 procmail 投递邮件(我们也可以使用其它投递代理如,maildrop)到 用户的邮箱并以maildir的方式存放在硬盘上

(7).用户使用邮件客户端,通过pop3或imap协议进行连接并管理邮件,webmail 是通过imap的方式来读取或管理邮件

总结,从上面的工作流程我们可以看到用Cyrus-SASL,Courier-authlib,Maildrop太麻烦了。一大堆组件,邮件系统本来就很杂。我以能简单则简单的原则进行了精简而且效率更高,Dovecot目前已经实现了SASL,而且Dovecot的SASL能够自动CACHE查询结果,这个是比较好的。并且Dovecot还可以当LDA使用。而Postfix也支持Dovecot的SASL验证。Postfix可以直接使用Dovecot的后台认证,不需要分开配置。(如果使用Courier,我们必须安装配置额外的认证软件,比如Saslauthd,配置这个,会是一个恶梦,如果出现问题,很难排错),并且Dovecot,可以很方便实现磁盘配额的功能。Dovecot作为Courier的可替换组件,Dovecot在磁盘读写量上比Courier减少25%左右,内存占用也比Courier节省10%到70%不等。好了,说了这么多下面我们来看一下,我们的精简架构!

3.精简架构

230223182.png

经过与上面的对比我们明显看到简单了许多,嘿嘿!下面我们说一下具体的工作流程,

(1).当邮件发送到服务器的25端口,postfix接受连接,它会做一些基本检查

发送者是否在黑名单或者实时黑名单,如果在黑名单,马上拒绝

是否是授权用户,是授权用户可以进行转发

接收者是否是服务器的用户,Postfix通Dovecot提供的SASL进行认证,如果不是,马上拒绝

如果我们启用了灰名单,会进行判断是否会拒绝邮件或者接收

(2).postfix 把邮件通过10024端口交给amavis来处理,注意amavis,只会检查邮件而不会丢弃或者拒绝邮件

(3).amavis调用SpamAssassin检查邮件是否是spam,如果SpamAssassin认为邮件是垃圾邮件,会给邮件打上标记spam(同上)

(4).amavis调用ClamAV,看邮件是否含有病毒

(5).amavis把检查完的邮件,通过10025端口重新把邮件交回给postfix

(6).postfix把邮件交给LDA(local delivery agent),LDA是负责本地邮件投放到用户的邮箱,(我们这里使用dovecot提供的LDA功能,而不是postfix提供的LDA)邮件会进入用户的邮箱,Dovecot会执行用户设置的filter,也就是Dovecot通过调用Sieve,放到相关的文件夹

(7).Dovecot 把邮件以maildir的方式存放在硬盘上。

(8).用户使用邮件客户端,通过pop3或imap协议进行连接。Webmail(RoundCubeMail),是通过imap的方式来读取邮件。

总结,经过上面的简单说明你应该知道整个邮件系统的工作流程了,下面我们将完整的搭建这套企业级的邮件系统!^_^……

四、安装前的准备工作

1.关闭防火墙与SELinux

2.修改主机名

3.下载并安装yum源

(1).163的yum源

(2).rpmforge软件仓库

(3).备份原有的yum源

(4). 增加新的yum源

(5).清理yum缓存并更新系统

4.创建一个vmail用户,用作管理虚拟邮箱的文件夹

五、安装并配置LAMP环境

说明:最新的PostfixAdmin2.3.6+Roundcubemail0.92的PHP环境要求是最低是PHP5.2,我这里RPM安装的是5.3.3

1.安装LAMP环境

2.整合Apache与PHP

3.测试

测试效果如下,

230305642.png

看到这个图说明LAMP环境安装成功了,嘿嘿!顺便可以看一下imap这个很重要,嘿嘿!

230319426.png

六、安装并配置postfixadmin

1.查看所需软件

2.解压并修改文件名

3.配置并测试

4.为postfixadmin创建Mysql数据库与权限

测试一下能不能登录,

5.修改所有者与所有组

6.具体配置过程如下图

231157503.png

231217691.png

注:检查PHP环境,并初始化数据库

(2).创建设置密码并修改配置文件(我这里的密码是123456)

231233847.png

(3).创建管理员密码

231325467.png

先输入你刚才设置的密码,我这里是123456,然后输入管理员邮箱,我管理员密码!

231343487.png

出现错误,说没有dovecotpw,是因为我们还没安装dovecot,我们这里先来安装一下dovecot,后面再进行配置!

我们再来设置一下管理员的账户与密码,(我这里设置是postmaster@free.com密码:admin)

231403537.png

看这次设置成功,下面我们管理账户登录一下

231417917.png

7.postfxiadmin不能自动创建目录,所以我们得增加自动建立目录的功能

(1).建立创建虚拟邮箱脚本,脚本名称 /usr/local/bin/maildir-creation.sh,脚本内容如下:

(2).建立删除虚拟邮箱脚本,脚本名称 /usr/local/bin/maildir-deletion.sh ,脚本内容如下:

8.建立删除目录

9.赋予脚本可执行权限

10.配置sudo

11.修改postfixadmin的相关文件

好了至此postfixadmin配置全部完成,^_^……

七、安装并配置phpmyadmin

1.解压并重命令

2.修改配置文件

3.给phpmyadmin授权

4.测试

231913933.png

好了,登录成功,现在我们就可以用phpmyadmin来管理mysql数据库了,嘿嘿!

八、配置postfix邮件发送代理

注:Postfix用CentOS6.4系统自带的,因为CentOS6.4里面的postfix包已经支持mysql

1.查看postfix版本

2.配置postfix

3.创建Mysql脚本(注意用户名和密码、DBNAME,我这里全是postfix)

(1).创建/etc/postfix/mysql_virtual_domains_maps.cf文件

(2).创建/etc/postfix/mysql_virtual_alias_maps.cf文件

(3).创建/etc/postfix/mysql_virtual_mailbox_maps.cf文件

(4).创建/etc/postfix/mysql_virtual_mailbox_limit_maps.cf文件

4.SMTP 认证设定

(1).查看postfix支持的认证,默认支持dovecot

(2).修改/etc/postfix/main.cf配置文件

5.使用Dovecot做为投递

九、安装并配置dovecot邮件检索代理

说明:dovecot 1.X 与 dovecot 2.X配置文件的区别,1.X所以的配置都在同文件中而2.X是多个文件存放的(/etc/dovecot/dovecot.conf 和 /etc/dovecot/conf.d/),所有2.X配置文件比较分散,我把需要修改的配置文件的内容列出来

1.修改dovecot配置文件

(1).修改/etc/dovecot/dovecot.conf #主配置文件

(2).修改/etc/dovecot/conf.d/10-auth.conf

(3).修改/etc/dovecot/conf.d/10-mail.conf

(4).修改/etc/dovecot/conf.d/10-master.conf

(5).修改/etc/dovecot/conf.d/15-lda.conf

(6).修改/etc/dovecot/conf.d/20-imap.conf

(7).修改/etc/dovecot/conf.d/20-pop3.conf

(8).修改/etc/dovecot/conf.d/90-quota.conf

(9).增加/etc/dovecot/dovecot-sql.conf.ext

(10).增加/etc/dovecot/dovecot-dict-sql.conf.ext

2.重新启动服务

至此dovecot配置全部完成,^_^ ……十、测试SMTP与POP3服务

1.postfixadmin创建虚拟域

231913460.png

注:新建free.com测试域!

2.postfixadmin创建测试箱

231913660.png

3.测试连接25端口

注:连接成功!

4.测试连接110端口

5.查看自动创建的邮箱

注:已自动创建脚本,说明我们上面的脚本执行成功!

6.foxmail客户端测试收发邮件

231913664.png

231914585.png

详细内容如下,

231913243.png

测试成功能发能收!

7.问题说明

如下图,当我们执行postfixadmin的备份,会出现以下警告,并不能实现备份!

231914112.png

从上图中我们可以看出,data.timezone时区问题引起的,下面我们就来解决一下!

(1).修改/var/www/html/admin/backup.php文件

232118754.png

(2).效果如下

232118232.png

注:postfixadmin备份成功!到此一个完整的邮件系统已完成,但是为了方便的浏览和管理文件,我们下面安装一下WebMail!

十一、安装并配置WebMail(Roundcubemail)

1.解压并重命名

2.配置WebMail

233134169.png

从图上可以看出date.timezone报错,下面我们来修正一下!

3.修改php.ini

4.修改apache中PHPini的位置

5.修改所有Web文件的所属者与所属组

6.查看session保存位置

7.修改session文件的所属组

8.效果如下

233256475.png

9.单击NEXT我们继续进行设置(下面是必须配置的选项)

(1).配置webmail的显示名称

233330108.png

(2).配置Webmail数据库相关(我这里全部设置是,roundcubemail)

233330322.png

(3).配置IMAP

233330771.png

(4).  配置SMTP服务器

233330983.png

(5).配置完成效果如下,(大家可以看到我们配置好的选项都被列出来了,我们得下载两个配置文件main.inc.php和db.inc.php并上传到时服务器中)

233331724.png

(6).上传至服务器相关目录中

(7). 给WebMail授权

10.单击CONTINUE继续

233331544.png

11.单击初始化数据库按钮

233331711.png

12.初始化完成并用phpmyadmin查看

233621398.png

233545645.png

可以看到已建立好的数据库文件!^_^……

13.下面我们进行WebMail测试

233841144.png

14.登录并进行收发邮件

233545126.png233545985.png

可以看到发送成功,嘿嘿!下面我们用foxmail接收一下!

233545791.png

可以看到我们成功的收到了这封邮件测试成功!至些WebMail安装成功,下面我们就得说反垃圾邮件和邮件杀毒了,嘿嘿!

说明:由于整个mail邮件系统配置复杂,文字与图片较多我分了两篇进行说明!下一篇博文中CentOS6.4+LAMP+Postfix+Dovecot+Postfixadmin+Roundcubemail 打造企业级邮件服务器 (2)我们重点讲解,

十二、安装并配置病毒扫描与垃圾邮件过滤

十三、安装并配置managesieve插件

十四、常见问题分析

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS+Postfix+Dovecot+Postfixadmin+Roundcube邮件服务器的搭建步骤如下: 1. 安装 CentOS 操作系统,并更新至最新版。 2. 安装 Postfix 邮件服务器,并进行基本配置。 3. 安装 Dovecot IMAP/POP3 服务器,并进行基本配置。 4. 安装 Postfixadmin 邮箱管理系统,并进行基本配置。 5. 安装 Roundcube Webmail 邮件客户端,并进行基本配置。 具体步骤如下: 1. 安装 CentOS 操作系统,并更新至最新版。 在安装 CentOS 操作系统时,选择最小化安装,并根据实际情况进行分区和网络配置。安装完成后,使用以下命令更新系统: ``` yum update ``` 2. 安装 Postfix 邮件服务器,并进行基本配置。 使用以下命令安装 Postfix: ``` yum install postfix ``` 安装完成后,修改 /etc/postfix/main.cf 文件,使其支持 TLS 和 SASL 认证: ``` smtpd_tls_cert_file = /etc/pki/tls/certs/server.crt smtpd_tls_key_file = /etc/pki/tls/private/server.key smtpd_tls_security_level = may smtp_tls_security_level = may smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination ``` 然后重启 Postfix 服务: ``` systemctl restart postfix ``` 3. 安装 Dovecot IMAP/POP3 服务器,并进行基本配置。 使用以下命令安装 Dovecot: ``` yum install dovecot ``` 安装完成后,修改 /etc/dovecot/dovecot.conf 文件,使其支持 TLS 和 SASL 认证: ``` ssl_cert = </etc/pki/tls/certs/server.crt ssl_key = </etc/pki/tls/private/server.key auth_mechanisms = plain login ``` 然后重启 Dovecot 服务: ``` systemctl restart dovecot ``` 4. 安装 Postfixadmin 邮箱管理系统,并进行基本配置。 使用以下命令安装 Postfixadmin: ``` yum install postfixadmin ``` 安装完成后,修改 /etc/httpd/conf.d/postfixadmin.conf 文件,使其支持 SSL: ``` SSLEngine on SSLCertificateFile /etc/pki/tls/certs/server.crt SSLCertificateKeyFile /etc/pki/tls/private/server.key ``` 然后重启 Apache 服务: ``` systemctl restart httpd ``` 访问 https://your-domain.com/postfixadmin,使用管理员账号登录,创建邮箱账号和域名等相关配置。 5. 安装 Roundcube Webmail 邮件客户端,并进行基本配置。 使用以下命令安装 Roundcube: ``` yum install roundcubemail ``` 安装完成后,修改 /etc/httpd/conf.d/roundcubemail.conf 文件,使其支持 SSL: ``` SSLEngine on SSLCertificateFile /etc/pki/tls/certs/server.crt SSLCertificateKeyFile /etc/pki/tls/private/server.key ``` 然后重启 Apache 服务: ``` systemctl restart httpd ``` 访问 https://your-domain.com/roundcubemail,使用邮箱账号登录,即可使用 Roundcube 邮件客户端。 以上就是 CentOS+Postfix+Dovecot+Postfixadmin+Roundcube邮件服务器的搭建步骤,如有问题可以参考相关文档或者咨询技术人员。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值