2012年(8)
分类: LINUX
2012-07-23 10:33:39
Sendmail服务配置
背景知识
sendmail是最重要的邮件传输代理程序。,我们把电子邮件程序分解成用户代理,传输代理和投递代理。 用户代理用来接受用户的指令,将用户的信件传送至信件传输代理,如:outlook express、foxmail等。而投递代理则从信件传输代理取得信件传送至最终用户的邮箱。
当sendmail程序得到一封待发送的邮件的时候,它需要根据目标地址确定将信件投递给对应的服务器,这是通过DNS服务实现的。例如一封邮件的目标地址:ideal@linuxaid.com.cn,那么sendmail首先确定这个地址是用户名(ideal)+机器名(linuxaid.com.cn)的格式,然后,通过查询DNS来确定需要把信件投递给某个服务器。
以下是我对sendmail收发邮件服务的一些简单配置---记录。
一、安装
1、查看sendmail相关软件包的安装情况。
Sendmail-8.13.8-8.1.e15_7 是sendmail服务的主程序包,服务器端必须安装该软件包。
2、其他sendmail相关的软件包,为了方便起见,我用yum一键安装
查看安装结果
sendmail-8.13.8-8.1.el5_7 :sendmail服务的主程序包
sendmail-devel-8.13.8-8.1.el5_7 :sendmail服务器开发工具软件包
sendmail-doc-8.13.8-8.1.el5_7 :sendmail服务器的文档说明包
sendmail-cf-8.13.8-8.1.el5_7 :sendmail服务器宏文件包
以上软件包是由yum一键安装的,如果用rpm安装的话,可以不必全部安装,根据需要来。
3、sendmail服务器进行基本的配置以后,mail server就可以完成E-mail的发送,但是如果想要使用pop3和IMAP协议进行接受邮件的话,就要安装dovecot软件包,如下:
查看安装情况:
查看M4软件包是否安装(如果还没安装,同理可用yum命令安装即可)
注:m4-1.4.5-3.el5.1 是宏处理过滤软件包。只有安装了这个软件包,才能用M4工具来作预处理器,后面再配置sendmail过程中,也要利用m4工具将编辑后的sendmail.mc文件内容重定向到sendmail.cf文件中,这样可以避免直接编辑sendmail.cf文件(因为sendmail.mc文件的可读性远远大于sendmail.cf文件,并且在默认情况下,sendmail提供sendmail.mc文件模板,所以,我只需要通过直接修改或编辑sendmail.mc文件,然后再用m4工具将结果导入到sendmail.cf文件即可。)
启动sendmail服务器
启动dovecot服务
查看25、110、143端口是否已经启动了!都处于listen状态,说明已经启动了
二、测试环境:
环 境:VMware中wdos系统服务器主机一台,本地XP客户端一台(当然,也可以用其他系统或者虚拟机上的其他客户端)。要求服务器和客户端相互连通(ping通)。且服务器配置了DNS服务,能正常正反向解析。
案例要求:某公司局域网内网段是192.168.1.0/24,域名:hellowdos,DNS服务和sendmail服务IP地址是192.168.1.106。.为了工作效率和公司信息的安全性,要求公司内部成员使用sendmail收发邮件。
1、 配置dns服务器文件:正反向解析区域
2、 配置正反向解析区域文件:
Vi /var/named/chroot/var/named/hellowdos.com.zone
Vi /var/named/chroot/var/named/192.168.1.zone
重新启动named服务
测试能否正常解析
测试服务器和客户端是否连通。
修改/etc/mail/sendmail.mc文件。
将116行的侦听的IP地址127.0.0.1改为0.0.0.0来侦听所有IP地址(或者改为公司内部网段192.168.1.0也可以),但0.0.0.0的话可以扩大侦听范围。
将155行的域名改为我自己的域名。
现在就要用到M4工具将sendmail.mc文件重定向到sendmail.cf文件中。
添加主机名称:local-host-names文件用来定义收发邮件的主机别名,默认情况下在/etc/mail/目录下,为了使sendmail服务正常工作,必须在该文件中添加主机名或主机别名,否则会提示错误。
建立用户,密码123456.
重新启动一下服务:
三、验证和测试(工具:outlook express)
点击:开始-所有程序- outlook express
新建邮件(我是自己发送给自己,当然,也可以再创建一个用户,测试发送给另一用户
成功接收:
双击,打开邮件。
可能错误及解决:如果出现一下错误,可能是防火墙的原因,可以把防火墙关了试试。
以上是我在wdOS系统上进行的sendmail服务的基本配置学习记录,
有问题的可到讨论。