最近换一下邮箱系统,从Extmail换成了Poste.io的mail系统,选它的原因是安装简单,功能满足,官网显示是能数据迁移的,因为我这边用不到就没迁,直接导出了旧邮箱账号密码,导入到了新邮箱系统中。
安装
1、CentOS 7 安装 docker
官网安装教程:https://docs.docker.com/engine/install/centos/#install-using-the-repository
$ sudo yum install -y yum-utils $ sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo $ sudo yum install docker-ce docker-ce-cli containerd.io
2、安装邮箱,直接docker一条命令就搞定,这是我看中的地方(you-domain换成你们自己的域名)
官网文档:https://www.poste.io/doc/
docker run -d -p 25:25 -p 81:80 -p 110:110 -p 143:143 -p 444:443 -p 587:587 -p 993:993 -p 995:995 -v /etc/localtime:/etc/localtime:ro -v /home/mail/data:/data -v /home/www/mail.you-domain.com/.well-known:/opt/www//.well-known --name "PosteServ" -h "mail.you-domain.com" -t analogic/poste.io
注:我这边是在宿主机上有站点,所以WEB端口(80、443)我不能直接映射,改为了(81、444)然后用nginx里反向代理。
遇到的问题
1、管理员邮箱收到主题为“Cron <root@mail> /bin/freshclam --quiet”的邮件
答:重启docker服务 systemctl restart docker
2、邮件系统能收外域邮件,只能发本地邮件不能发外域邮件
答:检查所在服务器25端口出的开放情况,telnet ***** 25 或 邮箱后台有自检程序
3、邮箱队列中大量yahoo、aol邮件发不出去
答:联系服务器机房增加域名反向解析(PTR),如果已经有反向解析了,可能就是某个固定主题或邮件发的太多太频被拒了,可以尝试改改主题。
4、邮箱添加转发后无法收件,来信停在队列中
答:检查server.ini里面的brand_name,不要写中文
5、收到退信显示在使用的urbl.hostedemail.com黑名单中
答:在https://fbl.returnpath.net上填个FBL的申请表
未完待续……
附:
1、nginx反向代理配置
server { listen 80; server_name mail.you-domain.com; location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:81; } location /.well-known { alias /home/www/mail.you-domain.com/.well-known; } } server { listen 443 ssl; server_name mail.you-domain.com; ssl_certificate /home/mail/data/ssl/server.crt; ssl_certificate_key /home/mail/data/ssl/server.key; location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass https://127.0.0.1:444; } location /.well-known { alias /home/www/mail.you-domain.com/.well-known; } }
2、多IP服务器,轮流指定出口IP
iptables -t nat -I POSTROUTING -m state --state NEW -s 172.17.0.2/32 -o enp2s0 -m statistic --mode nth --every 5 --packet 0 -j SNAT --to-source 1**.*5.*.*2 iptables -t nat -I POSTROUTING -m state --state NEW -s 172.17.0.2/32 -o enp2s0 -m statistic --mode nth --every 4 --packet 0 -j SNAT --to-source 1**.*5.*.*3 iptables -t nat -I POSTROUTING -m state --state NEW -s 172.17.0.2/32 -o enp2s0 -m statistic --mode nth --every 3 --packet 0 -j SNAT --to-source 1**.*5.*.*4 iptables -t nat -I POSTROUTING -m state --state NEW -s 172.17.0.2/32 -o enp2s0 -m statistic --mode nth --every 2 --packet 0 -j SNAT --to-source 1**.*5.*.*5 iptables -t nat -I POSTROUTING -m state --state NEW -s 172.17.0.2/32 -o enp2s0 -m statistic --mode nth --every 1 --packet 0 -j SNAT --to-source 1**.*5.*.*6
3、邮件服务器黑名单自查网站
https://mxtoolbox.com/blacklists.aspx
4、SPF记录检查工具
https://www.kitterman.com/spf/validate.html?
5、检查域名MX、PTR等记录方法
windows: nslookup -q=mx you-domain.com nslookup -q=ptr 123.123.123.123 linux: nslookup -query=mx you-domain.com ……
6、检查指定容器出口IP方法
docker exec PosteServ curl ip.me
相关文章