Outis Vibe 项目

# Outis:用假"用户不存在"回邮对抗 AI 自动化邮件骚扰 ## 项目简介 Outis 是一个用 Go 编写的命

Outis:用假"用户不存在"回邮对抗 AI 自动化邮件骚扰

项目简介

Outis 是一个用 Go 编写的命令行工具,针对收到的可疑邮件伪造一封 RFC 3464 标准的"用户未知"退信回执,让发件方误以为你的邮箱不存在,从而把你从其发送名单中移除。它专为当下 AI 生成的批量营销邮件设计,把"没人回信就别再发"的逻辑自动化。

核心功能

  • 伪造 RFC 3464 退信:multipart/report 含 message/delivery-status(status 5.1.1)与原始 message/rfc822,形态与 Postfix 几乎一致。
  • 保留原 Return-Path:以 MAILER-DAEMON@ 作为信封发件人(若 SMTP 服务端允许)。
  • 逐域账户管理:每个账户对应一个域;账户的 SMTP / MTA / 鉴权参数按域隔离。
  • 批量与剪贴板输入:支持单文件、目录批量、剪贴板直接读取,并支持 dry-run 仅生成 .bounce.eml。
  • OS Keychain 存密码:账户密码写入系统钥匙串,配置文件不含明文。
  • 抑制名单规避:自动识别 Amazon SES 等共享抑制名单的发送域,改向 From 头地址发退信。
  • 无污染回执:故意避开 SMTP 会话期硬 550 拒绝,让发件方日志显示投递成功,副作用只落到真正处理通知的那个人。

技术实现

Outis 命名取自《奥德赛》中奥德修斯对独眼巨人说的"Outis(无人)",把"我不在"变成可执行的 SMTP 退信动作。设计上故意避开 SMTP 会话期的硬 550 拒绝——那会被发件方立刻识别为有效拒收;它选择在邮件已经被收下后再异步发送"用户未知"通知,让发件方日志显示投递成功,副作用只落到真正处理通知的那个人。配置存储在 os.UserConfigDir()/outis/config.toml,账户匹配优先看 Delivered-To / To / Cc 中的域名,确保发送域、收件域、SMTP 服务域三者一致,提高退信可信度。

快速上手

  1. 构建二进制:go build -o outis cmd/outis/main.go。
  2. 初始化账户:./outis init [domain],按提示输入 SMTP 主机、端口、用户名,密码写入 OS keychain。
  3. 查看账户:./outis accounts。
  4. 预览单封邮件:./outis message.eml,确认后再真正发送。
  5. 批量处理整个目录:./outis inbox/,按 Y 一次性确认全部。
  6. 干跑仅生成退信文件:./outis -n -o out/ inbox/,把 .bounce.eml 写到 out/。
  7. 发送后删除原邮件:加上 -d 标志。

适用人群

  • 被 AI 生成的批量营销邮件持续骚扰的个人用户
  • 维护自建域邮件服务器的运维
  • 关注收件箱信噪比、希望最小化"假回信"风险的用户
  • 想要可脚本化、可审计的退信工具的隐私爱好者
  • 对抗垃圾邮件但不想直接拒收(影响合法投递)的从业者

团队信息

由 AI 猎手自动发现

评论与建议

0 条评论