如何批量注册无数个电子邮箱(自建邮件服务器)

4 阅读5分钟

前言

经过调研,我们发现有三种方案来实现批量注册电子邮箱:

  1. 电子邮箱别名服务(或转发服务)
  2. 企业邮箱
  3. 自建邮件服务器

在上一篇文章中,我们讲了“企业邮箱”,企业邮箱注册和创建非常简单,开箱即用,但因为大多数企业邮箱都是收费的,而且价格不菲,免费版的企业邮箱通常限制50个用户(50个邮箱地址),而且不提供开发者API,所以为了尽可能的降低成本,以及创建账号数量不受限,我们的最优解还是购买一台云服务器(ECS)自行搭建邮件服务器。

邮件系统

我们收集了常见的开源电子邮件系统信息,对比如下:

系统名称硬件要求Web UI开发者API开发语言GitHub Star
Mailcow2核4GB支持✅支持✅PHP / JacaScript12.5k+
Stalwart1核1GB支持✅支持✅Rust12.2k+
Postal2核4GB支持✅支持✅Ruby16.4k+
Mail-in-a-Box1核1GB支持✅支持✅Python / Shell15.3k+
Mailu1核2GB支持✅支持✅Python7.1k+
mox1核512MB支持✅支持✅Go5.6k+
docker-mailserver1核2GB不支持❌不支持❌Shell / C18.1k+
iRedMail1核2GB收费支持⚠️收费支持⚠️Shell / Python1.8k+
Maddy1核512MB不支持❌不支持❌Go5.9k+
WildDuck1核2GB不支持❌支持✅Node.js2.1k+

这些邮件系统都是开源免费的(iRedMail 的 Pro 版本除外)

经过测试,我们觉得 Mailcow 功能强大,安装简单,且集成了 Web 管理员后台和收发邮件的 Web 客户端,提供中文界面,支持开发者 API,最好用,于是对 Mailcow 的安装部署做详细介绍,其它邮件系统的安装,可以参考各自的官方文档。

Mailcow

mailcow 可以说是最受欢迎的电子邮件系统了,根据官方文档,它的安装教程如下:

docs.mailcow.email/getstarted/…

首先购买云主机(阿里云/腾讯云等等),如果你主要用于接收国外邮件(如 Steam),尽量选择境外主机(香港/日本/新加坡),如果你主要用于接收国内邮件,则尽量选择境内主机。

mailcow 对内存要求较高,最低4GB,推荐6GB以上,为节约成本,我们可以选择轻量云服务器。因为搭建好的邮件系统其实也就我们一个人使用,对CPU的要求并不高。

购买好云服务器后,在后台给我们的云服务器开放如下TCP端口: 25 / 465 / 587 / 143 / 993 / 110 / 995 / 4190 / 80 / 443

然后在购买域名的地方,添加以下四条DNS记录:

NameTypeValue
mailA服务器IP
autodiscoverCNAME服务器域名
autoconfigCNAME服务器域名
@MX服务器域名

服务器 IP 就是你的云服务器的外网 IP

服务器域名,假如你的域名是 pypig.com 那么服务器域名我们一般取 mail.pypig.com

由于我的域名 pypig.com 是在 cloudflare 购买的,所以我在 cloudflare 后台添加如下四条DNS记录:

其中第四条MX类型的记录,Priority 设置为10

如果你的域名是在阿里云买的,就去阿里云后台添加DNS记录

回到我们购买的云服务器上,我们选择的是 Ubuntu 系统,如果你也是 Ubuntu 系统,可以按照如下的方法安装,如果不是,则参考上面的 mailcow 官方文档。

我们进入到服务器的命令行界面,按顺序一条一条的输入以下命令:

sudo apt update
sudo apt install -y git openssl curl gawk coreutils grep jq
curl -sSL get.docker.com/ | CHANNEL=stable sh
sudo systemctl enable --now docker
sudo apt update
sudo apt install docker-compose-plugin
umask 0022
cd /opt
sudo git clone github.com/mailcow/mai…
cd mailcow-dockerized
sudo ./generate_config.sh
sudo docker compose pull
sudo docker compose up -d

如果嫌麻烦,可以使用我们编写好的一键安装脚本,只需执行如下两行命令:

wget raw.githubusercontent.com/encoderlee/…
sudo bash mailcow.sh

安装过程中,命令行会提示:

Mail server hostname (FQDN) - this is not your mail domain, but your mail servers hostname:

这时候输入邮件服务器域名,我的域名是 pypig.com,所以我输入 mail.pypig.com

第二步会提示选择时区:

Timezone [Asia/Shanghai]:

如果提示的就是 Shanghai(上海),那直接敲回车即可

第三步会提示安装哪个版本:

Which branch of mailcow do you want to use? Available Branches:

  • master branch (stable updates) | default, recommended [1]
  • nightly branch (unstable updates, testing) | not-production ready [2]
  • legacy branch (supported until February 2026) | deprecated, security updates only [3] Choose the Branch with it's number [1/2/3]

我们输入1然后按回车,选择稳定版本

安装完成后,如果没有出错,稍等片刻,我们就可以在浏览器中打开Web后台

mail.pypig.com/admin

注意 mail.pypig.com 是我的域名,你的后台要替换成你的域名 然后使用默认管理员用户名 admin 和默认密码 moohoo 登录

进入后台后,尽快点右上角的【系统】【配置】修改管理员 admin 的密码 然后点右上角的【E-Mail】【配置】【域名】【添加域名】,添加自己的域名,我的是 pypig.com,其中【

最大允许的邮箱数】可以根据你的需求设置多一点,比如 500 , 然后点【添加域名并重启】 然后切换到【邮箱】选项卡,点【添加邮箱】,我们添加一个名为 cfan 的用户

于是我们就创建了 cfan@pypig.com 这样一个邮箱地址,以此类推,我们可以创建无数个电子邮箱地址,也可以通过开发者API,用脚本批量创建无数个邮箱地址

那么怎么登录这个邮箱,查看里面的邮件内容呢?

我们打开邮箱登录页面:

mail.pypig.com

如果仍然是 admin 后台的话,需要先退出,或者使用 Chrome 的多用户功能或无痕窗口功能,另开一个 Chrome 窗口来登录

输入我们刚才创建的用户邮箱地址 cfan@pypig.com 和创建用户时设置的密码,点登录

就可以在这里收发邮件了,可以看到我们成功收到了 Steam 的注册邮件,说明此方法可以用来注册 Steam 账号

至于发送邮件的话,需要你的云服务器解锁25端口,阿里云和腾讯云默认是关闭的,需要填表申请解锁,或者选择其它没锁25端口的云服务商,因为我们的需求只接收邮件,不发送邮件,所以这里就不详细介绍了