在 Proxmox VE 下部署 iRedMail 邮件服务器并使用 Thunderbird 收发邮件
前言
邮箱,即使在国内完全不会用在社交用途下,但也基本是每个网民都会注册的东西。国内最常见的公共邮箱提供商:QQ 邮箱、163 邮箱等,以及常见的国际公共邮箱提供商:Gmail、Outlook 等。
对于企业、团队、个人工作室等,拥有一个自定义域邮箱可以更加专业、彰显个性、完全掌控邮件系统与数据,自定义邮局的好处:
- 强化辨识度:用自定义域邮局代替公共邮局,可以为企业反复曝光品牌,提升专业感与可信度。
- 为个人工作室彰显个性。
- 可以为各个部门分配专门的邮箱,方便分工。
- 数据完全由自己管理,可以无数量限制群发邮件。
自定义域邮局也会有诸多限制:
- 部署和维护成本过大:配置自定义域邮局需要设置DNS、SSL、SMTP、IMAP、SPF、DKIM、DMARC 等多项配置。
- 云服务商限制:由于自定义域邮局可以无限制发件,极易带来 Abuse 问题,部分云服务提供商会直接屏蔽 25 端口(阿里云、腾讯云),同时自定义域名邮局部署需要配置 PTR,云服务商若提供 RDNS 服务还需要租用或者自搭建权威 DNS 服务,对于极易引发 Abuse 问题的邮箱服务来说,小规模的云服务商直接不提供 RDNS 服务。
- IP 要求严格:同样由于自定义域邮局极易带来的Abuse 问题,导致不少 IP 被列入公共邮箱提供商的黑名单,即使自定义邮局部署完成,发出的邮件也会被扔进垃圾箱甚至拒收。
- 需要持续的维护:自部署邮局意味着数据完全由自己掌控,所以一切的更新、维护、备份均需要自己亲自进行,一旦域名忘记续费,或者数据库损坏等,会直接导致自定义邮局注册的各种服务后续无法接收邮件,比如最常见的用邮箱重置密码等。
一些公共邮箱提供商也会提供自定义域名邮箱服务,比如Google Workspace、Microsoft 365、Amazon WorkMail等,对于有自定义域名邮局需求的,对数据隐私不敏感的,优先还是托管给公共邮局提供商更适合,公有云比私有云稳定可靠太多了。
自定义域邮局部署过程
前置条件
域名:作者下文将使用自己的博客域名(mail.gaorkang.cn)来完成自定义域名的部署,域名解析托管在华为云。
开放 25 端口和提供 PTR 设置的云服务器:国内云服务商对 25 端口基本都做了限制,作者使用 Hetzner 的一个拍卖机作为邮箱服务器,因为服务器位于德国,加上.cn的域名无法解析到 cloudflare,所以国内访问注定不会快,同时会暴露源 IPv4。
Proxmox VE 网络配置
作者目前使用的 Hetzner 拍卖机仅分配了一个公网 IPv4 地址和一个 /64 段的 IPv6 子网。
虽然 Hetzner 支持为 IPv6 地址配置 RDNS(反向解析),理论上完全可以使用 IPv6 来部署邮件服务器,但考虑到当前全球范围内 IPv6 的实际普及程度,最终还是选择以 IPv4 来部署邮局服务器。
Hetzner 的拍卖机,作为一台独立服务器,肯定不会只用来部署邮局,只能宿主机安装Proxmox VE,然后在 PVE 中安装虚拟机来部署各个服务,但是考虑到只有一个 ipv4,只能通过 NAT 转发(iptables DNAT) 的方式将iRedMail 需要使用的端口映射到宿主机,实现邮局的正常工作。
Hetzner 宿主机基础的网络拓扑:
1 | [公网] ↔ [宿主机 eno1 (192.0.2.10)] |
iRedMail 官方文档详细列出了所需端口,参考:iRedMail Network Ports
但是真的需要在公网中开放的端口:
邮件相关
| 端口 | 协议 | 服务 | 说明 |
|---|---|---|---|
| 25 | TCP | SMTP | 邮件传输(对外收发邮件) |
| 587 | TCP | Submission (SMTP AUTH) | 客户端(Thunderbird)发信用 |
| 465 | TCP | SMTPS | 加密的邮件提交端口(部分客户端仍用) |
| 143 | TCP | IMAP | 邮件读取(未加密) |
| 993 | TCP | IMAPS | 加密的邮件读取 |
| 110 | TCP | POP3 | 邮件下载(未加密) |
| 995 | TCP | POP3S | 加密的邮件下载 |
Web 服务相关
| 端口 | 协议 | 服务 | 说明 |
|---|---|---|---|
| 80 | TCP | HTTP | iRedAdmin、Roundcube 初始访问,通常重定向到 HTTPS |
| 443 | TCP | HTTPS | Webmail (Roundcube)、iRedAdmin 管理后台 |
邮件相关端口通过 iptables DNAT 转发映射至虚拟机,Web 相关端口则通过宿主机 Nginx 反向代理 实现。
那么 PVE 的网络配置文件如下:
1 | # network interface settings; autogenerated |
部署 iRedMail 邮件系统
截止到作者部署iRedMail时版本号为1.74,还不支持最新的Debian 13,在PVE里新建好Debian 13虚拟机安装iRedMail会报错,本想修改Debian的版本号强制安装在Debian 13上,但是社区里有人反馈强制安装后Dovecot组件会报错,只好重新部署一遍Debian 12虚拟机。
iRedMail官方安装文档已经很详细了,地址:链接

