文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Linux下sendmail的配置详解3之带认证配置篇

Linux下sendmail的配置详解3之带认证配置篇

时间:2007-01-31  来源:wanghui912

(三)配置带认证的sendmail邮件服务器   在网上看了许多的文章,还是觉得说的的不清楚,可以说也走了一些弯路.最后还是搞定了.   首先我们先要了解一下sendmail的工作原理:(建议先看一下) sendmail的工作方法是根据用户的电子邮件的地址,为用户的邮件选择一条到达适当的目的传输程序的路由.它接受来自一个MUA的的邮件,解释其邮件地址,将该地址重新改写成合适下一个传输程序的格式,然后引导邮件到达正确的传输程序.sendmail将最终用户与这些细节隔离.如果邮件地址正确,sendmail就认为其可以正确的发送并进行传输.同样对于一个进入的邮件,sendmai将先解释其地址,然后将邮件传送到用户的邮件程序或发送到另一个系统.   我们为什么要配置带认证的sendmail.道理很简单: 为了让合法或允许的用户采用通过我们配置的sendmail邮件服务器进行接发邮件. 而其他一些非法,匿名,或无正确密码的用户不能通过它来接发邮件.   我们首先来看一下我们在没有配置带认证的sendmail 是什么情况,我们在配置outlook的时候,不勾选"我的服务器需要身份验证",我们发现:一个非法用户,没有输入密码的情况下,依然可以正常收发邮件.这些我都做过了测试.这是我们不愿看到的. 可以说现在我的目的已经很明确了.   好,现在开始吧 在配置前,你要确定一下你的sasl(SASL的英文全称是Simple Authentication and Security Layer,简单验证和安全层。SMTP协议并没有提供用户验证功能,很容易匿名中转邮件。即使限制了可以转发的网段,也不安全。他的定义是: a method for adding authentication support to connection-based protocols,为基于连接的协议提供认证功能。)是否安装. [root@tpwb mail]# rpm -qa | grep sasl
cyrus-sasl-ntlm-2.1.19-5.EL4
cyrus-sasl-2.1.19-5.EL4
cyrus-sasl-gssapi-2.1.19-5.EL4
cyrus-sasl-plain-2.1.19-5.EL4
cyrus-sasl-md5-2.1.19-5.EL4
cyrus-sasl-devel-2.1.19-5.EL4
cyrus-sasl-sql-2.1.19-5.EL4
我的是默认安装的,版本可能不一样.在这里我不讲如何安装
  好,我们依然要编辑sendmail.mc这个文件 [root@tpwb mail]# vi sendmail.mc ....
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
TRUST_AUTH_MECH”的作用是使sendmail不管access文件中如何设置,都能 relay 那些通过EXTERNAL, LOGIN, PLAIN, CRAM-MD5或DIGEST-MD5等方式验证的邮件,” confAUTH_MECHANISMS" 的作用是确定系统的认证方式。Outlook Express支持的认证方式是LOGIN。 ....
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl (让sendmail监听所有网段)
....
DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl
....   我只做了四处更改,去掉前面的#,dnl(红色部分). 至于蓝色部分,有的文章说改成: DAEMON_OPTIONS(`Port=25, Name=MSA')dnl 但经我测试,把端口该成25后,不能进行正常的发送邮件,总是提示25端口错误的信息.所以我没有做更改. 只需去掉前名的#,dnl. 修改后,保存. [root@tpwb mail]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf     删掉我们前面对access的修改,把所有的修改都删除。和我的一样。 [root@tpwb mail]# vi /etc/mail/access # package.
#
# by default we allow relaying from localhost...

~
~
~
[root@tpwb mail]# makemap hash access.db < access [root@tpwb mail]# service sendmail restart
Shutting down sendmail: [  OK  ]
Shutting down sm-client: [  OK  ]
Starting sendmail: [  OK  ]
Starting sm-client: [  OK  ]
[root@tpwb mail]# service dovecot restart Stopping Dovecot Imap: [  OK  ]
Starting Dovecot Imap: [  OK 
配置到这里,你可以通过Outlook设置: 工具---账户---属性---服务器, 把我的服务器要求身份验证选项选上 但你会发现它会反复提示你输入密码(即使是正确的密码)   所以要在把SASL开启 [root@tpwb mail]# service saslauthd status
saslauthd is stopped
[root@tpwb mail]# service saslauthd start
Starting saslauthd: [  OK  ]
在来试一下,是不是已经好了,只有正确的用户和密码才可以进行邮件的接受. 我们这里的合法用户就是linux系统的用户和密码.     下一篇文章:Linux下sendmail的配置详解4之优化篇
相关阅读 更多 +
排行榜 更多 +
方舟生存进化2.0手机版下载安装

方舟生存进化2.0手机版下载安装

角色扮演 下载
图书馆挠痒大作战游戏下载

图书馆挠痒大作战游戏下载

休闲益智 下载
假面骑士响鬼模拟器豪华版下载

假面骑士响鬼模拟器豪华版下载

角色扮演 下载