Mutt 停止发送电子邮件

Mutt 停止发送电子邮件

我习惯mutt这样发送邮件:

mutt -s "Subject" [email protected] <<< "Text"

几天前mutt停止了工作,现在我收到此错误:

msmtp: cannot read from TLS connection: the operation timed out
msmtp: could not send mail (account default from ~/.msmtprc)
Error sending message, child exited 74 (I/O error.)
  • 版本:Mutt 1.9.4

  • /.muttrc:

set sendmail="/usr/bin/msmtp"
set use_from=yes
set [email protected]
  • /.msmtprc:
defaults
logfile ~/msmtp.log
account gmail
auth on
host smtp.gmail.com
from [email protected]
auth on
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
user [email protected]
password "mypassword"
port 587
account default : gmail

我做了什么:

我使用 2FA 在 Google 上为 Mutt 创建了一个应用程序专用密码,但仍然出现相同的错误。

telnet和命令的输出ping显示成功连接到端口 587 上的 Gmail SMTP 服务器(smtp.gmail.com)。

切换到端口 465 并获取msmtp: the server sent an empty replycode 76 (Remote protocol error.)

端口 587 和 465 均可正常工作swaks -tls,电子邮件已成功发送。

答案1

我最近也遇到了这个问题(我现有的配置在 2023 年 3 月的一天停止工作)。我发现了让我继续前进,特别是:

set from = "your_email_address"
set realname = "Your Name"

# Gmail
set imap_user = "your_email_address"
set smtp_url = "smtps://[email protected]:465/"
set smtp_authenticators = 'gssapi:login'
set imap_pass = "your_app_specific_password"
set smtp_pass = "your_app_specific_password"

# Ensure TLS is enforced
set ssl_starttls = yes
set ssl_force_tls = yes

在我看来,TLS 节解决了我的问题。谢谢你!

答案2

  • 您可能无法连接到该主机上的端口 587(速率限制?),如果此问题仍然存在,请咨询您的 ISP
  • 如果你这边开放了 465 端口您可以使用正确的 SSL 设置
    # Use TLS on port 465
    port 465
    tls on
    tls_starttls off
    

相关内容