设置完整域名(FQDN)的主机名
在安装 Debian 虚拟机 时,安装向导会提示输入 hostname(主机名)。
这里直接填写为 mail,例如:
1 | Hostname: mail |
如果在安装时未填写或想修改,也可以在系统安装完成后手动编辑主机名文件:
1 | nano /etc/hostname |
修改为:
1 |

验证主机名:
1 | $ hostname |
在 /etc/hosts 文件中定义主机名与 IP 地址的对应关系:
1 | 10.0.0.233 mail.gaorkang.cn mail |
验证主机全名(FQDN):
输入以下命令确认主机名解析是否正确:
1 | root@mail:~# hostname -f |

下载和安装 iRedMail
iRedMail 官网下载链接:地址
在服务器 Shell 中执行以下命令拉取安装包(以 1.7.4 为例):
1 | wget https://github.com/iredmail/iRedMail/archive/refs/tags/1.7.4.tar.gz |
解压缩:
1 | cd /root/ |
进入解压后的目录并启动安装程序:
1 | cd /root/iRedMail-1.7.4 |
使用FinalShell这个shell工具的话,在安装iRedMail时会显示不完整,可以更换一个其他的shell软件来完成安装。

安装过程:
欢迎界面与使用条款
直接按Enter键继续。
选择邮件存储路径
默认路径为/var/vmail/,一般保持默认即可。
选择账户存储数据库类型
可选择:OpenLDAPMariaDBPostgreSQL
根据自身熟悉的数据库类型进行选择。

设置数据库管理员密码

添加第一个邮件域名
这里应填写你的顶级域名(例如gaorkang.cn),
不要使用主机名(如mail.gaorkang.cn)。
设置 Webmail 与 iRedAdmin 管理后台登录密码

选择需要安装的组件
安装程序会列出可选服务组件(如 Roundcube、SOGo、Fail2ban 等)。
确认安装
检查无误后输入y并回车开始安装。
安装完成后,所有设置的密码,后台等地址以及系统生成的DKIM 记录,都会保存在/root/iRedMail-1.7.4/iRedMail.tips 里
配置 DNS 记录
A 记录
1 | NAME TTL TYPE DATA |
在华为云域名解析管理中将mail.gaorkang.cn 指向 Hetzner 宿主机的公网 IPv4 地址,用于访问 iRedMail 的后台,以及 STMP 服务器地址等。

反向 PTR 记录
反向 PTR 是和 A 记录相反的记录,需要去云服务商处设置,在 Hetzner 后台中 ipv4 里添加 mail.gaorkang.cn 的反向记录。

MX 记录
1 | NAME PRIORITY TYPE DATA |
该记录的最终结果是,发送到的电子邮件[user]@gaorkang.cn将被传送到服务器mail.gaorkang.cn。

autodiscover 记录
1 | NAME PRIORITY TYPE DATA |
在某些客户端(Thunderbird)配置收发信服务时,可以自动识别和配置服务器。华为云 DNS解析不支持域名,记录 mail.garkang.cn的 A 记录 IP 地址即可。


SPF 记录
SPF 是一种反垃圾邮件和网络钓鱼方法,它使用 DNS SPF 记录来定义哪些主机有权为某个域名发送电子邮件。
1 | gaorkang.cn. 3600 IN TXT "v=spf1 mx -all" |

DKIM 记录
DKIM(DomainKeys Identified Mail)通过给邮件加密签名来验证邮件是否被篡改、是否确实来自你的域名。
系统会自动生成一对密钥,公钥发布在 DNS,私钥存放在服务器中。
在 iRedMail 虚拟机 Shell 里输入以下命令可查看公钥:
1 | amavisd showkeys |
或在安装日志文件 /root/iRedMail-1.7.4/iRedMail.tips 中查找。
华为云 DNS 不允许单条 TXT 记录超过 255 个字符,请保持引号和空格格式,不要换行。
1 | root@mail:~# amavisd showkeys |

DMARC 记录
DMARC 严重依赖 SPF 和 DKIM 记录,当收件服务器收到邮件时,它会检查 SPF、DKIM 的验证结果,然后根据你在 DNS 上配置的 DMARC 策略来决定:接受、隔离、拒绝。
1 | "v=DMARC1; p=quarantine; rua=mailto:dmarc@gaorkang.cn" |

