背景
最近在配置 OpenClaw 和 Hermes 的邮件功能时,使用 Himalaya 连接 163 邮箱遇到了一个问题:
- 登录验证通过(使用授权码)
- 执行
SELECT INBOX等操作时报错:"安全策略拒绝"
查了很多资料,终于找到原因和解决办法。
问题原因
163 邮箱服务器最近加强了对第三方客户端的安全限制,要求客户端在认证后必须先发送 IMAP ID 命令(RFC 2971)来声明自己的身份信息。否则在执行 SELECT INBOX 等操作时就会被拒绝。
而 Himalaya 默认没有开启 IMAP ID 支持,导致:
- 登录虽通过
- 但后续操作被拒
解决办法
1. 更新 Himalaya 到最新版本
Himalaya 在 v1.2.0版本中更新了 IMAP ID 功能。
# 更新 Himalaya
himalaya --version # 检查当前版本
# 重新安装或更新
brew update && brew upgrade himalaya
2. 修改配置
可以让 OpenClaw 或 Hermes 自动配置即可,可以直接和它们说:
开启 Himalaya 的 IMAP ID 功能来收取配置的163邮件
以下是hermes自动执行过程,OpenClaw也类似。

手动修改配置文件
在 ~/.config/himalaya/config.toml 中,在 163 邮箱配置 下添加:
[accounts.163]
email = "your_email@163.com"
display-name = "163邮箱"
default = true
[accounts.163.backend]
type = "imap"
host = "imap.163.com"
port = 993
encryption.type = "tls"
login = "your_email@163.com"
auth.type = "password"
auth.raw = "your授权码"
# 关键配置:开启 IMAP ID
[accounts.163.backend.extensions.id]
send-after-auth = true
配置解释:
| 配置项 | 说明 |
|---|---|
[accounts.163.backend.extensions.id] |
IMAP ID 扩展配置段 |
send-after-auth = true |
认证后自动发送 ID 信息 |
配置完成后,测试连接:
himalaya envelope list --account 163
如果成功,应该能看到邮件列表。
评论区