我习惯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 reply
:code 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