系统运维
上一次我们了解了邮件服务系列的基础知识,本次我们来了解一下各个代理需要的组件以及postfix的安装过程。
创新互联公司长期为上1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为萧山企业提供专业的网站建设、网站制作,萧山网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。开源MTA(邮件传输代理)三剑客:
sendmail:UUCP 单体结构,所有的功能使用一个进程实现,任何进程出现风险,整个服务器受到波及,并且使用SUID,所以整个过程比较不安全,并且配置文件语法使用M4编写,难以掌握
qmail:性能较好但是后期发展失败,只用作少数企业使用
postfix:模块化设计,每一个功能使用一个模块实现,不适用M4编写;比较安全,根sendmail的兼容性好,投递效率相当于sendmail的四倍以上,因此众多的系统都使用postfix
exim:来自于英国剑桥大学,语法简单,使用简易
exhcange:只能在windows安装,还可以作为异步消息协作平台。
MDA:邮件投递代理
procmail maildrop
MRA:(pop3,imap4)
cyrus-imap dovecot(鸽子笼)
MUA(邮件用户代理)
Outlook Express
Foxmail
两个用于linux的软件ThunderBird , Evolution
纯文本界面:mutt!!!!我们主要使用的
webmail邮箱服务程序
Squirrelmail:使用PHP研发,小松鼠邮件
SASL:一般使用v2版本
cyrus-sasl:使用的核心组件很多,而不是只有其本身完成
courier-authlib:用于到mysql的认证,功能比cyrus-sasl功能更加强大
接下来实现部署邮件系统
Postfix + SASL(基于Mysql的认证要装上courier-authlib)+MYSQL
DoveCot + MySQL
Exrmail + Extman + httpd
下面演示在红帽6上的安装过程
rpm包提供的postfix包不能够男足虚拟用户认证的要求,因此只能通过自己的源码编译进行安装
先停止sendmail的服务,接着要关闭sendmail,此处可以直接卸载,如下所示
在卸载过程中存在依赖,可以和直接忽略进行卸载
在安装postfix 之前要先进性MySQL的安装,否则无法进行虚拟用户的认证,重要的是要提供头文件以及库文件的安装
接下来进行postfix的安装
1.首先找到postfix的站点:www.postfix.com
这里选择2.10.0版本,下载tar.gz文件,放入ftp源中,并且解压到本地,然后进入到目录中查看,在其中没有config文件,因此我们不能直接在config文件中进行配置安装
2.根据下面的安装文档进行安装
首先要创建组和用户如下所示
接着确保cyrus-sasl-devel包已经安装
3.接下来make,make install 完成postfix的安装
安装完成之后,指定其安装位置,临时目录,配置文件,命令目录,服务进程,可写文件的存放位置,html目录,邮件队列程序,手册的安装位置,生成新别名,邮件队列位置,readme文档,send-mail路径,setgid-mailgroup等,安装结束
启动服务:
4.接下来介绍postfix的配置文件:
master:/etc/postfix/master.cf
mail :/et/postfix/main.cf
参数-值:参数必须卸载行的绝对行首,以空白开头的行被认为是上一行的延续
postconf:配置Postfix
-d:显示默认的配置
-n:修改的配置
-m:显示所有支持的查找表的类型
-A:显示支持的SASL客户端插件类型
-e:直接编辑文件,更改某参数配置信息,并保存至main.cf文件中
smtp状态码:
1XX:纯说明信息,
2XX:正确信息
3XX:上一步操作尚未完成,需要继续补充
4XX:暂时性错误
5XX:永久性错误
smtp协议命令(原语)
helo(smtp协议)
ehlo(esmtp协议)
mail from:指定发件人
rcpt to:指定收件人
一个发邮件与收邮件的过程如下所示,postfix安装成功并且可以实现简单的使用
1邮件的发送过程
2.查看日志
可以看到status=sent,表明邮件已经发送成功
3.在收信端查看邮件
自此完成了postfix 的安装以及简单配置,实现了内网的邮件发送,但是还无法实现向外网主机发送邮件,接下来会完成postfix与sasl以及MySQL的整体系统的部署。
欲知后事如何,请看下回分解