侧边栏壁纸
  • 累计撰写 28 篇文章
  • 累计创建 12 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Ubuntu 24.04搭建自己的个人邮件服务器

Ywxmz
2025-08-02 / 0 评论 / 0 点赞 / 13 阅读 / 0 字

1.前言

MailCow:Dockerized 是一个基于 Docker 的开源群件/电子邮件套件。MailCow 依赖于许多众所周知且长期使用的组件,这些组件结合起来形成了一个全方位的无忧无虑的电子邮件服务器。MailCow 主要支持图形 Web 界面,即 mailcow UI。它为几乎所有设置提供了一个地方,只需点击几下即可轻松创建新域和电子邮件地址。

但也可以在其中轻松完成其他或更棘手的任务:

  • DKIMARC 支持/生成。

  • 每个域和每个用户的黑白名单。

  • 每个用户的垃圾邮件评分管理(拒绝垃圾邮件、标记垃圾邮件、灰名单)。

  • 允许邮箱用户创建临时垃圾邮件别名

  • 将电子邮件标签添加到主题或将电子邮件移动到子文件夹(每个用户)

  • 允许邮箱用户切换入站和出站邮件的 TLS 强制实施

  • 用户可以重置 SOGo ActiveSync 设备上的缓存

  • 用于定期迁移或检索远程邮箱的 IMAPSYNC

  • TFA:Yubikey OTP 和 WebAuthn USB(仅限 Google Chrome 及其衍生产品),TOTP

  • 添加白名单主机以将邮件转发到 mailcow

  • 类似 Fail2ban 的集成

  • 检疫系统

  • 防病毒扫描,包括 Office 文档中的宏扫描

  • 集成基础监控

  • 还有更多...

2.准备工作

(1).必要资源

必要条件,缺少或低于必要条件将影响搭建。

(1).一个至少处理器不小于2核、内存不低于4G、硬盘大于40G的服务器。

(2).一个.net或者.com或者.cn或者其他比较常见后缀的域名。

(3).[最好满足此项]服务器服务商处设置RDNS记录。(极大提高进箱率,Q*邮箱此类不按套路出牌的邮箱除外)

(2).操作

设置基本记录:

示例当中使用的域名说明

主域名为:everyonetrust.com

邮件域名为:rakmail.everyonetrust.com(建议使用:mail.主域名,此域名建议在服务商处做RDNS)

发件域名为:qiye.everyonetrust.cn

①在服务商处将你的邮件域名添加A记录指向你的服务器IP

FABBD1A7-C50F-4FA4-AB59-798B0D821B88.png

②将你的发件域名做MX记录,指向邮件域名

E4032244-E6CF-482D-BE14-597223DBA72A.png

③设置SMTP、POP、IMAP域名[可选]

将smtp.rakmail.everyonetrust.com、imap.rakmail.everyonetrust.com、pop.rakmail.everyonetrust.com全部使用CNAME解析,将域名解析到你的邮件域名。

(3).Ubuntu安装Docker

请参阅:Ubuntu安装最新版Docker并配置加速

(4).开放必要端口

建议开放以下TCP端口:25、110、143、465、587、993、995

(5).关闭SELinux

请参考:查看SELinux状态及关闭SELinux

(6).安装Git

apt install git -y

3.开始安装

(1).克隆存储库的 master 分支

umask

运行后,确保输出结果为0022

(2).进入opt目录

cd /opt

(3).通过Git获取

git clone https://github.com/mailcow/mailcow-dockerized

(4).进入mailcow-dockerized目录

cd mailcow-dockerized

(5).初始化

./generate_config.sh

此处需要设置域名,可以设置为你的邮件域名,时区可以使用Asia/Shanghai,分支选择1。

28926024-CDEB-4D5D-8F3E-EB34B61E3D47.png

(6).编辑配置

如果有需要,可以自己编辑相关的配置文件

vim mailcow.conf

vim docker-compose.yml

(7).启动

#Docker compose(插件启动)

docker compose pull
docker compose up -d

#Docker-compose(独立启动)
docker-compose pull
docker-compose up -d

(8).登录

访问:https://邮件域名/admin

即可配置你的邮件服务器,登录账号为:admin,密码为:moohoo

4.配置服务

(1).修改管理员密码

B6A40D6D-602D-4C6E-B324-444364B83EEB.png

7E352FF2-80AE-495B-9ED3-E379B2FC2CCB.png

(2).添加域名

在导航栏中选择【E-Mail】-【配置】

F3C5A787-274B-4822-B52E-427927ACAE2E.png

然后选择【添加域名】

63D22DBA-65C2-458F-9643-C88820480AC3.png

然后填入你的发件域名,然后根据自己的需要配置,然后选择【添加域名并重启】

48A736EB-9E63-4E92-9465-B83A44F6BB38.png

(3).配置域名DNS相关记录

我们需要为发件域名配置以下信息,并指向正确的记录。

①获取域名的相关记录

在刚刚的域名页面,找到对应域名的【DNS】

0ECC0A68-8E7F-4430-92C5-D30B2067C147.png

然后就能够找到域名需要配置的一些DNS信息。

其中SPF记录和DMARC记录需要我们根据实际创建。

ACB8F4B3-3082-4736-80D0-B15BC90AC891.png

②必要解析

你可以根据下方表格进行解析。

注意:需要切换为你自己的相关域名。

主机记录

类型

域名

记录值

备注

qiye

TXT

everyonetrust.cn

v=spf1 ip4:XXXX.XXXX.XXXX.XXXX ~all

XXXX.XXXX.XXXX.XXXX替换为你的服务器IP地址

dkim._domainkey.qiye

TXT

everyonetrust.cn

v=DKIM;k=rsa········

上面你获取到的DNS

_dmarc.qiye

TXT

eeveryonetrust.cn

v=DMARC1; p=quarantine; rua=mailto:dmarc@qiye.everyonetrust.cn; ruf=mailto:dmarc@qiye.everyonetrust.cn

注意:你需要根据你的域名,记得创建一个dmarc@发件域名,的邮箱。

然后建议再做个记录是CNAME记录

qiye

CNAME

everyonetrust.cn

rakmail.everyonetrust.com

到此,解析基本上就已经完成了。

关于SPF更多配置详见:SPF Record Syntax

关于DMARC更多配置详见:DMARC Record Assistant

③创建必要邮箱

C158BFA6-2018-44F6-8FAB-DAC534EC3A80.png

然后设置必要信息,点击添加。

17049BE3-C78C-48E3-A77E-189D4F983538.png

这里建议创建admin邮箱和你在记录中设置的dmarc邮箱。

④SSL证书配置

自带的ACME将会自动为域名配置申请Let's Encrypt的SSL证书,当然,如果你想自主配置更多SSL证书,可以参见MailCow的官方文档:Advanced SSL

也可以使用自己的证书,不过稍微比较麻烦,可以参见上面的官方文档。在该页面的文档里都有详细的介绍如何部署和使用。

0

评论区