通过Mailu自建邮局

系统为 Ubuntu 22.04 LTS

前言

我其实最终选定了两个自建邮局软件。

一个是 Mailinabox 一键脚本,还有一个便是 mailu。

其实我一开始使用的是 Mailinabox 一键脚本,因为 star 数更多,经过了时间的考验。

结果我碰到了源源不断的问题,如还没有安装完所有的软件/环境,就把 nameserver 的值改为 127.0.0.1 ,导致所有网址解析失败,无法安装;从 GitHub 上下载的文件安装时修改了 rsyslog ,导致其一直启动失败……我一切都根据官方文档来的,也用的官方推荐的 Ubuntu 22.04 LTS 系统。最终因问题太多无法解决选择重置系统后安装 mailu —— 这是基于Docker的,应该会友好很多。

安装 Docker

默认 root 用户,系统纯净

hostnamectl set-hostname mx.example.com

输入 hostanme 应该就能看到 mx.example.com

更新系统

apt update
apt upgrade

安装必要的包

apt install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

添加Docker官方GPG 密钥

mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

添加docker官方库

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

更新源

apt update

安装 docker,包含docker 和 docker compose插件

apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin

运行

docker compose version

即可查看Docker版本

Docker 官方教程

安装Mailu

去官方的docker compose 配置文件生成工具填写相关信息。

选择 Mailu 版本和安装方式
选择 Mailu 版本和安装方式

填写 Mailu 运行位置和网页相关设置
填写 Mailu 运行位置和网页相关设置

记得勾选 开启管理员面板 Enable the admin UI

选择附加功能
选择附加功能

记得开启 WebMail,roundcube 和 rainloop 都可以,我光记着截图忘记开了,导致我重装了一次。下面三个选项分别是

  1. Enable the antivirus service 开启反病毒服务,这个需要更多内存,官方说要 3G RAM + 1G swap,而这里说至少要 1G 的额外内存给 ClamAV 。
  2. Enable the webdav service 开启 WebDav 服务,以便客户端可以使用邮件帐户存储联系人或日历。(我没看懂啥意思,但是还是开了)
  3. Enable fetchmail Fetchmail 能让用户使用 IMAP/POP3 来管理邮件。

填写服务器 IP 和 hostname
填写服务器 IP 和 hostname

点击 Setup Mailu,即可得到配置文件以及官方教程。

创建并进入 Mailu 运行文件夹

mkdir /mailu
cd /mailu

下载配置文件

wget https://setup.mailu.io/1.9/file/****/docker-compose.yml
wget https://setup.mailu.io/1.9/file/****/mailu.env

启动 Mailu

docker compose -p mailu up -d

设置管理员

docker compose -p mailu exec admin flask mailu admin admin example.pm PASSWORD

设置解析

rDNS

需要 IDC 支持。国内商家一般都不行。在VPS的设置页面即可设置。

DNS

访问 mx.example.com ,输入上面设置的管理员账号密码登录。

在左侧菜单栏中选择邮件域,然后点击左侧图标

图示
图示

点击右上角的 重新生成密钥 ,到域名解析商处将重新生成的解析都添加到域名下。

完成
完成

测试

使用 mail tester 测试邮局。

10分
10分
10分,非常成功。

也可以发件给 Gmail, Outlook 等邮箱进行测试。实测 Gmail,Outlook,QQ邮箱,163邮箱,腾讯企业邮箱,仅有 Outlook 进入了垃圾箱。收件均能收到。

Licensed under CC BY-NC-SA 4.0
最后更新于 Dec 23, 2022 00:00 UTC