linu_下搭建邮件服务器.docx_第1页
linu_下搭建邮件服务器.docx_第2页
linu_下搭建邮件服务器.docx_第3页
linu_下搭建邮件服务器.docx_第4页
linu_下搭建邮件服务器.docx_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

linux下搭建邮件服务器默认分类 2010-11-16 18:51:54 阅读42 评论0 字号:大中小订阅 一、Sendmail概述sendmail是最重要的邮件传输代理程序。理解电子邮件的工作模式是非常重要的。一般情况下,我们把电子邮件程序分解成用户代理,传输代理和投递代理。用户代理用来接受用户的指令,将用户的信件传送至信件传输代理,如:outlookexpress、foxmail等。而投递代理则从信件传输代理取得信件传送至最终用户的邮箱,如:procmail。当用户试图发送一封电子邮件的时候,他并不能直接将信件发送到对方的机器上,用户代理必须试图去寻找一个信件传输代理,把邮件提交给它。信件传输代理得到了邮件后,首先将它保存在自身的缓冲队列中,然后,根据邮件的目标地址,信件传输代理程序将找到应该对这个目标地址负责的邮件传输代理服务器,并且通过网络将邮件传送给它。对方的服务器接收到邮件之后,将其缓冲存储在本地,直到电子邮件的接收者察看自己的电子信箱。显然,邮件传输是从服务器到服务器的,而且每个用户必须拥有服务器上存储信息的空间(称为信箱)才能接受邮件(发送邮件不受这个限制)。可以看到,一个邮件传输代理的主要工作是监视用户代理的请求,根据电子邮件的目标地址找出对应的邮件服务器,将信件在服务器之间传输并且将接收到的邮件缓冲或者提交给最终投递程序。有许多的程序可以作为信件传输代理,但是sendmail是其中最重要的一个,事实证明它可以支持数千甚至更多的用户,而且占用的系统资源相当少。不过,sendmail的配置十分复杂,因此,也有人使用另外的一些工具,如qmail、postfix等等。当sendmail程序得到一封待发送的邮件的时候,它需要根据目标地址确定将信件投递给对应的服务器,这是通过DNS服务实现的。例如一封邮件的目标地址是,那么sendmail首先确定这个地址是用户名(tom)+机器名()的格式,然后,通过查询DNS来确定需要把信件投递给某个服务器。DNS数据中,与电子邮件相关的是MX记录,例如在这个域的DNS数据文件中有如下设置:INMX10mailINMX20mail1mailINA20mail1INA21显然,在DNS中说明有两个信件交换(MX)服务器,于是,sendmail试图将邮件发送给两者之一。一般来说,排在前面的的MX服务器的优先级别比较高,因此服务器将试图连接的25端口,试图将信件报文转发给它。如果成功,你的smtp服务器的任务就完成了,在这以后的任务,将由来完成。在一般的情况下,mail换器会自动把信件内容转交给目标主机,不过,也存在这样的情况,目标主机(比如)可能并不存在,或者不执行smtp服务,而是由其mx交换器来执行信件的管理,这时候,最终的信件将保存在mx机器上,直到用户来察看它。如果DNS查询无法找出对某个地址的MX记录(通常因为对方没有信件交换主机),那么sendmail将是试图直接与来自邮件地址的主机对话并且发送邮件。二、Sendmail的配置文件sendmail安装完毕后,具有多个配置文件,所有文件都旋转在/etc/mail目录下.其中主配置文件为/etc/mail/sendmail.cf,与它存放在同一目录下的许多文件都具有重要功能,如下所示:/etc/mail/accesssendmail访问数据库文件/etc/aliases邮箱别名/etc/mail/local-host-namessendmail接收邮件主机列表/etc/mail/submit.cf/etc/mail/submit.mcsendmail辅助配置文件/etc/mail/mailertable邮件分发列表/etc/mail/virtusertable虚拟用户和域列表三、搭建sendmail服务器1)Sendmail服务器的网络配置:服务器IP地址是10;DNS服务已经启动,并可以解析域名;具体操作如下图所示:2)安装sendmail所需软件:sendmail的主程序包sendmail-8.13.8默认已经安装sendmail-cf程序是为了以后使用m4命令生成sendmail的主配置文件dovecot程序主要负责接收邮件,但该程序包与mysql-5、perl-DBI程序有依赖关系,所以安装该程序包时也必须安装mysql-t和perl-DBI。具体操作如下图所示:Sendmail所需软件安装完毕后,需要设置sendmail服务与dovecot服务开机时自动启动,具体操作如下图所示:3)修改sendmail相关配置文件:为了使本区域内部实现收发邮件,需要编辑/etc/mail/local-host-names文件,并在该文件中添加本区域的域名(本例中为)。具体操作如下图所示:/etc/mail/local-host-names文件的内容为:由于sendmail主配置文件sendmail.cf文件的内容比较复杂,修改时的难度较大,所以我们可以先修改/etc/mail/sendmail.mc文件,然后再将该文件的内容导入到sendmail.cf文件。方法如下:vim/etc/mail/sendmail.mc,将文件中的Addr=修改为Addr=邮件服务器IP地址即可;然后再使用m4sendmail.mcsendmail.cf命令将sendmail.mc的内容导入到sendmail.cf中。具体操作如下图所示:/etc/mail/sendmail.mc源文件内容如下图所示:/etc/mail/sendmail.mc修改后的文件内容如下图所示:使用m4sendmail.mcsendmail.cf命令如下图所示:配置文件修改完毕,此时可以启动sendmail服务与dovecot服务,操作如下图所示:4)收发邮件测试:通过以上操作,已经可以实现在区域内部收发邮件,我们可以新建立几个邮件用户并进行测试。新建立邮件用户操作如下图所示:使用当前用户(root)给tom用户发邮件,邮件内容为hellotom,邮件标题为firstmail。并使用tom的身份登录邮箱,查看邮件是否存在。发邮件使用以下命令:echo邮件内容|mail-s邮件标题收件人收邮件使用以下命令:mutt-fpop:/用户名邮件服务器地址具体操作如下图所示:打开邮箱后可以看到一封新邮件,如下图所示(邮件是发给tom用户的,标题为firstmail):上图中输入回车后可以查看邮件内容,如下图所示:5)使用access.db文件设置邮件中继功能:由于上述操作只能实现区域内部收发邮件,不能实现内部用户与外部邮件系统的通迅(例:上述操作不能实现的用户向internet上的邮件系统发邮件)。所以我们需要修改/etc/mail/access文件,以实现本区域的邮件用户与外部邮件系统通迅。方法如下:vim/etc/mail/access文件,并在该文件中添加允许中继的网段(即添加本邮件服务器允许将哪些网段客户端的邮件中继转发到外部区域)。本例中/etc/mail/access文件的内容如下图所示:修改完/etc/mail/access文件后,还需要使用makemap命令将access文件的内容导入到access.db文件中,并且重新启动sendmail服务即可。方法:makemaphashaccess.dbsendmail.cf命令将sendmail.mc文件导入sendmail.cf配置文件中。并且重新启动sendmail服务即可(serversendmailrestart)。通过以上操作sendmail服务器已经支持sasl认证功能。但还需要在客户端软件中设置支持smtp身份验证功能。例:邮件客户端foxmail的设置:在账户属性-“邮件服务器”选项中选择“SMTP服务器需要身份验证”,确定即可。操作如下图所示:四、关于iptables防火墙设置:邮件发送协议

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论