- 论坛徽章:
- 0
|
原标题:用自己的MTA给本地账号发信的smtp认证问题[问题描述已修改]
解决方法请看第4页>;>;
感谢:思一克、paulwang、rhinofly、dennis2、xiaohua、tonygong、hzqbbc 等的不吝指导!你们的耐心回贴解决了我很多问题,也教会了我很多¥#%%!!
原问题:
看了很多这里的smtp认证问题,但是还是有些疑惑,请大家指教.
这里我的域名 ==>; mydomain.com
我的用户名 ==>; jackieyuan
我在以下的设置环境下,通过我的MTA(qmail 1.03 patched) 向其他 MTA 转信的过程中 (例如发信到 @hotmail.com ) 都可以顺利通过 SMTP Authentication 后转发。 即
Outlook 的 jackieyuan@mydomain.com 账户 --->; smtp.mydomain.com (要smtp 认证) --->; user@hotmail.com 或者 jackieyuan@mydomain.com
但是对于通过自己的MTA自己给自己本地用户发送的邮件, MTA就不要求你进行smtp认证了
Outlook 的 jackieyuan@mydomain.com 账户 --->; smtp.mydomain.com (不要smtp 认证) --->; jackieyuan@mydomain.com 当然此时对其他MTA 的发送(比如user@hotmail.com) 是失败的。
请问如何设置:
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: jackieyuan@mydomain.com
我的另外一个非主机的 email address: user@hotmail.com
安装环境.
客户端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 文件
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 |
|