强制本地用户给本地用户发信时使用smtp认证问题[问题已解决]
发表于:2007-06-08来源:作者:点击数:
标签:
原标题:用自己的MTA给本地账号发信的smtp认证问题[问题描述已修改] 解决方法请看第4页 感谢:思一克、paulwang、rhinofly、dennis2、xiaohua、tonygong、hzqbbc 等的不吝指导!你们的耐心回贴解决了我很多问题,也教会了我很多¥#%%!! 原问题: 看了很
原标题:用自己的MTA给本地账号发信的smtp认证问题[问题描述已修改]
解决方法请看第4页>>
感谢:思一克、paulwang、rhinofly、dennis2、xiaohua、tonygong、hzqbbc 等的不吝指导!你们的耐心回贴解决了我很多问题,也教会了我很多¥#%%!!
原问题:
看了很多这里的smtp认证问题,但是还是有些疑惑,请大家指教.
这里我的域名 ==> mydomain.com
我的用户名 ==> jackieyuan
我在以下的设置环境下,通过我的MTA(qmail 1.03 patched) 向其他 MTA 转信的过程中 (例如发信到 @hotmail.com ) 都可以顺利通过 SMTP Authentication 后转发。 即
引用:
Outlook 的
[email protected] 账户 ---> smtp.mydomain.com (要smtp 认证) --->
[email protected] 或者
[email protected]
但是对于通过自己的MTA自己给自己本地用户发送的邮件, MTA就不要求你进行smtp认证了
引用:
Outlook 的
[email protected] 账户 ---> smtp.mydomain.com (不要smtp 认证) --->
[email protected]
当然此时对其他MTA 的发送(比如
[email protected]) 是失败的。
请问如何设置:
1. 如何在用自己的MTA向本地用户发送邮件的时候,也要求smtp认证? 或者说为什么在使用新浪自己的MTA的时候(是指smtp 服务器 smtp.sina.com.cn)向新浪的其他用户发信时,没有在“我的服务器需要验证”处打勾时,服务器拒绝传送。[已修改此问题描述]
2.[为了使问题单一化,删除此问题]如何设置mail server的正确DNS和MX记录使得类似于sina.com的服务器可以顺利通过我的 DNS auth.
谢谢!
我已经
测试
引用:
1. 如果保持 rcpthosts清空,任何非dalouis.com的邮件服务器不能向dalouis.com发送邮件.
2. 如果删除 rcpthosts , /var/log/qmail/smtpd/current 就会不停报错. 代码:
tail -f current
@4000000040c13fe5037bb74c No /var/qmail/control/rcpthosts!
@4000000040c13fe5037d0354 Refusing to start SMTP listener because it'll create an open relay
@4000000040c13fe604dfcb8c No /var/qmail/control/rcpthosts!
@4000000040c13fe604e12b1c Refusing to start SMTP listener because it'll create an open relay
@4000000040c13fe706a36104 No /var/qmail/control/rcpthosts!
@4000000040c13fe706a49984 Refusing to start SMTP listener because it'll create an open relay
我主机的一个email address:
[email protected]
我的另外一个非主机的 email address:
[email protected]
安装环境.
引用:
RH9.0+ qmail + vpopmail + qmail-smtpd-auth-0.4.3 + qmailscaner + Spamassassin + clamav-0.70
客户端引用:
Outlook Express
账号里面 username:jackieyuan
我的服务器需要认证 已打勾
/etc/tcp.smtp 文件:引用:
# Qmail-Scanner at all for mail from 127.0.0.1
127.:allow,RELAYCLIENT="",RBLSMTPD="",QMAILQUEUE="/var/qmail/bin/qmail-queue"
# Use Qmail-Scanner with SpamAssassin on any mail from the rest of the world
:allow,QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"
rcpthosts 文件引用:
mydomain.com
qmail-smtpd 的run 文件:引用:
#!/bin/sh
export PATH QMAILQUEUE TH=$PATH:/usr/local/bin:/var/qmail/bin
QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"
export PATH QMAILQUEUE
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`
LOCAL=`head -1 /var/qmail/control/me`
if [ -z "$QMAILDUID" -o -z "$NOFILESGID" -o -z "$MAXSMTPD" -o -z "$LOCAL" ]; then
echo QMAILDUID, NOFILESGID, MAXSMTPD, or LOCAL is unset in
echo /var/qmail/supervise/qmail-smtpd/run
exit 1
fi
if [ ! -f /var/qmail/control/rcpthosts ]; then
echo "No /var/qmail/control/rcpthosts!"
echo "Refusing to start SMTP listener because it'll create an open relay"
exit 1
fi
##### add the rblsmtpd by using the BLS: sbl-xbl.spamhaus.org ### use uid and gid of vpopmail
exec /usr/local/bin/softlimit -m 20000000
/usr/local/bin/tcpserver -H -v -R -l "$LOCAL" -x /etc/tcp.smtp.cdb -c "$MAXSMTPD"
-u 89 -g 89 0 smtp /usr/local/bin/rblsmtpd
-r sbl.spamhaus.org /var/qmail/bin/qmail-smtpd
/home/vpopmail/bin/vchkpw /bin/true 2>&1
原文转自:http://www.ltesting.net