• 羊啊羊阳

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

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

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

    - 我的开源项目已链接认可 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 配置。

    github.com

    图片

    GitHub - amine123max/Mail: Secure self-hosted Outlook and Hotmail mailbox...

    Secure self-hosted Outlook and Hotmail mailbox manager with Go, React, OAuth2, and encrypted SQLite

    2. MailManager:Windows 发布仓库

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

    - NSIS 安装版

    - MSI 安装版

    - 免安装便携版

    - SHA-256 校验文件

    github.com

    图片

    GitHub - amine123max/MailManager: Official Windows desktop releases for Aillive...

    Official Windows desktop releases for Aillive Mail.

    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.

    主楼
  • Kyle🔋

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

    #1
  • superman

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

    #2
  • 若星若尘

    https://github.com/amine123max/Mail

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

    #3
  • 羊啊羊阳

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

    #4
  • wg1929

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

    #5
  • 羊啊羊阳

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

    #6
  • wg1929

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

    #7

发表回复

登录后回复