搭建 EwoMail 邮件服务器

本文最后更新于:2022年7月4日 上午

EwoMail 是一款简单易用的邮件服务器,本文记录服务器配置方法。

EwoMail 简介

  • 基于Linux下的邮件服务器软件,安全稳定,无需专人维护
  • 基于Web现代化的邮箱管理后台、WebMail,无需安装任何客户端
  • 简单易用,支持多语言切换,详细的使用手册,容易上手
  • 官方网站:http://www.ewomail.com/

服务器配置方法

本文使用 docker 安装 EwoMail 服务器

安装 EwoMail 容器

  • docker-compose方式,配置文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
mail:
image: bestwu/ewomail
hostname: mail.zywvvd.com
container_name: ewomail
restart: always
ports:
- "25:25"
- "143:143"
- "587:587"
- "993:993"
- "109:109"
- "110:110"
- "465:465"
- "995:995"
- "80:80"
- "8080:8080"
volumes:
- ./mysql:/ewomail/mysql/data
- ./vmail:/ewomail/mail
- ./rainloop:/ewomail/www/rainloop/data
- ./ssl/certs/:/etc/ssl/certs/
- ./ssl/private/:/etc/ssl/private/
- ./ssl/dkim/:/ewomail/dkim/
  • 或直接安装容器:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
docker run  -d -h mail.zywvvd.com --restart=always \
-p 25:25 \
-p 109:109 \
-p 110:110 \
-p 143:143 \
-p 465:465 \
-p 587:587 \
-p 993:993 \
-p 995:995 \
-p 80:80 \
-p 8080:8080 \
-v `pwd`/mysql/:/ewomail/mysql/data/ \
-v `pwd`/vmail/:/ewomail/mail/ \
-v `pwd`/ssl/certs/:/etc/ssl/certs/ \
-v `pwd`/ssl/private/:/etc/ssl/private/ \
-v `pwd`/rainloop:/ewomail/www/rainloop/data \
-v `pwd`/ssl/dkim/:/ewomail/dkim/ \
--name ewomail bestwu/ewomail:latest

如果使用的是云服务器,记得把这些端口权限打开

  • 执行命令时需要将 mail.zywvvd.com 换成自己的邮件域名

  • 如果仅使用非加密连接开启 25 143 8080 80 端口就可以了

  • 可配置参数

    • MYSQL_ROOT_PASSWORD mysql数据库root密码,默认:mysql
    • MYSQL_MAIL_PASSWORD mysql数据库ewomail密码,默认:123456
    • URL 网站链接,后面不要加/线
    • WEBMAIL_URL 邮件系统链接,后面不要加/线
    • TITLE 用户邮统标题
    • COPYRIGHT 邮箱管理后台网站版权
    • ICP 邮箱管理后台网站备案号
    • LANGUAGE 语言选择,默认:zh_CN
  • 容器创建好后可以通过 IP:8080 端口访问邮箱管理后台

    • 默认用户: admin

    • 默认密码: ewomail123

  • Rainloop 管理端登录 IP?admin

    • 默认用户: admin

    • 默认密码: 12345

  • 用户登录 IP

配置防垃圾邮件

  • 在宿主机执行命令
1
docker exec ewomail amavisd showkeys
  • 以如下返回结果为例:

  • 需要配置相应DNS:

  • 在宿主机输入命令测试
1
2
$ docker exec ewomail amavisd testkeys
TESTING#1: dkim._domainkey.zywvvd.com => pass

如示例所示,返回 pass 即为成功

服务配置

DNS 配置
  • Web mail服务需要域名,并正确配置DNS

  • IP 换成服务器 IP
  • 域名使用自己的域名
后台配置
  • 在管理端配置地址

将域名改为自己的

  • 添加邮箱账户

  • 可以在邮箱列表中看到

  • 此时登录会报 域不允许 这个神奇的错误
  • 不必修改 hosts 文件,需要配置的是 rainloop
配置 Rainloop

登录 Rainloop 管理端

  • 添加域名,配置 imap 和 smtp 地址

  • 测试连接,绿色测试通过,有问题的话会用红色展示并提示错误

  • 随后可以在客户端登录

  • 然而此时收发邮件会报错,10024 端口连接被拒绝:

  • 还需要进入容器做一点修改:
1
docker exec -it ewomail bash
  • 修改文件 /etc/postfix/main.cf ,将带有 10024 的一行注释掉 (可以使用 vi 编辑器)

  • 在容器中重启 postfix 服务
1
2
3
[root@mail /]# service postfix restart
Shutting down postfix: [ OK ]
Starting postfix: [ OK ]

完成所有配置

测试

  • 给自己发邮件

  • 给外网发邮件

  • 外网回复邮件

参考资料


搭建 EwoMail 邮件服务器
https://www.zywvvd.com/notes/coding/internet/mail-server/ewomail/ewomail/
作者
Yiwei Zhang
发布于
2022年1月31日
许可协议