写此篇文章的初衷是看大家都说sendmail复杂,我这是为了更简明扼要的成功配置出sendmail服务器,希望能给大家的学习带来帮助(RHEL5中设置成本地源)。
//实验环境:RHLE5
第一步:安装Sendmail服务器
(1)用rpm命令安装Sendmail.在RHLE5中用system-config-packages安装cyrus-sasl,sendmai及sendmail-cf软件包,具体包为cyrus-sasl-2.1.22-4.i386,sendmail-8.13.8-2.e15.i386和sendmai-cf-8.13.8-2.e15.i386;RHEL4中安装sendmail,sendmail-cf及sendmail-doc软件包,推荐用system-config-packages.
(2)域名设置:
1,在DNS服务器中要添加MX记录
@ IN MX 5 mail.test.com
mail.test.com IN A 192.168.1.102
2,设置local-host-names文件 vi /etc/mail/local-host-names //添加邮件服务器提供服务的域名
test.com
3,开启Sendmail服务器的网络接口 vi /etc/mail/sendmail.mc
//查找设置行
DAEMON_OPTIONS('Port=smtp,Addr=127.0.0.1,Name=MTA')dn1 将127.0.0.1改为0.0.0.0
//即使服务器能够为主机的所有网络接口(0.0.0.0)提供服务
(3)配置Senmail的SMTP认证配置
vi /etc/mail/sendmail.mc
//查找设置行
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
dnl define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
将这二行的dnl去掉 //在sendmail文件中,dnl表示该行为注释行,是无效的,因此通过去除行首的dnl字符串可以开启相应的设置行.
*RHEL4*5中,sendmail.conf配置文件设置使用saslauthd服务程序提供了用户的认证程度,所以必须启动sasaauthd服务
(4)访问控制的配置access,在RHEL4&5中,默认了Sendmail服务器所在的主机的用户可以任意发送邮件,而不需要任何身份验证
即注意/etc/mail/access文件中有一行: 127.0.0.1 RELAY //RELAY是中继,驿马的意思,其实也蛮形象的,我建议用驿马理解这句话的意思.
makemap hash access.db
#p#
(5)使用m4命令生成sendmail.cf文件,其实sendmail.mc即是一模板文件
m4 sendmail.mc >sendmail.cf
启动Sendmail,saslauthd服务,验证Sendmail服务
telnet localhost 25 //输入ehlo localhost 此时应该有LOGIN PLAIN的字样,即表示SMTP认证设置成功.
chkconfig --level 35 saslauthd on
service saslauthd start
第二步:配置Dovecot服务器
用命令system-config-packages安装dovecot软件包,vi /etc/dovecot.conf
将#protocols =imap imaps pop3 pop3s 前面的#去掉,RHEL4中加上pop3,pop3s
启动dovecot服务 service dovecot start
第三步:启动DNS,saslauthd,sendmail.dovecot服务进行测试
此时可以一个sendmail邮件系统就搭建成功了,如果有同学还想深入点,可尝试与EXCHANGE2003邮件系统互发邮件
【编辑推荐】