我们前面的文章介绍了Office365与本地Exchange混合部署及Office365与本地Exchange互相迁移用户的配置介绍,今天就介绍Office365与本地的Exchange邮箱用户实现邮件互相收发介绍,说到Online与本地的Exchange邮件互发,我们都知道,在配置Online与本地Exchange互发及添加本地域的时候,验证本地域,验证的时候,需要在本地的DNS中将MX记录指向Online,只有这样配置后,才能验证本地域及完成混合部署,但是对于企业来说,将MX记录指向Online的时候对于管理上有点不太方便,所以一般也会将MX记录指向本地的邮箱服务器,所以我们还需要修改DNS的解析将MX记录指向本地域。当然对于今天我们介绍的主题来说,这个不是关键,不管指向哪都会正常投递邮件,只是邮件流有点改变而已。对于邮件流的问题我们下一篇在着重介绍。我们今天介绍的主要内容就是本地的Exchange邮箱用户与Online邮箱用户实现互发邮件介绍。具体见下:
我们在介绍邮件互发之前需要申明的是,由于Online与本地的Exchange邮件投递都会通过公网(Internet),所以在Exchange的证书配置上有严格要求。由于邮件的投递会经过公网,所以Exchange服务器的证书必须在公网上受信任。如果我们使用的是内部的CA为exchange颁发的证书的话,会在公网上不受信任。所以如果要想实现本地邮件与Onlne的邮件的正常投递,我们需要为Exchange服务器申请公网的受信任的证书。
如果不申请公网证书的话会出现以下问题;
我们部署完混合环境后,发现office365的mailuser无法正常投递邮件到本地的mailuser邮箱内;我们通过查看官网介绍查看到。如果证书不受信任会出现邮件无法正常投递的现象(Online无法给本地的Exchange投递邮件)。
混合部署中的 Exchange Online Protection
EOP 是 Microsoft 提供的联机服务,由许多公司用于保护其内部部署组织免受病毒、垃圾邮件、欺诈邮件和策略违规的危害。在 Office 365 中,EOP 用于保护 Exchange Online 组织免受相同威胁的危害。在注册 Office 365 时,会自动创建与您的 Exchange Online 组织关联的 EOP 公司。
EOP 公司包含一些邮件传输设置,可以为 Exchange Online 组织配置这些设置。可以指定哪些 SMTP 域必须来自特定 IP 地址,需要 TLS 和安全套接字层 (SSL) 证书,可以绕过反垃圾邮件筛选或合规性策略,等等。EOP 是 Exchange Online 组织的前门。所有邮件(无论其来源如何)都必须先经过 EOP,然后才能到达 Exchange Online 组织中的邮箱。而且,从 Exchange Online 组织发送的所有邮件都必须先经过 EOP,然后才能到达 Internet。
在使用混合配置向导配置混合部署时,会在内部部署组织以及为 Exchange Online 组织设置的 EOP 公司中自动配置所有传输设置。混合配置向导会在此 EOP 公司中配置所有入站和出站连接器及其他设置,以保护在内部部署与 Exchange Online 组织之间发送的邮件并将邮件路由到正确目标。如果要为 Exchange Online 组织配置自定义传输设置,则也会在此 EOP 公司中配置这些设置。
为了帮助保护内部部署和 Exchange Online 组织中的收件人,并帮助确保不会截获和读取组织之间发送的邮件,内部部署组织与 EOP 之间的传输会配置为使用强制 TLS。TLS 传输使用受信任第三方证书颁发机构 (CA) 提供的安全套接字层 (SSL) 证书。EOP 与 Exchange Online 组织之间的邮件也使用 TLS。
当使用强制 TLS 传输时,发送和接收服务器会检查在其他服务器上配置的证书。对证书配置的使用者名称或使用者替代名称 (SAN) 之一,必须与管理员在其他服务器上显式指定的 FQDN 匹配。例如,如果 EOP 配置为接受并保护从 mail.contoso.com FQDN 发送的邮件,则发送内部部署客户端访问或边缘传输服务器必须具有在主题名称或 SAN 中包含 mail.contoso.com 的 SSL 证书。如果不满足此要求,则 EOP 会拒绝连接。
由于我们的证书不受信任,所以Online上的邮箱用户是无法给本地的Exchange邮箱用户投递邮件,当然,本地的Exchange邮箱用户是正常可以和外部域互相收发邮件的,同时Online上的邮箱用户也与外部的域名服务器收发邮件,所以我们需要在Online上进行查看配置。
首先我们需要确认是,默认不受信任的证书配置从本地的exchange邮箱用户可以正常投递邮件到Online邮箱用户的
我们首先查看现在的用户分布
User01为local用户
User02位online用户
使用user01本地邮箱给office365发送测试邮件
在使用office365上的user20给本地的user01发送回复
但是我们从Online给本地exchange邮箱用户投递邮件是无法发送的,所以我们需要更换公网受信任的证书
打开office365邮件流设置-----链接器
单击office365到组织内的邮件链接器
单击---验证此链接器
我们开始验证此连接器
我们输入本地exchange的邮箱账户---user01@ixmsoft.com
开始验证office365到本地组织邮箱账户的连接器
验证完成
我们发现验证失败
我们双击打开该验证结果:
提示SMTP TLS身份验证失败;由于证书不是受信任的颁发机构颁发的,所以会提示错误。
由于该错误,才导致office365无法到本地的邮件投递
我们修改该outbond发送连接器,取消tls设置
我们取消了tls后再次验证
同样使用本地的user01
其实通过下面的图示,我们可以确认,取消tls后,Online用户可以给本地的exchange用户投递测试邮件了
取消tls后,测试结果为通过
验证连接器可以成功
或者我们***连接器的证书安全性;选择任何数字证书,包括自签名证书
同样本地给office365 online上发送也有问题;通过邮件队列查看器查看也是无法发送到Online上的。通过查看也是证书的相关错误
失败的原因是由于office365到本地的exchange必须要有第三方(公认)的证书支持才可以互相发送邮件;
所以我们需要申请第三方证书:
首先我们需要通过exchange申请一个服务器证书csr文件
从证书颁发机构获取证书的请求
选择证书存储的服务器
定义证书名称及类型;指定外部访问exchange服务器所对应的域名访问
定义好后,我们就可以看见证书服务的状态
定义证书信息
保存证书的req文件。我们需要通过req文件向第三方申请
证书申请完成
接下来就是申请公网证书,该baisc码问申请的req文件
免费公网证书申请
在此我们使用沃通
https://buy.wosign.com/ProductList.html
输入申请证书的域名信息。
我们定义好外部访问的受信任的域名信息
证书申请提交完成
因为需要验证域名的所有者,所以系统会列出一些可以验证该域名所有者的邮件信息;
提交验证后,我们在证书所有者验证的邮箱中是可以看见系统发送验证的邮件信息的。
我们输入域的所有者验证码后,提交申请
我们需要使用提交csr文件来申请证书,所以我们需要将本地申请exchange证书提交产生的req文件内容粘贴到此处即可
提交后,提示证书已经颁发了,我们需要下载即可
证书下载信息
我们下载证书后,会有几个证书文件,可以根据自己的需求环境使用,其实我们使用for iis的证书或者for other server就可以
关于证书的操作文档
证书格式转化文档
https://bbs.wosign.com/forum.php?mod=viewthread&tid=20&highlight=%B8%F1%CA%BD%D7%AA%BB%BB
http://www.wosign.com/Docdownload/index.htm
接下来我们需要对刚才申请的证书进行搁置完成
证书搁置完成
接下来就是为证书分配服务
然后我们使用本地的ecp进行访问exchange管理中心页面,查看证书信息;
提示该证书是受信任的第三方证书
更换证书后,我们发现从本地exchange邮箱用户无法给online发送邮件了,发送的邮件我们可以在exchange邮件队列中可以看见,所以我们首先需要一步一步进行排查,
我们通过telnet的相关信息可以测试投递邮件的问题
Telnet 42.159.33.202 25 // 该IP地址保密。不能外漏
1
2
3
|
Ehlo mail.ixmsoft.com Mail from : user20@ixmsoft.com Rcpt to : user01@ixmsoft.com |
原因是由于 blocked了 ,所以无法发送
通过以上cmd命令测试,我们也可以使用相关的exchange命令来帮助解决(该方法是最有效的。)
我们在本地的EMS下运行查看exchange相关的证书命令
1
|
get-exchangecertficate |
我们可以查看到mail.ixmsoft.com这个域名对于的指纹信息
1
2
3
|
get-exchangecertficate 59……..(证书指纹信息) | fl 查看到Issuer为:CN=CA 沃通免费ssl证书 G2,O=WoSign CA Limited, C=CN Subject 为: CN=mail.ixmsoft.com |
然后我们查看发送连接器(本地到Online发送连接器)
1
|
get-sendconnector |
1
|
get-sendconnector "outbound to office365" | fl
|
我们需要查看local到online的邮递发送连接器状态
我们查看到本地到Online的发送连接器的TLScertficatename还是我内部CA服务器的证书信息;由于我们使用第三方的证书已经覆盖了,所以以下信息是错误的。正确的应该是第三方沃通免费ssl证书的相关信息
所以,我们需要手动的强制更改。
1
2
3
|
修改sendconnector的证书名称 <I>Issuer为:CN=CA 沃通免费ssl证书 G2,O=WoSign CA Limited, C=CN <S>Subject 为: CN=mail.ixmsoft.com |
我们手动***信息:
1
|
Set-sendconnector out* -tlscertificatename “<I> CN=CA 沃通免费ssl证书 G2,O=WoSign CA Limited, C=CN<S> CN=mail.ixmsoft.com” |
更新后的结果
我们再次测试本地exchange到Online的邮件投递
我们首先查看邮件队列
最后我们测试发送邮件
接着我们在user02上查看本地用户user01发送的测试邮件
接下来我们再次使用tls测试online到本地的发送连接器信息;
同样我们使用online邮箱用户user02给本地的user01发送测试邮件
本地的user01也收到了online上user02上的邮件
本文转自 高文龙 51CTO博客,原文链接:http://blog.51cto.com/gaowenlong/1718650,如需转载请自行联系原作者