1. 环境参数说明
A) Windows Server 2012 R2
B) SharePoint 2016
C) 第三方邮件服务器(smtp.3th.com – 有负载均衡,即对应多个IP服务器)
D) 有现成域名:space.self.com – 对应IP 10.1.1.1
2. 背景说明
SMTP 中继服务,顾名思义:只是接收到邮件后传递给第三方邮件服务器,可以理解为一个邮件代理的作用;
为什么要使用 SMTP 中继服务?
答:SharePoint 在配置邮件服务时,只能配置【邮件发送人】,不能配置【邮件发送人的密码】;因此,如果要通过配置来使用 SharePoint 的邮件功能,只能是:
A) 采用集成 Windows 认证的SMTP服务器(如 Exchange)
B) SMTP 服务器可以接收不需要验证【邮件发送者密码】的发送服务;
我们是要连接第三方邮件服务器,所以只能寻找第二种方案;
3. 搭建 SMTP 中继服务
为了节省篇幅,直击主题;对于一般的操作,这里就不再赘述;
A) 安装 IIS 6 管理兼容工具(这是使用 Windows SMTP 必须的管理工具,新版本的 IIS 中已经没有这个功能)
B) 安装 SMTP 服务(同时安装 Telnet 客户端功能,以便后续测试)
C) 在Windows 的管理工具中找到 IIS 6 兼容管理工具并双击打开
D) 右键 [SMTP Virtual Server #1] ,点击属性开始配置
E) 配置不需要身份验证即可访问控制 SMTP 服务
F) 配置允许那些 IP 可以匿名连接 SMTP 服务(这个很重要:不要让自己的SMTP服务被作为肉鸡发垃圾邮件)
G) 根据需要配置邮件容量限制(如果没配置成根据自己的场景需要,可能会导致邮件发不出)
H) 配置传递的出站安全
这里所使用的用户名和密码即为【发送者邮件地址】和【发送者密码】
这个用户名必须与后续在 SharePoint 中配置的传出邮件的发送地址一致;
I) 配置出站连接(即我们要连接的第三方 SMTP 服务器)
完全限定域名:自己定义的 SMTP 域名(需要能被正确的解析到IP,从本文来看,只需要能被 SharePoint 服务器解析到即可,所以可以在一个 DNS 的 A记录,或者直接使用内网的机器名)
智能主机:填入第三方 SMTP 服务器的域名(如:smtp.gmail.com)
J) 打开 services.msc 工具,查看 SMTP 服务是否处于运行状态,并将其设置为”自动“启动;
至此,我们已经完成了 SMTP 中继服务的配置;
有一个奇怪的现象要注意:重新打开 IIS 6 工具进行配置时,会发现刚才的配置有的被恢复为默认值(如:出站安全被设置为 匿名访问、连接数限制被置为 0 等等);
这种情况不需要理会,但如重新编辑了上述配置的任何一项,则需要全部检查一遍,并配置正确过来(这里真是泪水的经历)
4. 使用 Telnet 工具测试
打开命令行工具,按照以下步骤进行邮件发送的测试;
输入为蓝色字体,输出为黑色字体(注意,在输入命令过程,如果输错了,使用退格虽然可以更正命令,但已经无效了;这时需要重新完整输入命令)
c:\> telnet space.ok.com 25
220 space.ok.com Microsoft ESMTP MAIL Service, Version: 8.5.9600.16384 ready at Tue, 28 Mar 2017 17:00:05 +0800 // 表示端口已通
helo space.ok.com // 输入命令,say helo to smtp service
250 space.ok.com Hello [10.1.1.1] // 表示连上 SMTP 服务
mail from : administrator@ok.com // 输入发送者邮件地址
250 2.1.0 administrator@ok.com….Sender OK // 表示邮件地址是有效的
rcpt to:jxg@ok.com
250 2.1.5 jxg@ok.com // 表示邮件地址是有效的
data // 邮件内容命令
354 Start mail input; end with <CRLF>.<CRLF>
subject:testing // 主题命令
// 回车符号
this is a testing from telnet smtp service. // 邮件内容
// 回车符号
. // 英文字符的 “.” 表示结束符号
250 2.6.0 <SPACEFRaqbC8wSA1Xvp00000002@space.ok.com> Queued mail for delivery // 邮件已发到中继服务(后续会被 SMTP 服务代理发送出去)
此时如配置正确,我们将从第三方邮箱收到邮件;
5. SharePoint 配置传出电子邮件设置
最后的步骤进没什么悬念了,上图;
* 这里只说明了传出电子邮件的配置,所以上图中的【答复地址】就没什么意义了;
如要答复,则要 POP3服务才能支持 (BTW, Windows 的后续服务器版本已经没有 POP3 的组件功能了,需要其他第三方服务支持)