kevin
|
cead42fd69
|
Merge pull request 'fix: 外发优先 IPv4 + smarthost 中继 + 地址族配置(补 PR #1 合并后遗漏的提交)' (#3) from dsh/mailgo:outbound-ipv4-relay into main
Reviewed-on: kevin/mailgo#3
|
2026-08-16 00:13:00 -04:00 |
|
dsh
|
7ce8751f46
|
feat: 出站地址族可配置(ip_family=ipv4/ipv6/auto)+ 源地址绑定(source_ip)
- ip_family 默认 ipv4(保持 PTR/SPF 最可靠的路径);运营商为静态 IPv6
配置 PTR 后可切换 ipv6
- source_ip 绑定出站源地址,避免内核使用轮换的 IPv6 临时隐私地址
(临时地址无 PTR,Gmail 等会拒收)
- 无 MX 回退时按地址族偏好排序 A/AAAA
|
2026-08-16 00:09:53 -04:00 |
|
dsh
|
76c98c94f3
|
fix: relay_starttls 默认值始终为 true(未显式配置时),避免中继密码明文传输
|
2026-08-16 00:09:53 -04:00 |
|
dsh
|
8fb7aef052
|
fix: 外发优先走 IPv4(Gmail 拒收无 PTR 的 IPv6);新增 smarthost 中继支持
- 出站 SMTP 连接强制 IPv4(tcp4),无 MX 回退时 IPv4 优先:
住宅/动态 IP 的 IPv6 临时地址通常无 PTR,Gmail 会以 5.7.25 拒收,
而 IPv4 一般具备正反向一致的 PTR(实测 Gmail 250 OK)
- [outbound] 新增 relay_host/relay_port/relay_user/relay_password/
relay_starttls:配置后所有外部投递经智能主机中继(AUTH PLAIN、
465 隐式 TLS / 其他端口 STARTTLS),解决服务器 IP 被 Spamhaus PBL
收录时 Outlook/Hotmail 拒收的问题
- 新增 smarthost 中继单元测试
|
2026-08-16 00:09:53 -04:00 |
|
kevin
|
c40113d3bf
|
Merge pull request 'fix: SMTP 收件邮件的附件未保存(Web 邮箱看不到附件)' (#2) from dsh/mailgo:fix/smtp-received-attachments into main
Reviewed-on: kevin/mailgo#2
|
2026-08-15 23:55:09 -04:00 |
|
dsh
|
31e5f94be6
|
fix: SMTP 收件邮件的附件未保存(Web 邮箱看不到附件)
- parseSMTPMessage 之前只提取附件元数据、丢弃内容;现在保留原始字节
- saveMessage 创建邮件后落盘附件文件(storage.Save)、写 attachments 记录
并计入用户配额 used_bytes,Web 邮箱可正常列表/下载
- 新增单元测试:附件字节提取 + 附件落盘/记录/配额校验
- 已在生产环境实测:带附件邮件经 :25 入站后,附件文件、记录、配额、
Web 下载(/attachment/:id)全部正确
|
2026-08-15 23:53:50 -04:00 |
|
kevin
|
79220b816d
|
Merge pull request 'feat: 实现对外邮件投递(外发队列 + MX 直投 + DKIM 签名 + 退信 + 管理后台)' (#1) from dsh/mailgo:outbound-delivery into main
Reviewed-on: kevin/mailgo#1
|
2026-08-15 23:38:46 -04:00 |
|
dsh
|
3bc33214c3
|
test: 增加外发 mailer 单元测试(线格式/点填充/8BITMIME/永久失败)及 DKIM 签名测试
|
2026-08-15 17:30:40 -04:00 |
|
dsh
|
5eb9bc2c71
|
feat: 实现对外邮件投递(外发队列 + MX 直投 + DKIM + 退信 + 管理后台)
- 新增 internal/outbound 模块:MX 查询、SMTP 出站客户端(EHLO/STARTTLS/
MAIL/RCPT/DATA/QUIT)、4xx 临时失败与 5xx 永久失败分类、8BITMIME 支持
- 新增 outbound_messages 队列表与 OutboundStore,后台 worker 指数退避重试
- 永久失败/超限退信到发件人收件箱,包含原因与目标收件人
- 外发邮件使用域名 DKIM 私钥签名(go-msgauth)
- SMTP 提交集成:认证用户可发外部收件人,MAIL FROM 必须等于登录用户邮箱,
未认证外部投递明确拒绝(防开放中继)
- Web 发信集成:外部收件人自动入队,附件以 multipart/mixed + base64 编码
加入邮件正文
- 每用户每分钟/每日发送限速(max_per_day=0 可禁用外部投递)
- 管理后台新增外发队列页面:状态统计、失败原因、手动重试/取消
- 新增 [outbound] 配置段并更新 README / todo.md
|
2026-08-15 17:18:54 -04:00 |
|
kevin
|
0545a71ba2
|
删除垃圾
Signed-off-by: 吴文峰 <kevin@lmve.net>
|
2026-06-02 20:49:03 +08:00 |
|
kevin
|
c7f466c99b
|
修复网页端编码问题
|
2026-06-02 20:46:59 +08:00 |
|
kevin
|
59719586a1
|
修复部分功能
|
2026-06-02 20:33:08 +08:00 |
|
kevin
|
b35d468396
|
自签证书
|
2026-06-02 19:10:25 +08:00 |
|
kevin
|
bd56c4dc5f
|
完善tls配置
|
2026-06-02 18:47:28 +08:00 |
|
kevin
|
3dcc3f9a35
|
up
|
2026-06-01 20:43:01 +08:00 |
|
kevin
|
0e9b62f5cf
|
修复socket问题
|
2026-06-01 20:18:38 +08:00 |
|
kevin
|
7c1ce77563
|
up
|
2026-06-01 20:06:02 +08:00 |
|
kevin
|
b8810d09b6
|
up
|
2026-06-01 19:54:53 +08:00 |
|
kevin
|
c3be042acb
|
up
|
2026-06-01 19:51:19 +08:00 |
|
kevin
|
4e233c82b4
|
二阶段差不多
|
2026-06-01 19:46:51 +08:00 |
|
kevin
|
9e50d05e71
|
一阶段ok
|
2026-06-01 18:59:55 +08:00 |
|