为Qmail增加smtp用户认证功能

来源:asp之家 时间:2010-03-13 19:16:00 

本文介绍如何让 qmail 增加 smtpd-auth 功能.   

软件需求

系统版本:RedHat6.2

必需软件:1、qmail-1.03 (www.qmail.org) qmail的主要程序包

2、checkpassword (cr.yp.to/checkpwd.html) 让qmail使用系统用户认证的密码认证包或vpopmail (www.inter7.com/vpopmail)  让qmail支持mysql和虚拟主机用户认证的密码验证包

3、qmail-smtpd.c (www.nimh.org/hacks/qmail-smtpd.c) qmail支持smtp认证的补丁 或者到http://www.elysium.pl/members/brush/下载 qmail-smptd.patch 

原理介绍

QMail系统安装完成后,其smtp是允许任何人匿名发送邮件的。但是,这一点经常会被恶意的垃圾邮件发送者利用。因此,为了避免这种问题发生,我们为qmail安装并配置smtp发信密码认证功能。

首先我们先来认识一下什么是smtp下的relay规则。

relay规则也可以理解成转发规则。当用户使用telnet到25端口(smtp端口),或者使用类似outlook这样的MUA(用户投递代理)发送邮件时,服务器都会在后端判断是否允许转发(发送)这份邮件,判断的依据是接收方的域名是否在允许之内。

在Qmail中,有一个名为rcpthosts(该文件名源于RCPT TO命令)的配置文件,其决定了是否接受一个邮件。只有当一个RCPT TO命令中的接收者地址的域名存在于rcpthosts文件中时,才接受该邮件,否则就拒绝该邮件。若该文件不存在,则所有的邮件将被接受。当一个邮件服务器不管邮件接收者和邮件接收者是谁,而是对所有邮件进行转发(relay),则该邮件服务器就被称为开放转发(open relay)的。当qmail服务器没有rcpthosts时,其是开放转发的。

设置自己服务器为非open relay的最简单的办法就是将你的邮件服务器的所有域名(若DNS的MX记录指向该机器,也应该包括该域名。)但是要想实现smtp用户漫游功能,也就是任何网络的合法用户都能发信,仅使用rcphosts就很难操作了,因为不可能每一个用户连接进来就修改一次rcphosts,使之包括发信人域名和ip,再重起qmail。显然,这种方法很不现实。别担心。

qmail-smtpd支持一种有选择性的忽略rcpthosts文件的方法:若qmail-smtpd的环境变量RELAYCLIENT被设置,则rcpthost文件将被忽略,relay将被允许。但是如何识别一个邮件发送者是否是自己的客户呢?qmail并没有采用密码认证的方法,而是判断发送邮件者的源IP地址,若该IP地址属于本地网络,则认为该发送者为自己的客户。 如果要实现SMTP认证后的relay ,不需要对任何IP进行预先设定,所以默认规则设置成只对本服务器relay。

这里使用ucspi-tcp软件包。即该软件包的tcpserver程序。该程序的功能类似于inetd-监听进入的连接请求,为要启动的服务设置各种环境变量,然后启动指定的服务。

标签:qmail,smtp,用户认证
0
投稿

猜你喜欢

  • 新建网站如何提高流量的五个有效步骤

    2008-12-25 10:56:00
  • 微软IE8测试版新特性详解

    2008-03-11 07:20:00
  • 教你robots文件使用方法屏蔽搜索抓取方法

    2009-02-06 14:18:00
  • WINDOWS服务器自动定时重启 shutdown

    2008-07-18 13:10:00
  • 网络营销无难事:逃走的浏览者

    2009-02-25 18:46:00
  • Google AdSense今日开放西联汇款

    2007-09-28 11:50:00
  • FTP服务器如何实现安全性(下)

    2007-08-14 15:37:00
  • 接着Zac谈 如何在搜索引擎中建立良好品牌

    2009-03-04 12:45:00
  • 不用任何插件实现 WordPress 的彩色标签云

    2010-03-21 14:14:00
  • 让外贸网站更加的人性化

    2008-01-11 13:49:00
  • Google教你正确设置robots.txt文件

    2007-12-18 17:06:00
  • DEDE5.3调用DZ论坛最新,最热,精华贴子的方法

    2009-02-15 10:06:00
  • 从PR值到TR值 由外到内的谷歌权重

    2011-09-07 10:41:10
  • 简单解析Linux系统防火墙框架

    2009-07-12 09:26:00
  • 世界四大网页之最

    2008-01-13 18:39:00
  • 你希望怎样工作?

    2009-04-09 13:20:00
  • 搜索引擎怎样鉴别垃圾留言

    2008-04-04 16:54:00
  • Win2K服务器端安全设置教程(4)

    2008-01-09 10:45:00
  • 学习配置 Windows Server 2008 防火墙

    2008-08-19 17:08:00
  • 如何恢复UCenter中误删的应用

    2009-07-29 17:39:00
  • asp之家 网站运营 m.aspxhome.com