注册Google Postmaster Tools
根据 iRedMail 文档,这是可选的但是强烈建议,操作很简单,在Google Postmaster Tools 网站,添加下邮件域名就好。
作用:给你的邮局加上 Gmail 官方的“送信监控面板”,能看到发信健康度、信誉、垃圾率等核心指标。

宿主机反向代理
在完成 iRedMail 安装和 DNS 解析配置后,为了让公网可以正常访问邮件系统的 Web 界面(Roundcube、iRedAdmin、SOGo 等),需要在 Proxmox VE 宿主机 上安装 Nginx 并通过 ACME 申请 SSL 证书,实现反向代理。
安装 nginx、acme
1 | apt update |
1 | curl https://get.acme.sh | sh |
通过 Acme 申请域名证书
申请证书
1 | ~/.acme.sh/acme.sh --issue -d mail.gaorkang.cn --standalone |
安装证书到 Nginx 目录
1 | ~/.acme.sh/acme.sh --install-cert -d mail.gaorkang.cn \ |
配置 Nginx
在 /etc/nginx/conf.d/ 下创建 mail.conf 文件:
1 | server { |
检查Nginx文件是否正确:
1 | nginx -t |
重新加载Nginx:
1 | systemctl reload nginx |
完成后,公网访问 https://mail.gaorkang.cn/ 就可以通过 Nginx 反向代理访问 iRedMail 的各个 Web 界面,同时启用 HTTPS 加密。
iRedMail配置验证
1.验证DNS 配置是否正确
可以通过访问 MXToolbox SuperTool 网站,输入自己的邮箱域名(例如 mail.gaorkang.cn),即可快速检测邮箱相关的 DNS 记录 是否配置正确,包括:
- MX(邮件交换)记录
- SPF、DKIM、DMARC 等邮件验证记录
- Autodiscover / Autoconfig 自动配置记录
该工具会自动分析并给出详细的检测结果,方便排查配置错误。

2.检测公网是否可以访问iRedAdmin、Roundcube、SOGo
iRedAdmin 是 iRedMail 自带的 Web 管理后台,用于对邮件系统进行可视化管理。
域名路径: https://mail.gaorkang.cn/iredadmin/
Roundcube Webmail
Roundcube 是一个基于 PHP 开发的网页邮件客户端,用于让普通用户通过浏览器直接收发邮件,不过功能略单一。
域名路径:https://mail.gaorkang.cn/mail/
SOGo Groupware
SOGo 是一个功能强大的 Web 协作平台,除了可以用作 Webmail,还支持邮件、日历、联系人三合一、任务与会议日程管理、兼容 ActiveSync 协议,可与手机原生“邮件/日历/联系人”同步、支持 Outlook、Thunderbird、iOS、Android 等客户端同步,无限接近 Outlook 的工作流。
域名路径:https://mail.gaorkang.cn/SOGo/

3.给常用的公共邮箱发信测试
QQ 邮箱
QQ邮箱算是国内使用很多的了,而且据说 QQ 邮箱审核也比较严格,加上本身部署就在境外的 IP 上,可能会被拦截进垃圾箱。不过实测下来,QQ 邮箱收件正常。

Outlook
微软邮箱审核也是出名的严格,很多自部署域名邮箱,都会被拒收,DNS 配置正确,实测也没问题。

Gmail
Gmail审核策略还是相对来说比较宽松的,DNS 配置正确基本不会退信。

iRedMail使用
Web 使用
在安装完iRedMail 后,系统会生成一个管理员账号,通常是postmaster加域名地址,这个管理员账号既可以作为一个正常邮箱账户,也是iRedAdmin 后台的管理员。
通过该账号登录 iRedAdmin 管理后台,即可执行以下操作:
- 创建、删除、禁用邮箱账户
- 分配邮箱存储容量(配额)
- 管理域名与别名邮箱
- 查看系统运行状态与日志
创建完成邮箱账户后,用户即可通过 Roundcube Webmail 面板或 SOGo Groupware 面板来登录使用,实现邮件收发与协作。

搭配Thunderbird 使用
Thunderbird 是由 Mozilla 基金会 开发的一款免费、开源的电子邮件客户端,支持 Windows、macOS、Linux、iOS、Android 等多个平台。它以 安全、高效与可扩展性 著称,为用户提供完善的邮件管理解决方案。
只要在域名的 DNS 中正确配置 autodiscover 记录,Thunderbird 在设置邮箱账户时就会自动检测并配置服务器参数。
用户只需输入 邮箱地址和密码,即可快速完成账户配置

总结
以上就是自部署邮件服务器的全过程啦,自建邮件服务器虽能完全掌控数据、自由收发邮件,但部署与维护成本高,对P 要求严格。如果只是日常使用,还是选择选择公共邮箱的自定义域服务吧。

