Linux:邮箱客户端

本文记录了在Linux环境下更换邮件客户端时遇到的问题,如GNOME Evolution无法连接163邮箱因ID命令缺失,以及尝试的解决方案,如转用Outlook和兼容的开源客户端。重点在于解决IMAP连接时的UnsafeLogin问题和不同邮箱服务的配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址:Linux:邮箱客户端(永久地址,保存网址不迷路 🙃)

问题描述

我们最开始使用 Thunderbird 邮件客户端,但是在 GNOME 3 中当收到邮件时却没有任何消息提示,但偶尔又会有提示。鉴于我们没有找到相关的解决方案,因此只能更换邮件客户端,毕竟新邮件通知这个特性对我们来说很重要。

但是,如果更换邮件客户端,我们又要面临新问题:邮件客户端必须支持 rfc2971 定义的 ID 命令,否则无法登录 163 邮箱(imap连接提示Unsafe Login,被阻止的收信行为,参考常见问题记录部分的说明)。腾讯邮箱肯定是不存在该问题的,因为我们能够正常登录企业邮箱,至于其他邮箱服务是否存在该问题我们还不清楚。

该笔记将记录:在 Linux 中,我们使用过的邮件客户端以及常见问题,而子章节将记录与特定客户端相关的设置方法。

解决方案

GNOME Evolution(正在使用)

Apps/Evolution - GNOME Wiki!
Gnome Evolution - General - Mail server doesn't show up

# 04/27/2021 目前,我们无法登录 163 邮箱,因为当前版本不支持 ID 命令。如果使用 POP 协议,那么侧栏不会显示邮箱帐号(因为 POP 中没有帐号的概念),而邮件都下载到侧栏 On This Computer 目录中。为了解决该问题,我们改用 Outlook 邮箱,或者其他遵循标准且从国内容易登录的国外邮箱。

pasted_image003.png

Thunderbird

Thunderbird — Make Email Easier. — Thunderbird

# 04/29/2021 在 Debian 10 中,Thunderbird 无法正确进行邮件通知,而我们又十分依赖于该功能,因此只能放弃使用 Thunderbird 邮箱。

pasted_image004.png

Mailspring

Foundry376/Mailspring: A beautiful, fast and fully open source mail client for Mac, Windows and Linux.
Mailspring - The best free email app

# 04/29/2021 Star 10.6k

pasted_image002.png

Nylas Mail - the open-source, extensible mail client

nylas/nylas-mail: An extensible desktop mail app built on the modern web. Forks welcome!

# 04/29/2021 Star 24.6k

pasted_image001.png

Kanmail

Oxygem/Kanmail: An email client that functions like a kanban board.

# 04/29/2021 Star 851

pasted_image.png

常见问题记录

邮箱服务的地址信息

163.com
SMTP, smtp.163.com, 25, 465(ssl)
POP, pop.163.com, 110, 995(ssl)
IMAP, imap.163.com, 143, 993(ssl)

qq.com
SMTP, smtp.qq.com, 465(ssl), 587(ssl)
IMAP, imap.qq.com, 993(ssl)

exmail.qq.com(国内用户)
SMTP, smtp.exmail.qq.com, 465(ssl)
IMAP, imap.exmail.qq.com, 993(ssl)

exmail.qq.com(海外用户)
SMTP, hwsmtp.exmail.qq.com, 465(ssl)
IMAP, hwimap.exmail.qq.com, 993(ssl)

"This phone number cannot be used for verification"

谷歌google帐号注册时,手机号码无法用于进行验证怎么办?

# 03/20/2021 当注册 Google 帐号时,其中某个步骤是填写手机号码,但是会提示 "This phone number cannot be used for verification" 错误。此时,需要通过 Gmail 手机 APP 注册,以绕过该限制。

Failed to select mailbox: SELECT Unsafe Login. Please contact kefu@188.com for help

imap连接提示Unsafe Login,被阻止的收信行为
https://www.ietf.org/rfc/rfc2971.txt%20

问题描述:在添加 163 邮箱时,返回如下错误:

The reported error was “Failed to select mailbox: SELECT Unsafe Login. Please contact kefu@188.com for help”.

原因分析:参考 imap连接提示Unsafe Login,被阻止的收信行为 文档。因为 163 实现 RFC 2971 的 ID 命令,要求在操作过程中使用 ID 命令发送客户端信息。但是又未全部实现,因为 RFC 2971 要求 Servers MUST NOT deny access to or refuse service for a client based on information from the ID command. Clients MUST NOT refuse to response. 不能拒绝响应。说到底就是,未完全实现规范的要求。

解决方法:我们是邮件客户端,除非其支持 ID 命令,否则我们无法使用 Evolution 客户端。因此我们不再使用 163 邮箱,改用 Outlook 邮箱,这样就能继续使用 Evolution 邮箱客户端,以及其他有邮箱客户端。

如果是 Java 代码,能够在代码中发送 ID 命令:

Properties props = new Properties(); 
props.setProperty("mail.store.protocol", "imap"); 
props.setProperty("mail.imap.host", "imap.163.com"); 
props.setProperty("mail.imap.port", "143"); 

HashMap IAM = new HashMap();
//带上IMAP ID信息,由key和value组成,例如name,version,vendor,support-email等。
IAM.put("name","myname");      
IAM.put("version","1.0.0");      
IAM.put("vendor","myclient");      
IAM.put("support-email","testmail@test.com");  
Session session = Session.getInstance(props); 

IMAPStore store = (IMAPStore) session.getStore("imap");
//下方替换对应帐号和授权码
store.connect("testmail@163.com", "password"); 

store.id(IAM);

相关文章

「suckless-tools」
「Eclipse」- 常用设置(杂记)
「FVWM」
「Stalonetray」- 系统托盘
「Zim」- 常见错误汇总
「Insomnia Designer」- 接口测试工具(Postman 的同类产品)

参考文献

https://www.ietf.org/rfc/rfc2971.txt
Outlook添加网易邮箱
QQ邮箱帮助中心/如何使用IMAP服务?
腾讯企业邮箱帮助中心/如何使用IMAP服务?
1112549 - [FFOS2.0][Woodduck][Email]Can not create 163 email account in Email app

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值