Maddy是一款用Go语言开发的邮件服务器,它实现了运行电子邮件服务器所需的所有功能。Maddy用一个具有统一配置和最低维护成本的守护进程取代了Postfix、Dovecot、OpenDKIM、OpenSPF、OpenDMARC等
Maddy 是一款用 Go 语言开发的邮件服务器,它实现了运行****服务器所需的所有功能。
Maddy 用一个具有统一配置和最低维护成本的守护进程取代了 Postfix、Dovecot、OpenDKIM、OpenSPF、OpenDMARC 等程序。
通俗点讲就是部署特别方便, 资源占用少,非常适合个人使用的****服务器。
预置条件
检查 25 端口是否开放
telnet smtp.aol.com 25
部署步骤
1. 创建 docker volume
docker volume create maddydata
2. 创建 tls 证书
申请证书的步骤略过,将证书 copy 并重名为tls_key.pem和tls_cert.pem到 volume 目录
复制成功
# docker volume 目录
cd $(docker volume inspect maddydata --format '{{.Mountpoint}}')
# 拷贝并重命名证书到当前目录
cp /etc/letsencrypt/live/mx1.example.org/cert.pem tls_cert.pem
cp /etc/letsencrypt/live/mx1.example.org/privkey.pem tls_key.pem
3. 设置 hostname 和 domainname
export MADDY_HOSTNAME=mx1.example.org
export MADDY_DOMAIN=example.org
4. 创建 maddy 实例
4.1 使用 docker 创建
docker run -d --name maddy \
-e MADDY_HOSTNAME=$MADDY_HOSTNAME -e MADDY_DOMAIN=$MADDY_DOMAIN \
-v maddydata:/data \
-p 25:25 -p 143:143 -p 465:465 -p 587:587 -p 993:993 \
enwaiax/maddy:latest
4.2 使用 docker-compose 创建
mkdir maddy && cd maddy
wget https://raw.githubusercontent.com/Chasing66/beautiful_docker/main/maddy/docker-compose.yml
docker-compose up -d
5. 配置 DNS 记录解析
# A记录
example.org A 10.2.3.4
example.org AAAA 2001:beef::1
# MX记录
example.org MX mx1.example.org.
# 同时最好配置mx1.example.org的A记录
mx1.example.org A 10.2.3.4
mx1.example.org AAAA 2001:beef::1
# SPF
example.org TXT "v=spf1 mx ~all"
mx1.example.org TXT "v=spf1 mx ~all"
# _dmarc
_dmarc.example.org TXT "v=DMARC1; p=quarantine; ruf=mailto:postmaster@example.org"
# _mta-sts,_smtp.tls
_mta-sts.example.org TXT "v=STSv1; id=1"
_smtp._tls.example.org TXT "v=TLSRPTv1;rua=mailto:postmaster@example.org"
# _dmarc
cd $(docker volume inspect maddydata --format '{{.Mountpoint}}')
cat dkim_keys/*.dns
default._domainkey.example.org TXT "v=DKIM1; k=ed25519; p=nAcUUozPlhc4VPhp7hZl+owES7j7OlEv0laaDEDBAqg="
6. 创建邮件发送账户
docker exec -it maddy sh
maddyctl creds create postmaster@example.org
maddyctl imap-acct create postmaster@example.org
备份
所有数据挂载在 volume 中,volum 路径为:
$ docker volume inspect maddydata --format '{{.Mountpoint}}'
/var/lib/docker/volumes/maddydata/_data
$ cd /var/lib/docker/volumes/maddydata/_data
备份该目录即可
原文来自hostprefer
创业项目群,学习操作 18个小项目,添加 微信:niuben22 备注:小项目!
本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.35chat.cn/56070.html
如若转载,请注明出处:https://www.35chat.cn/56070.html