我正在使用 Postfix 和 Courier-IMAP 设置邮件服务器。我想使用 rimap 进行 SMTP 身份验证,这样我就不必维护两个用户数据库。我遇到的问题是,postfix 传递的用户名被删除了域名。它应该是'[电子邮件保护]' 就变成了 '约翰'。
登录IMAP服务器成功了,也成功了。testsaslauthd -u [email protected] -p password
使用smtpd_sasl_local_domain
(设置或取消设置)没有区别。
这个帖子似乎不是。即使我尝试使用 uasdfer@asdfasdf 登录,它也会删除域部分。
Postfix sasl:
# cat main.cf |grep -i sasl
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination reject_rbl_client zen.spamhaus.org check_policy_service unix:private/policyd-spf
Sasl 配置:
# cat saslauthd |grep -v "#"|grep -v -E "^$"
START=yes
DESC="SASL Authentication Daemon"
NAME="saslauthd"
MECHANISMS="rimap"
MECH_OPTIONS="127.0.0.1"
THREADS=5
OPTIONS="-c -m /var/run/saslauthd"
服务器版本:
- Debian 6.0.7
- Postfix 2.7.1-1+squeeze1
- 快递 4.8.0-3
答案1
您可能只需要添加-r
到您的 saslauthdOPTIONS=
节中。
从手册页
-r Combine the realm with the login (with an ’@’ sign in between).
e.g. login: "foo" realm: "bar" will get passed as login:
"foo@bar". Note that the realm will still be passed, which may
lead to unexpected behavior.