云主机和 VPS 上安装 Winmail 邮件系统

[2023,4,17 更新]

基础知识

云主机:又称为云服务器,在一组集群主机上虚拟出多个主机。
VPS: Virtual Private Servers,又称为虚拟主机,在一台物理主机上虚拟出多个主机。
Dedicated Servers、Bare Metal: 又称为独立服务器、裸金属云服务器、云物理机,就是独享一台物理服务器的全部资源,一般价格比较高。
轻量应用服务器、Lightsail:相对云主机有些功能层面的限制,不能做自动快照或者有月度流量限制或者不能做 IP 反向解析,优势是价格低,要仔细了解限制。
对架设邮件系统来说基本是一样的操作,以下统称为云主机,有些云服务商出于预防被当作垃圾邮件来源地的目的,云主机屏蔽了邮件系统必须使用的对外访问 25 SMTP 端口,导致无法外发邮件, 购买云主机前一定要了解清楚,目前 阿里云 默认屏蔽了 25 端口且一般无法解封,和其他应用不同,邮件系统主机是需要直接访问外网 25 SMTP 端口发送邮件,需要双向开放 25 端口, 这个端口是标准的,修改后无法外发邮件,改成 587 和 465 也不行,这两个端口是邮件客户端使用的,80 也不行,必须使用 25。

适合架设邮件系统的云主机

1. 操作系统为 Windows 或者 Linux,可以远程登录、管理,可以自己安装软件;多种名称:ECS、弹性云主机、UHost、CVM、EC2、KVM VPS、Cloud Instance
2. 提供至少一个公网固定 IPv4 地址;多种名称:公网 IP 地址、弹性 IP 地址、Primary IP
3. 开放邮件相关端口,特别是对外的 25 SMTP 端口访问 (*详见备注1)
4. 最好可以做 IP 反向解析
另外需要至少一个正式注册的域名,不一定要在和云主机同一云平台购买,一般有公司有网站 www.***.***,应该就已经有域名 ***.*** 了。 国内推荐 阿里云腾讯云 购买域名, 国外推荐 GoDaddyName.comNamecheap 购买域名( 都支持支付宝 ) 。

国内外常用云主机 (只包含部分云平台信息,来源于我们测试和用户反馈,不是说其他云平台的云主机不能安装邮件服务器软件)

云平台商家 Win Linux 对外 25 端口访问 IP PTR 反向解析 自动备份 汇款方式 国内发票 推荐机房 特点
国内 华为云 默认开通 可自己设置 支付宝、微信、电汇 有海外主机
国内 优刻得 默认开通 联系客服设置 支付宝、微信、电汇 有海外主机
国内 京东云 默认开通 联系客服设置 微信、网银、电汇 仅国内主机
国内 腾讯云 提交工单开通 收费较高 微信、电汇 市场占有率高
国内 阿里云 [不推荐] 屏蔽无法开通 支付宝、电汇 市场占有率高
海外 BandwagonHOST 默认开通 可自己设置 支付宝、国际信用卡 CN2 GIA 平台稳定、知名度高
海外 GreenCloud 默认开通 联系客服设置 支付宝、国际信用卡 日本 价格低,支持 IPv6
海外 DediPath 提交工单开通 联系客服设置 支付宝、国际信用卡 美国 价格较低,流量不限
海外 AWS 亚马逊 提交工单开通 可自己设置 银联、国际信用卡 未知 日本、新加坡 国际市场占有率高
国内机房选择:选离使用本邮件系统多数邮箱用户近的,例如位于长三角的公司,优先选择上海、杭州机房;
海外机房选择:优先选择日本、新加坡、香港等亚洲机房,其次美国西海岸;BandwagonHOST 部分套餐可以迁机房;
海外机房线路选择:优先选择有大陆方向网络优化的线路,三网优质线路:CN2 GIA、AS9929、日本软银,次优:电信 CN2、联通 AS4837、移动 CMI;
海外商家主机带宽普遍 > 100M,同时免备案,比国内商家的海外主机性价比高,购买海外云主机,建议优先选择海外商家;
不少海外商家购买 VPS 时可以使用优惠码(Promo Code),可以到网上搜索可用的优惠码;例如:2023年BandwagonHOST优惠码(6.81%): BWHNCXNVXV
有的主机套餐不是一直有货;每年双11、黑五、年底年初商家可能有优惠活动,推出高性价比的限量套餐;
有商家的 Windows VPS 价格比较高,或者只有 Linux VPS,可能可以自己研究 DD Windows;注意有的商家禁止 DD;
非列表中的部分海外商家确定不能开通对外的 25 SMTP 端口访问,例如:DMITDigitalOceanV.PS等;有的需要账号正常使用一定时间才能开通;
正常使用邮件系统没有问题,云主机也不能群发推广邮件,群发可能被屏蔽端口或者禁用主机,BandwagonHOST 就有控制;
以上信息仅供参考,建议购买前联系平台客服确认,或者先购买短时间的主机测试,使用一段时间后,系统稳定正常后,再变更付费周期购买长期主机。有些商家可以申请退款(有时间限制、使用网络流量限制)。注册时建议使用个人或者公司真实信息,原始非代理网络线路,以免被判断为欺诈,有问题也好沟通解决。

