文章目录[隐藏]
最近去尝试把自己的服务器应用都部署到docker,就尝试把宝塔邮箱去掉改成Poste.io!感觉还挺不错的!基本能用到的功能都用到了!
视频教程
- B站
- Youtube
hostname设置
假设host_name为mx.emperinter.info
sudo hostnamectl set-hostname mx.emperinter.info
hostname # 查看是否设置成功
域名解析
255.255.255.255 为服务器IP
主机记录 | 记录类型 | 记录值 |
---|---|---|
mx | A | 255.255.255.255 |
smtp | CNAME | mx.emperinter.info |
pop | CNAME | mx.emperinter.info |
imap | CNAME | mx.emperinter.info |
@ | MX | mx.emperinter.info |
@ | TXT | v=spf1 mx ~all |
s20191223631._domainkey 【先不配置这个,后面生成再配置,记录也是生成的】 | TXT | 后面配置生成,到时候来解析配置! |
开放端口
我用的是centos,我是被端口给绕晕了,自己配置按实际情况配置!这一步骤仅供参考!25端口在阿里云等等是被封禁的,可以尝试去申请试试,我之前尝试没开通!还有是否有安全组等等要打开!
# 安装
yum install firewalld
# 开机启动
systemctl enable firewalld
# 启动
systemctl start firewalld
# 添加端口
firewall-cmd --zone=public --add-port=25/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --zone=public --add-port=110/tcp --permanent
firewall-cmd --zone=public --add-port=143/tcp --permanent
firewall-cmd --zone=public --add-port=587/tcp --permanent
firewall-cmd --zone=public --add-port=993/tcp --permanent
firewall-cmd --zone=public --add-port=995/tcp --permanent
# 重启生效?
firewall-cmd --reload
# 查询是否开启端口
firewall-cmd --query-port=80/tcp
安装docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
sudo usermod -aG docker your-user #注意替换为你的配置
systemctl restart docker
Poste.io 安装
- 配置数据目录
mkdir /home/mail
- 安装
docker run \
-p 25:25 \
-p 80:80 \
-p 110:110 \
-p 143:143 \
-p 443:443 \
-p 587:587 \
-p 993:993 \
-p 995:995 \
-v /etc/localtime:/etc/localtime:ro \
-v /home/mail:/data \
--name "PosteServer" \
-h "mx.emperinter.info" \
-t analogic/poste.io
- 这两天(2021-05-11)总出问题就更新了一下,发现官方升级了,以往的启动不能后台运行【也有可能不是第一次安装,已经有数据文件导致的,看官网教教程https://poste.io/open差不多还是上面那个启动语句】。下面这个后台倒是运行但不能退出,一退出就只能重启了还好文件不会发生变化,都可以试试,有好的方法欢迎留言。
docker run -d \
--restart always \
-p 25:25 \
-p 80:80 \
-p 110:110 \
-p 143:143 \
-p 443:443 \
-p 587:587 \
-p 993:993 \
-p 995:995 \
-v /etc/localtime:/etc/localtime:ro \
-v /home/mail:/data \
--name "PosteServer" \
-h "mx.emperinter.info" \
-t analogic/poste.io
若遇到端口占用的情况,请注意查杀进程
lsof -i:25
kill -15 process_id
- 安装后启动
docker start PosteServ
配置
创建管理员账户
- 登陆后台
输入你的域名地址
https://mx.emperinter.info
就行!
- 设置管理员账号和密码
其他设置
地址
https://mx.emperinter.info/admin/login
,用你创建的管理员账号和密码登陆!
创建dkim密钥
Virtual domains -> emperinter.info【你的一级域名】
- 点击 create new key,生成key
- 把得到的值放到我们之前说的解析那里【如下】
主机记录 | 记录类型 | 记录值 |
---|---|---|
s20210221288._domainkey | TXT | k=rsa; p=MIIBIjANBgkqhk.........CuXNhz7TwI |
开启SSL
- 注意Common name替换成你的hostname【域名地址】,后面的imap等等填写自己上面配置的!
检测端口是否正常!
依次点击Server status -> Connections Diagnostics即可!
添加用户
邮件界面中文化
登陆普通域名地址
https://mx.emperinter.info
【非admin】配置即可,其他就自己去玩吧!
客户端使用
就说一个SMTP的端口填587,SSL配置
-
收件服务器【IMAP】
选项 填写 EMAIL 你的邮箱 密码 你的邮箱密码 服务器【Host Name】 mx.emperinter.info 端口【Port Number】 993 Security SSL -
寄件服务器【IMAP】
选项 填写 EMAIL 你的邮箱 密码 你的邮箱密码 服务器【Host Name】 mx.emperinter.info 端口【Port Number】 587
Security SSL 【我手机开启连不上,Ipad可以,具体自己选择】
很好的教程,可以写一篇 dirtsimple/poste.io 的教程吗?
再试试吧!我这貌似发过去的邮件被QQ邮箱给拦截了,如果后续还会看这个教程希望换个邮件试试吧!
🤦♂️咋想到用这个东西的呢?https://github.com/dirtsimple/poste.io 这里看了一下就多了IP和插件的配置可选项,貌似要自己配置DockerFile文件,个人用户不建议使用,配置有点麻烦。