具有 mutt 和 msmtp 的多个 smtp 帐户

具有 mutt 和 msmtp 的多个 smtp 帐户

我使用mutt两个不同的图像映射帐户,并已配置 smtp 帐户Amsmtpmutt

如果我没有在 中指定默认帐户.msmtprcmutt则当我尝试发送时会抱怨没有默认帐户。

如果我设置默认帐户Amutt将其用于所有 imap 帐户。

我怎样才能让它使用smtp帐户对应的imap帐户?

在账户中mutt 配置文件我设置了以下内容:

## sent
set sendmail="/usr/bin/msmtp"
set use_from=yes
set realname="My Name"
set [email protected]
set hostname="gmail.com"
set ssl_force_tls=yes
set imap_pass=$my_pass
unset ssl_starttls

在 .msmtprc 中,帐户配置如下:

defaults
tls on
port 587

[...]

account gmail
tls_fingerprint 39:7C:59:20:DE:55:51:F4:8B:72:1D:B5:B2:26:8A:D1:DB:90:C6:28:80:77:F9:B5:EC:C1:BF:1C:6F:4D:A1:63
from [email protected]
host smtp.gmail.com
auth on
user [email protected]
passwordeval gpg2 --no-tty -q -d ~/mygmail.gpg

答案1

在帐户(A 或 B)的 mutt 配置中,您可以使用:

set sendmail="/usr/local/bin/msmtp -a [account]

它告诉 msmtp 在 .msmtprc 中使用哪些帐户参数。在我的 msmtp 配置中,我专门将默认值设置为 na,这强制在 mutt 中设置帐户。

答案2

其中有“Using msmtp with Mutt”部分例子到 结束man msmtp

envelope_from=yes选项让 Mutt 使用 -f msmtp 的选项。因此msmtp选择第一个与发件人地址匹配的帐户[电子邮件受保护]

set sendmail这实际上意味着:不要在msmtp 的 mutts 路径中指定帐户。但在发送之前,请使用一些键盘宏在身份(和来源)之间进行切换。对于键盘宏有不同的方法 - 手册中提到了其中一种方法。我再给你一份,你可以选择:

.muttrc

set sendmail="/usr/bin/msmtp"
set use_from=yes
set envelope_from=yes

alias gmail    Horton Bumblebee <[email protected]>
alias example  H. Bumblebee <[email protected]>
macro compose v "<edit-from>^Uidentity\_<tab>" "Select from"

.msmtprc

defaults
 ...

account gmail
  host imap.gmail.com
  from [email protected]
  ...

account example
  host mail.example.com
  from [email protected]
  ...

相关内容