快速业务通道

你的Postfix邮件服务器安全么?

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-07
来的邮件都会被认为是信任的,Postfix会自动对这些邮件进行转发,如下所示:


relay_domains = test.net

那么,要使它能在实际网络中更好地转发邮件,还进行相应的DNS设置.那么,需要在该网络的DNS服务器上定义了一个主区域test.net,并在该区域配置文件中定义了以下记录:


//定义邮件服务器的IP地址

patterson.test.net. IN  A  172.168.96.254

//定义邮件服务器的别名

mail.test.net. IN CNAME  patterson.test.net.

//定义优先级别

test.net.  IN MX  10 mail.test.net.

上述记录只对邮件服务器进行了定义,还有诸如SOA、NS等的定义,在这里就不再赘述.

配置Postfix使用SMTP安全认证

Postfix默认不会对外开放转发功能,而仅对本机(localhost)开放转发功能.但是,在实际应用中,在Postfix主配置文件中通过设置mynetworks、relay_domains参数来开放一些所信任的网段或网域,否则该邮件服务器几乎没有什么用处.在开放了这些所信任的网段或网域后,还可以通过设置SMTP认证,对要求转发邮件的客户端进行用户身份(用户账户名与密码)验证.只有通过了验证,才能接收该用户寄来的邮件并帮助转发.同样,Postfix中目前比较常用的SMTP认证机制是通过Cyrus SASL包来实现的.

默认情况下,Postfix并没有启用SMTP认证机制.要让Postfix启用SMTP认证,就对Postfix的主配置文件/etc/postfix/main.cf进行修改.用户需要在main.cf文件中添加如下有关SMTP认证的设置部分:


smtpd_sasl_auth_enable = yes

smtpd_sasl_local_domain = ''''

smtpd_recipient_restrictions = permit_mynetworks

permit_sasl_authenticated, reject_unauth_destination

broken_sasl_auth_clients=yes

smtpd_client_restrictions = permit_sasl_authenticated

smtpd_sasl_security_options = noanonymous

其中,每个选项的具体含义如下:

(1)smtpd_sasl_auth_enable:指定是否要启用SASL作为SMTP认证方式.默认不启用,这里将它启用,要将该参数值设置为yes.

(2)smtpd_sasl_local_domain:如果采用Cyrus-SASL版进行认证,那么这里不做设置.

(3)smtpd_recipient_restrictions:表示通过收件人地址对客户端发来的邮件进行过滤.通常有以下几种限制规则:

  1. permit_mynetworks:表示只要是收件人地址位于mynetworks参数中指定的网段就可以被转发邮件.
  2. permit_sasl_authenticated:表示允许转发通过SASL认证的邮件.
  3. reject_unauth_destination:表示拒绝转发含未信任的目标地址的邮件.

(4)broken_sasl_auth_clients:表示是否兼容非标准的SMTP认证.有一些Microsoft的SMTP客户端采用非标准的SMTP认证协议,只需将该参数设置为yes就可解决这类不兼容问题.

(5)smtpd_client_restrictions:表示限制可以向Postfix发起SMTP连接的客户端.如果要禁止未经过认证的客户端向Postfix发起SMTP连接,则可将该参数值设置为permit_sasl_authenticated.

(6)smtpd_sasl_security_options:用来限制某些登录的方式.如果将该参数值设置为noanonymous,则表示禁止采用匿名登录方式.

在完成上述设置后,使用


/etc/init.d/postfix reload

重新载入配置文件,或使用


/etc/init.d/postfix restart

重新启动Postfix服务,以使该配置生效.这两个命令的具体使用需要根据不同的Linux版本来选用.

此外,当Postfix要使用SMTP认证时,会读取/usr/lib/sasl2/smtpd.conf文件中的内容,以确定所采用的认证方式,因此如果要使用saslauthd这个守护进程来进行密码认证,就确保/usr/lib/sasl2/smtpd.conf文件中的内容为:


pwcheck_method: saslauthd

本文出自 “卓越始于足下” 博客,谢绝转载!

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号