当我尝试发送邮件时,出现以下错误:
gnutls_handshake:收到意外的 TLS 数据包。
这是我的 .muttrc (myname、myaddress 和 mymail 是占位符):
# Automatically log in to this mailbox at startup
set imap_user="myname"
set imap_pass=""
set spoolfile="imaps://imap.myaddress/Inbox"
set folder="imaps://imap.myaddress/Inbox"
set record="=Sent"
set postponed="=Drafts"
# define how to send mails
set smtp_url="smtps://$imap_user:[email protected]:587"
# activate TLS if available on the server
set ssl_starttls=yes
# always use SSL when connecting to a server
set ssl_force_tls=yes
# wait to enter mailbox manually
set imap_passive
# Automatically poll subscribed mailboxes for new mail (new in 1.5.11)
set imap_check_subscribed
# Reduce polling frequency to a sane level
set mail_check=60
# And poll the current mailbox more often (not needed with IDLE in post 1.5.11)
#set timeout=10
# keep a cache of headers for faster loading (1.5.9+?)
#set header_cache=~/.hcache
# Display download progress every 5K
set net_inc=5
# Cancel a message when subject is blank
set abort_nosubject=yes
# Set default editor
set editor="gvim -v"
# Asks to include message when replying
set include=ask-yes
# Asks to postpone a message when not sent
set postpone=ask-yes
# Ask before printing
set print=ask-yes
# set from to ensure mutt doesn't put [email protected]
set from="myemail"
set use_from=yes
set envelope_from="yes"
答案1
使用时邮件传输协议在端口 587 上提交, 的值smtp_url
应以 开头"smtp://"
,即不以"smtps://"
。确保ssl_starttls
设置为也很重要"yes"
,如上面的配置中正确完成的那样。
在设置我自己的服务器时,我遇到了完全相同的问题。可以访问客户端和服务器端的日志,很明显这肯定是客户端问题。
以 开头的配置选项smtps
告诉 mutt 打开到服务器的 ssl 加密连接。然而,服务器期望一个明文 smtp 会话,一旦客户端和服务器完成一些协商,该会话就会被加密传输。