部署安装步骤

1. 购买云主机
Windows 建议 2012R2以上;Linux 建议 CentOS 7.9 
基本配置:CPU >=1 内存 >= 1G 存储 >= 10G 带宽 >= 1M
存储尽量选择 SSD:(SSD云盘 > 高效云盘 > 普通云盘) (NVMe SSD > SSD > SSD Cached > HDD)
2. 远程连接云主机:根据平台开通说明、通知邮件等,使用远程桌面、SSH 客户端、VNC
3. 测试对外 25 端口访问 (*详见备注1)
4. 查询外网 IP 是否在常用 RBL 黑名单里,在个别黑名单里,可以申请移除,如果在 spamcop 和 spamhaus 主流黑名单,又无法移除, 建议联系平台客服更换 IP
5. 安装 Winmail:参考 Winmail 简洁安装步骤 Winmail Pro for Linux 在线下载安装
6. 做域名指向:包括 A、MX、TXT(spf) 参考 如何做域名指向
7. 在云平台安全组、云平台防火墙、本机防火墙等设置开放端口:25、110 等,参考 对外开放端口列表
8. 在云平台控制面板或者联系平台客服做 IP PTR 反向解析,参考 IP 反向解析。有的需要账号正常使用一定时间才能设置;
9. 使用浏览器和邮件客户端做邮件收发测试,先内部收发,再接收外部邮件、其次发外部邮件,不要群发,也不要外发无意义的测试邮件

备注1:测试对外 25 端口访问

在云主机上以命令行方式下执行如下命令,出现 220 *** 提示为正常:
C:> telnet 163mx01.mxmail.netease.com 25 
220 163.com *** mail System (163com[20141201])

C:> telnet freemx1.sinamail.sina.com.cn 25 
220 ***.sinanode.com ESMTP
要多测试几次,有的主机会出现开始可以,后来屏蔽的情况。 如果系统提示 telnet 不是内部或者外部命令 ... 可以到 Windows 控制面板-程序和功能,安装相关的 Windows 功能 - "Telnet 客户端"。

Linux 系统命令类似;如果提示 telnet 命令不存在,CentOS 平台可以使用 yum install telnet 命令安装。
telnet -4 163mx01.mxmail.netease.com 25 
220 163.com *** mail System (163com[20141201])

telnet -4 freemx1.sinamail.sina.com.cn 25 
220 ***.sinanode.com ESMTP

备注2:不能开通对外 25 端口访问的云主机解决方案

如果使用的云主机不能开通对外 25 端口访问,出于某种原因还是要使用这台云主机,可以考虑购买外发中继服务,中继服务商可以提供非 25 的发信端口; 或者另外购买一个可以开通 25 端口的云主机,也安装 Winmail,作为外发中继服务器配合使用, 例如:阿里云(主邮件服务器) + 华为云(外发中继服务器) , 参考 使用 Winmail 架设中继