maliu - 基于docker的邮件服务器/搭建教程

in 技术分享 / 6 评论 / 2382阅读

Mailu是一个简单、免费且功能齐全的邮件服务器,是由多个Docker镜像组成的。Mailu易于安装、可移植性高、维护方便等优点,拥有管理页面以及拥有roundcube和rainloop两种开源webmail界面选择。

官网

https://mailu.io/

环境测试

安装前确保服务器的25端口是开放的,以及拥有Docker环境。可以通过以下命令判断25端口。

telnet smtp.aol.com 25

如果出现以下类似语句说明端口是开放的,如果超时,可查看商家是否支持开放25端口或更换商家

Trying 67.195.12.34...
Connected to smtp.aol.g03.yahoodns.net.
Escape character is '^]'.
220 smtp.mail.yahoo.com ESMTP ready

设置主机名

此处先空着,回头再补。

配置文件

mailu提供一个自动生成配置的网站,只需要按自己需求填写后即可生成配置文件,还是比较方便的。
地址:https://setup.mailu.io

第一步选择目前最新版本1.9和Docker系统。

mailu-docker

第二步配置域名、后台链接、发信证书和网页证书、网页配置信息和后台链接等。以下配置域名等需要按自己情况填写。

初始配置

第三步配置网页邮箱模板,看个人需求选择,个人更喜欢roundcube,不需要网页也可以选择none,以下三项分别是防病毒服务、webdav、邮件代收服务。

配置网页模板

第四步配置主机IP和主机名等,填写服务器公网IP,docker网络默认即可,主机名修改为服务器的主机名

配置服务器信息

最后一步选择数据库,我个人用选择sqlite就行了,如果用户量比较大可以选择mysql或postgresql。

数据库配置

填写好各项配置后点击最后按钮系统会生成配置文件,只要按照生成页面命令在服务器执行以上命令;最后一条命令是创建管理员账户,自己修改喜欢的用户名和密码,完成后再浏览器访问第二部配置的域名,登录就可以访问管理员面板或网页邮箱。

docker-compose -p mailu exec admin flask mailu admin admin[用户名] 61os.com[域名] PASSWORD[密码]

生成配置

DNS解析配置

最后登录邮箱后台,点击邮件域-域名最左边按钮详细信息,进入域名详细信息

域详细信息

右上角生成密钥后,根据生成的信息配置DNS记录

配置DNS

测试发件

最后可以使用mail-tester.com进行邮件测试,打开站点首页有个邮件,往可以邮箱发送测试邮件,发送邮件后等待一会儿点击查看邮件评分。
我的邮件可能写的比较简单,被扣1.9分,实际问题并不大,忽略就好了。另外个人域名邮件大概率会进outlook邮箱垃圾箱。

邮件测试评分

回复
  1. 龙猫

    如果是家宽应该如何设置这个主机名?

    回复
    1. 听风语星辰 / 作者
      @龙猫

      这个主机名是smtp、imap的地址,一般是mx.**.com或mail.**.com,家宽我也没试过...

      回复
      1. 龙猫
        @听风语星辰

        我试了一下午都无法访问管理界面,文档也看的云里雾里的。家宽是有公网地址的。理论上应该是可以的。

        回复
        1. 听风语星辰 / 作者
          @龙猫

          其他的都不重要,docker跑起来了吗

          回复
          1. 龙猫
            @听风语星辰

            跑起来了,但是两个容器不正常,我怀疑是nginx的问题。还有一个什么Admin is not up just yet, retrying in 1 second

            Dns什么的。我现在用axigen搭建了。收发都正常就是qq邮箱会放垃圾箱

          2. 听风语星辰 / 作者
            @听风语星辰

            那可能配置有问题。你可以用那个测试工具看看什么原因丢垃圾箱