前提:您已经在Office 365上添加验证了您自己公司的域名比如basehome.com.cn。
打开Exchange Online的管理控制台会发现邮箱账户都是以@basehome.partner.onmschina.cn为后缀的,如果想修改成以@basehome.com.cn为主的SMTP收发域名怎么办呢?因为用户很多需要批量修改,那么回到Office 365管理控制台,点击用户,全选需要修改的用户,点击”编辑域“
选择basehome.com.cn为主要默认域,点击保存,这里注意看警告,一旦保存,那么邮件的主要SMTP收发地址就会从basehome.partner.onmschina.cn变成Basehome.com.cn了,如果有Skype for Business Online也会变成basehome.com.cn为主要登陆地址
更新完成,关闭
可以看到Office 365用户的这些用户名后缀都变成basehome.com.cn了
再看看Exchange Online控制台这些用户的只要SMTP收发地址也变了
OK,到这里就搞定了,但如果这个公司有多个域名呢?每一个账户都有多个smtp收件域名,比如除了basehome.com.cn对外收发邮件外,还有contoso.com,或者corp.cn等域名来收邮件呢?(lisi@basehome.com.cn,lisi@contoso.com,lisi@corp.cn这些都是同一个账户,但多个不同域名都可以收信)这时怎么办呢?同样的,需要先在Office 365管理中心在域里把contoso.com以及corp.cn的域名添加并验证。
如果是单个用户,那么直接在Exchange管理控制台上选择该用户并编辑
在电子邮件地址,点+添加
选择smtp,输入其他域名的收件地址,选择是否该地址作为答复地址即可。(答复地址就是发送给对方,对方看到的是什么域名发来的;当然在这里可以添加李四账户的其他同域名的不同前缀收件地址,比如除了lisi@basehome.com.cn可以让李四收到邮件外还可以添加si.li@basehome.com.cn让李四也可以收到邮件)
确定后,可以看到哪一个SMTP是加粗的字体,哪个就是该用户的答复邮箱地址
如果要批量给很多用户添加其他域名的SMTP收信地址怎么办呢?这里就只能使用Powershell了
首先以管理员身份运行Powershell
执行Set-ExecutionPolicy RemoteSigned点击A回车(让您的本机具备可以运行一些可执行的Powershell脚本的安全策略级别)
接下来连接到Exchange Online
$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://partner.outlook.cn/PowerShell-LiveID/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
自动弹出登陆对话框,输入您Office 365的全局管理员账户密码
添加小写smtp地址。如果您需要给用户添加三个不同域名的别名地址,那么下列命名需要分别执行三次。×××部分需要替换成您那边需要给用户添加别名的域名后缀。(此命令会给活动用户和共享邮箱添加×××部分域名的别名地址)
$users = Get-Mailbox
foreach ($a in $users) {$a.emailaddresses.add("smtp:$($a.alias)@corp.cn")}
$users | %{Set-Mailbox $_.Identity -EmailAddresses $_.EmailAddresses}
执行完成后可以检查,执行Get-Mailbox lisi | fl *email*
我这里是演示,没有其他域名添加到Office 365进行验证成功,因此这里只能告诉大家方法
如果您想单独对某一个用户添加一个smtp地址,那么请执行Set-Mailbox "zhangsan" -emailaddress @{add="zhangsan@contoso.com"}
记住,在添加其他SMTP域名地址前必须先在Office 365管理员中心添加验证好该域哦,否则是无法再Powershell里执行添加成功的,会提示您:
好了就介绍到这吧。