type
Post
status
Published
slug
2023/02/20/linux-email-configure-mutt-msmtp-gmail
summary
ArchLinux 的 mutt 工具配置
tags
思考
工具
Linux
category
技术分享
icon
password
new update day
Property
Oct 22, 2023 01:31 PM
created days
Last edited time
Oct 22, 2023 01:31 PM
最近我尝试为 Linux staging 分支贡献相关补丁。在提交补丁之前,最重要的一步是配置邮件发送工具:
mutt
。然而,在配置 mutt 工具时遇到了很多问题。在这里,我记录下了整个过程,希望能够帮助需要的朋友。注意:此配置只在 ArchLinux 上进行过测试!
1 安装 mutt
sudo pacman -S mutt
2 重新编译 msmtp
2.1 安装构建工具
因为我采用的 smtp 客户端是 msmtp ,且 msmtp 默认的 TLS 库是 GnuTLS 与 Gmail 不兼容,会出现
msmtp: TLS handshake failed: the operation timed out
错误,所以需要自己手动重新编译 msmtp。sudo pacman -S base-devel
2.2 准备 msmtp 源码
下面是 msmtp 最新版本 1.8.23 的源码包下载链接
- 下载源码包
wget https://src.fedoraproject.org/lookaside/pkgs/msmtp/msmtp-1.8.23.tar.xz/sha512/69675cb539fa5c78b83e90a460e8215e56b1d0fa7a18729eb058b8d51414d13b88fbcdb2092767e7e96c325a143230ac09e041ea74d068bf267e508418cf674a/msmtp-1.8.23.tar.xz
- 解压源码包
tar xvf msmtp-1.8.23.tar.xz
- 重新编译 msmtp
cd msmtp-1.8.23/ && ./configure --prefix=/usr/ --with-tls=openssl
- 安装 msmtp
sudo make install
3 配置 Gmail
3.2 Gmail 开启 smtp
第 1 步:检查 IMAP 是否已启用
1. 在计算机上打开 Gmail。
2. 点击右上角的“设置”图标 查看所有设置。
3. 点击转发和 POP/IMAP 标签页。
4. 在“IMAP 访问”部分,选择启用 IMAP。
5. 点击保存更改。
第 2 步:在电子邮件客户端中更改 SMTP 和其他设置
参考下表,使用正确的信息更新您的客户端。如需有关更新设置的帮助,请在您的电子邮件客户端的帮助中心内搜索关于 IMAP 设置的说明。
接收邮件 (IMAP) 服务器 | imap.gmail.com
要求 SSL:是
端口:993 |
发送邮件 (SMTP) 服务器 | smtp.gmail.com
要求 SSL:是
要求 TLS:是(如适用)
使用身份验证:是
SSL 端口:465
TLS/STARTTLS 端口:587 |
完整名称或显示名称 | 您的姓名 |
帐号名、用户名或电子邮件地址 | 您的完整电子邮件地址 |
密码 | 您的 Gmail 密码 |
3.2 获取 Gmail 应用密码
- 现在基本上大部分用户都开始了两步验证,所以在使用 smtp 客户端的时候,需要使用应用密码进行连接。
应用专用密码是一个 16 位的密码,可授权安全性较低的应用或设备访问您的 Google 帐号。只有已开启两步验证功能的帐号才可使用应用专用密码。
创建和使用应用专用密码
如果您已开启两步验证功能,并且在登录帐号时收到了“密码不正确”错误消息,可以尝试使用应用专用密码。
- 转到您的 Google 帐号。
- 选择安全性。
- 在“登录 Google”下方,选择应用专用密码。您可能需要登录。如果您没有此选项,可能是因为:
- 您的帐号未设置两步验证。
- 您只为两步验证设置了安全密钥。
- 您使用的是通过单位、学校或其他组织获取的帐号。
- 您开启了高级保护功能。
- 在底部,依次选择选择应用和您使用的应用 选择设备和您使用的设备 生成。
- 按照说明,输入应用专用密码(即设备上的黄条中显示的 16 个字符的密码)。
- 点按完成。
提示:在大多数情况下,您只需为每个应用或设备输入一次应用专用密码,因此不用担心自己记不住这个密码。
4 配置 mutt 与 msmtp
4.1 配置 mutt 使用 msmtp
- 编写 mutt 配置文件
vim ~/.muttrc
- 具体内容
set sendmail="/usr/bin/msmtp" set envelope_from=yes set from="Your Name <Your Name@gmail.com>" set use_from=yes set edit_headers=yes
4.2 配置 msmtp
- 编辑配置文件
vim .msmtprc
- 具体内容
# Set default values for all following accounts. defaults auth on tls on tls_trust_file /etc/ssl/certs/ca-certificates.crt logfile ~/.msmtp.log # Gmail account gmail host smtp.gmail.com port 587 tls_starttls on from YourName@gmail.com user YourName password YourAppPasswordCode # Set a default account account default : gmail
4.3 测试
echo "Some text" | msmtp someone@expoli.tech -a gmail
5 参考资料
欢迎加入“喵星计算机技术研究院”,原创技术文章第一时间推送。
- 作者:tangcuyu
- 链接:https://expoli.tech/articles/2023/02/20/linux-email-configure-mutt-msmtp-gmail
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章