「开源自荐」Aillive Mail:可私有部署的 Outlook / Hotmail 多邮箱工作台,支持 Web 与 Windows 桌面端

羊啊羊阳 2026-07-20 13:00 1

本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:



  • 我的帖子已经打上 开源推广 标签:

  • 我的开源项目完整开源,无未开源部分:

  • 我的开源项目已链接认可 LINUX DO 社区:

  • 我帖子内的项目介绍,AI生成、润色内容部分已截图发出:

  • 以上选择我承诺是永久有效的,接受社区和佬友监督:


以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出




Aillive Mail


大家好,分享一个最近整理并开源的项目:Aillive Mail


这是一个面向 Outlook、Hotmail 和 Live 邮箱的自托管多邮箱管理工具,支持 Web 端和 Windows 桌面端。


项目的目标是将多个微软邮箱集中到同一个工作台中,减少反复切换账号带来的操作成本,同时让邮箱数据和凭据保存在自己的服务器中。




邮件撰写工作台,截图内容均为虚构演示数据。



主要功能



  • 多个 Outlook、Hotmail、Live 邮箱统一管理

  • 收件箱、已发送、草稿、归档和回收站

  • 邮件搜索、阅读、移动、标记及发送

  • 邮箱账号批量导入、导出、分组和排序

  • Microsoft Device Code OAuth2 授权

  • IMAP、SMTP 与 Microsoft Graph 混合传输

  • 多用户数据隔离及独立游客空间

  • 中英文、深色和浅色主题

  • 桌面端与移动端响应式布局

  • 管理员后台、用户管理和公告功能

  • Docker 私有部署



Microsoft OAuth2 授权


项目通过 Microsoft Device Code 流程完成邮箱授权,用户不需要在应用中输入 Microsoft 账号密码。


收件默认使用 IMAP XOAUTH2,发件默认使用 SMTP OAuth2;相关协议不可用时,可以自动回退到 Microsoft Graph。



隐私与安全


邮箱密码、Client ID 和 Refresh Token 在写入 SQLite 前使用 AES-256-GCM 加密。


应用按照当前登录用户或游客会话隔离数据。浏览器 Cookie 只保存签名后的会话标识,不保存邮箱密码或 Token。


邮件 HTML 会在服务端进行安全处理,限制脚本、危险链接、远程跟踪资源和私有网络请求。


邮箱属于敏感数据,正式部署前请阅读仓库中的安全文档,并妥善保管:



  • .env

  • SQLite 数据库

  • 主加密密钥

  • 邮箱密码和 Refresh Token

  • 数据库备份文件


技术栈



  • 后端: Go、SQLite

  • 前端: React、TypeScript、Vite

  • 邮件协议: IMAP、SMTP、Microsoft Graph

  • 身份授权: Microsoft OAuth2

  • 桌面客户端: Rust、Tauri

  • 部署方式: Docker 或独立 Go 服务


生产环境中,Go 服务会同时提供 API 和编译后的 React 页面,Node.js 主要用于前端构建。


移动端适配


项目针对桌面端和移动端分别进行了界面适配,可以在手机浏览器中完成邮件阅读、管理和撰写。



仓库说明


本项目包含两个仓库,两者属于同一个项目:


1. Mail:主项目源码


包含 React 前端、Go 后端、桌面客户端源码、数据库、OAuth2、邮件协议接入以及 Docker 配置。




2. MailManager:Windows 发布仓库


用于发布 Windows 桌面客户端,目前提供:



  • NSIS 安装版

  • MSI 安装版

  • 免安装便携版

  • SHA-256 校验文件




Windows 安装包目前尚未进行代码签名,首次运行时可能出现 SmartScreen 的“未知发布者”提示。请仅从 GitHub Releases 下载,并在运行前核对 SHA-256。


快速部署


git clone https://github.com/amine123max/Mail.git
cd Mail

npm ci
cp .env.example .env
npm run dev

开发环境访问:


http://localhost:5173

使用 Docker 部署:


docker compose up -d --build

首次运行会进入管理员初始化页面,需要提前在 .env 中配置验证码邮件所使用的 SMTP 服务。


正式部署时请务必修改:


MAIL_SESSION_SECRET
MAIL_ENCRYPTION_KEY

同时配置持久化数据目录、验证码 SMTP、反向代理和 Cookie 路径。


项目地址



  • 在线体验: https://www.aillive.xyz/mail

  • 主项目源码: GitHub - amine123max/Mail: Secure self-hosted Outlook and Hotmail mailbox manager with Go, React, OAuth2, and encrypted SQLite · GitHub

  • Windows 下载: Releases · amine123max/MailManager · GitHub

  • 开源协议: MIT License


当前限制


目前主要支持 Outlook、Hotmail 和 Live 邮箱,暂未适配 Gmail、QQ 邮箱等其他邮件服务。


项目仍在持续完善中,不建议在没有备份的情况下直接用于关键生产邮箱。


欢迎佬友们体验并提出建议。发现问题可以提交 Issue,也欢迎参与代码、文档和兼容性方面的改进。


感谢大家。




Community


Thanks to the LINUX DO open-source community for providing a platform for discussion and knowledge sharing.

最新回复 (7)
  • Kyle🔋 07-20 13:02
    1

    严肃建议适配QQ邮箱、网易邮箱、Gmail

  • superman 07-20 13:19
    2

    gmail恐怕适配不了哈哈哈,那玩意儿到现在也没有开源的项目吧

  • 若星若尘 07-28 12:02
    3

    https://github.com/amine123max/Mail



    hotmail可以只用邮箱-密码吗?没有clientid和Refresh Token。

  • 羊啊羊阳 楼主 07-28 12:46
    4

    您好!!!!hotmail和outlook都需要的

  • wg1929 07-28 13:15
    5

    大佬这个测试过收发速度吗,现在用qq邮箱收发多个邮箱,可是信息总是慢40分钟左右。

  • 羊啊羊阳 楼主 07-28 14:14
    6

    您好!!这个速度还可以吧,但是我的vps是阿里送的最小的vps,具体速度没有测试,我自己用下来大概是10s内可以获取到

  • wg1929 07-28 22:45
    7

    嗯嗯,可以,所以我一直心里有怀疑是QQ限制了敌方邮箱的收发速度,但是都懒得去证实。

* 帖子来源Linux.do
返回