我正在尝试在我的网络中的 Pi 上使用 SENDMAIL (v8.15) 将邮件转发到我的 SendGrid 帐户。这是必要的,因为我网络上的旧式网络摄像头无法使用 SendGrid 所需的超长密码。
基本 SENDMAIL 可以正常工作,但连接到 SendGrid 时不使用 AUTH LOGIN。我已安装该sasl2-bin
软件包。如何“链接”SENDMAIL 以使用机器上安装的 SASL?在这种情况下,当 SENDMAIL 作为客户端运行时,是否还需要 SASL?
我的authinfo
文件包含:
AuthInfo:smtp.sendgrid.net "U:api.key" "P=cGFzc3dvcmQ=" "M:LOGIN PLAIN"
sendmail.mc
除了我的文件中的以下内容外,其他所有内容几乎都是现成的:
FEATURE(`authinfo')
define(`RELAY_MAILER_ARGS',`TCP $h 25')dnl
define(`SMART_HOST',`smtp.sendgrid.net')dnl
define(`confAUTH_MECHANISMS',`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_OPTIONS',`A')dnl
重建并重新启动后,我仍然得到:
AUTH=客户端,可用机制不能满足要求
AUTH=client,relay=smtp.sendgrid.net.,暂时失败,连接中止
stat=Deferred:暂时 AUTH 失败。
我使用 TCPDUMP 跟踪了流量,并看到 SendGrid 的 EHLO 响应如下:
250-smtp.sendgrid.net
250-8BITMIME
250-PIPELINING
250-SIZE 31457280
250-STARTTLS
250-AUTH PLAIN LOGIN
250 AUTH=PLAIN LOGIN
Pi 发送了 QUIT 命令。它没有尝试AUTH LOGIN
。
需要什么才能使 SENDMAIL 作为客户端使用 AUTH LOGIN?
答案1
此外sasl2-bin
,还需要安装libsasl2-modules
。