Sendmail配置终极指南
mainname.com RELAY(允许为域mainname的所有计算机relay邮件)
localhost RELAY
192.168.1.0 RELAY (为192.168.1.0此网内所有机器relay邮件)
此文件惟一决定了哪些机器、哪个域可以使用邮件服务器转发邮件。完成后需要进行编译:#makemap hash access.db access。
其他配置的文件关系不是很大,可以暂时使用缺省安装的内容。至此,Sendmail应该可以正常工作了。
接下来是测试邮件服务器的邮件发送功能,注意:测试时,不要只对本地用户进行测试,如:你的域为abc.com,测试时,不要只在邮件服务器上测试user1@abc.com用户。因为,此时user1是本地用户,所以邮件服务器可以对其进行Relay。你应该从局域网上的另一台机器使用Outlook等邮件客户端对服务器进行测试。
固定IP用户(包括跨国性公司的用户)没有问题,可以在数据库中加入其固定IP。对于经常出差在外的人,不适用。
排错
错误1.在Outlook中正确配置POP及SMTP服务器的地址后,出现如下错误:
无法连接到服务器。账号: 192.168.0.1,服务器: 192.168.0.1,
协议: POP3,端口: 110,安全(SSL): 否,套接字错误: 10061,
错误号: 0x800CCC0E
产生错误的原因:主要原因是没有运行POP3D 和 IMAPD
解决方法:打开 /etc/inetd.conf 查找到
# pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d
把#号删掉。
打开 /etc/services 查找到
#pop3 110/tcp
#pop3 110/udp
将两行最前面的#号删掉。
这样,在restart inetd后,pop3 110端口就可以收信了!如果还是不行,请检查是否安装POP3服务软件包!
错误2:很多拨号用户会碰到以下问题:
由于服务器拒绝收件人之一,无法发送邮件。被拒绝的E-mail地址是“lcl@lettee.com.cn”。主题 ffd, 账号: mailns.lettee.com.cn (1), 服务器: mailns.lettee.com.cn, 协议: SMTP, 服务器响应: 551 we do not relay, 端口: 25, 安全(SSL): 否, 服务器错误: 551, 错误号: 0x800CCC79
此错误表示:Sendmail不能为你正在使用的客户机Relay邮件。
错误原因:Sendmail 8.9.3以后,缺省限制了Relay功能,主要是为了防止Spammer。使用此服务器的本地用户可以发信,而以外的用户不可以通过它发信了。解决方法:在access中加入客户机的IP,重新编译access即可。
很多朋友常犯的错误是“我已经在access中加入了邮件服务器的IP地址,也对数据库文件进行了makemap工作,可依然还是不行”。其实你搞错了,应该加入的是客户机的IP——试着将你的拨号PC的IP加入到access中,makemap后,你不必重新启动Sendmail,试试,发信成功了!
正如前面所说的,如果你是拨号上网,下次拨号,你的IP就会改变,当然你的邮件服务器就又不让你发信了。如果公司的员工常要出差,到外地后,经常是拨通当地ISP来收发邮件。收邮件肯定没有问题,但是,邮件目前SMTP没有进行口令验证,而邮件服务器又要进行转发控制,不对未记录在数据库中的主机转发。所以,邮件是发不出去了。在这种情况下,如果像本文前面所说的那样设置全部转发功能的话,倒是可以让拨号用户发信,但同时,带来的问题就是会有很多Spam,实在是难以做到两全其美。
解决以上问题有两种方案,一种为采用SMTP认证,即用户发送邮件以前,邮件服务器进行用户身份认证,通过则服务器为其发送邮件,否则拒绝发信;第二种方案是采用动态转发授权控制(Dynamic Relay authorization control),其工作原理为:拨号用户拨号上网后,首先收邮件,如果用户能正确收邮件,则DRAC自动在access.db中加入刚才收邮件用户的IP,并允许此IP可以发信。不过,30分钟内,此IP不发/收邮件的话,DRAC将从access.db中删除此IP。此种机制保证拨号用户在没有SMTP认证的情况下,也可以通过远程邮件服务器发送E-mail。
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)