Sendmail服务软件包
sendmail-8.13.8-2.el5.i386.rpm:sendmail 服务的主程序包,必须安装该软件包。
sendmail-cf-8.13.8-2.el5.i386.rpm:sendmail宏文件包
sendmail-devel-8.13.8-2.el5.i386.rpm:sendmail 服务器开发工具软件包
sendmail-doc-8.13.8-2.el5.i386.rpm:sendmail服务器的说明文档
m4-1.4.5-3.el5.1.i386.rpm:宏处理过虑软件包
dovecot-1.0-1.2.rc15.el5.i386.rpm:接收邮件软件包,安装时需要注意安装顺序

Sendmail相关配置文档
sendmail.cf:sendmail核心配置文件,位于/etc/mail/sendmail/sendmail.cf
sendmail.mc:sendmail提供 sendmail文件模板,通过编辑此文件后再使用 m4 工具将结
果导入sendmail.cf 完成配置sendmail 核心配置文件,降低配置复杂度,位于/etc/mail/se
ndmail.mc
local-host-name:定义收发邮件服务器的域名和主机别名,位于/etc/mail/local-host-na
me
access.db:用来设置 sendmail服务器为哪些主机进行转发邮件,位于/etc/mail/access.db
aliases.db:用来定义邮箱别名,位于/etc/mail/aliases.db
virtusertable.db:用来设置虚拟账户,位于/etc/mail/virtusertable.db

先配置好DNS 服务器,要保证在客户端可以正常解析

配置sendmail 服务器
搭建一个常规的sendmail 服务器,实现本域用户收发邮件
修改DNS 域名解析的配置文件
找到52 和53 行去掉开头的dnl(注释的意思),让其生效
找到116 这行,把原来的127.0.0.1 改为0.0.0.0,默这样可以扩大侦听范围(通常都设置成0.
0.0.0),否则邮件服务器无法正常发送邮件。
找到155 这行,修改为自己服务器所在的域名
然后修改local-host-names 这个文件,添加自己的域名和主机名
然后使用m4 命令生成sendmail.cf 文件,其实sendmail.mc 即是一个模板文件
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf 执行后没有任何消息返回
然后重启服务并设置服务器开机自行启动

安装 Dovecot软件包(POP3和 IMAP)
到这里sendmail 服务器基本配置完成后,Mail Server 就可以完成邮件发送工作,如果需要使
用POP3 和IMAP 协议接收邮件还需要安装dovecot 软件包。在rhel5 里dovecot 整合了IM
AP。
安装 dovecot 软件包要解决其依赖性,安装 perl-DBI-1.52-1.fc6.i386.rpm和mysql-
5.0.22-2.1.0.1.i386.rpm
配置 dovecot,打开/etc/dovecot.conf ,找到第 20行,去掉前面的注释即可
这样就开启了 IMAP和 pop3了。
启动dovecot 服务并让其随开机启动
检查sasl 包是否都安装到系统上了,默认已经安装到系统上了(sasl 是用来客户端验证用户
的,所以必须安装的)
已经都安装到系统上了,启动saslauthd 服务并让其随系统开机启动
端口测试
使用netstat 命令测试是否开启SMTP 的25 端口、POP3 的110 端口及IMAP 的143 端口

验证 Sendmail的 SMTP认证功能
使用telnet 192.168.1.2 25,然后ehlo localhost
250-AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN 有这行显示说明sendmail 开启了用
户认证(smtp 认证)

不同域之间邮件发送
所有DNS,和mail.netinn.net服务器作为第二个目标的基础,我们只要搭建好第二台服务器即可

sendmail 群发功能
要实现群发功能,只要修改/etc/aliases 这个文件就可以了,修改之后记得
要用newaliases 这个命令生成新的数据文件
vim /etc/aliases

虚拟用户的配置
所有的虚拟用户是必须对应着系统实有的用户,在群发里面是一个“虚
拟群名称对应很多系统用户”,就是“虚拟用户对应
系统实有用户” 这个是实现别名的,也是可以实现所需要的虚拟用户的

openwebmail 的安装和使用
yum install openwebmail-*
添加生成dbm.conf,vim /var/www/cgi-bin/openwebmail/etc/dbm.conf
初始化openwebmail 系统
修改/var/www/cgi-bin/openwebmail/etc/openwebmail.conf修改成中文
启动httpd即可

常见问题
1、sendmail 能发送但是不能接收邮件,大多是因为local-host-names 里面未添加域名和主机
名,添加即可,然后检查DNS 的MX 记录是否设置正常。
2、启动dovecot 失败,“dovecot 已死,subsys 被锁”这种问题的日志如下:
“Apr 2 01:20:15 RHEL5 dovecot: Dovecot v1.0.rc15 starting up
Apr 2 01:20:16 RHEL5 dovecot: Auth process died too early - shutting down
Apr 2 01:20:16 RHEL5 dovecot: auth(default): dovecot-auth: error while loading shared li
braries: libmysqlclient.so.15: cannot open shared object file: No such file or directory
Apr 2 01:20:16 RHEL5 dovecot: child 7334 (auth) returned error 127
Apr 2 01:20:16 RHEL5 dovecot: Temporary failure in creating login processes, slowing d
own for now”
以上日志提示找不到libmysqlclient_r.so.15 这个,默认libmysqlclient_r.so.15 在/usr/lib/my
sql 下,检查一下看看是否有这个文件存在,如没有请重新安装一下mysql,因为在安
装dovecot 的时候会依赖mysql 组件。
3、sendmail 启动速度慢,这是因为sendmail 在启动的时候解析DNS 失败,设
置sendmail 服务器的正向和反向解析,启动DNS 服务之后,你的sendmail 立马就启动了。
4、不能向外网或者是其他域发送和接收邮件(前提:本机是发布在公网上,
又合法的域名和MX 解析),那就查看一下你sendmail 的配置文件
sendmail.mc 的配置是否正确,最后假如你用OE 作为客户端的话默认账户是没有用户验证
的,所以会被本域服务器拦截,只要你选上“smtp服务器需要身份验证“就好了。
5、如果你的是公网上的邮件服务器,关闭本机的relay,否则肯能很快你的
邮件服务器就被放入黑名单了

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

Captcha Code