正在查看旧版本。 查看 当前版本.

与当前比较 查看页面历史记录

版本 1 下一个 »

简介

Maddy 是一款用 Go 语言开发的邮件服务器,部署方便,资源占用少,是一款适合个人使用的邮箱服务器。 即使是 CloudCone 1C1G 机 docker 搭建后查看容器,CPU 使用 0.03%,内存使用 20M, 跑起来毫无压力。

准备内容

  • 一台 VPS,支持开启 25 (telnet smtp.qq.com 25) 端口和 rDNS
  • 一个域名,支持管理 A/AAAA 记录、MX 记录、TXT 记录等
  • 邮箱域名的证书和密钥(使用 Certbot 申请)

caddy.yml

version: "3.8"
services:
  maddy:
    image: foxcpp/maddy:0.8.1
    container_name: maddy
    restart: always
    ports:
      - 25:25
      - 143:143
      - 587:587
      - 465:465
      - 993:993
    volumes:
      - ${APP_CONF}/maddy:/data
      - ${APP_CONF}/certbot/config/live/mail.example.com/fullchain.pem:/data/local_certs/cert.pem:ro
      - ${APP_CONF}/certbot/config/live/mail.example.com/privkey.pem:/data/local_certs/key.pem:ro
    environment:
      - TZ=Asia/Shanghai
      - MADDY_HOSTNAME=mail.example.com
      - MADDY_DOMAIN=example.com


# VARIABLE=value #comment

WEB_ROOT=/var/www/html

APP_CONF=/opt/docker/data

APP_DATA=/opt/appdata

端口说明

PortUsageSecurityNote
25SMTP MTAPLAIN/TLS用于接收和发送邮件
143IMAPSTARTTLS收信,tls://imap.example.com:143
993IMAPTLSssl://imap.example.com:993
587SMTP MTASTARTTLS发信,tls://smtp.example.com:587
465SMTP SubmissionTLSssl://smtp.example.com:465

TLS 通常比 SSL 更安全,且是现代通信中偏好的选项。

  • 使用 ssl://,意味着将以 SSL 直接加密整个连接。
  • 使用 tls://,则通常是在初始连接时使用普通的明文连接,然后通过 STARTTLS 命令将其升级为加密连接。

建议尽可能使用 tls://,因其安全性更高且是当前的标准。如果您的邮件服务器支持 TLS,通常优先考虑它。

获取 TLS 证书

# Ubuntu/Debian
sudo apt-get install certbot

# Centos
sudo yum install certbot
certbot certonly --standalone -d mail.example.com

按照提示操作,将获得证书和私钥,存储在 /etc/letsencrypt/live/mail.example.com/ 目录下。

配置 maddy

参考 https://github.com/foxcpp/maddy/blob/master/maddy.conf,文件内容见附件maddy.conf


  • 无标签