默认是不能通过SMTP发送邮件的,需要禁用SMTP身份验证
本文后续命令均需要使用管理员权限打开powershell
使用 Exchange Online PowerShell来设置smtp身份验证禁用
首先安装基础的包
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
//重新打开powershell后执行
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.208 -Force
安装 Exchange Online PowerShell
//重新打开powershell后执行
Install-Module -Name ExchangeOnlineManagement
Set-ExecutionPolicy RemoteSigned
如果无法下载的话可以手动安装,安装方法如下
#Install-Module 离线安装
$parameters = @{
Name = "Repo"
SourceLocation = "D:\software"
PublishLocation = "D:\software"
InstallationPolicy = 'Trusted'
}
#注册本地仓库
Register-PSRepository @parameters
#查看是否注册成功
Get-PSRepository
#安装
Install-Module -Name ExchangeOnlineManagement -RequiredVersion 3.1.0 -Repository Repo
连接Exchange Online PowerShell
//使用管理员身份连接 输入此命令后需要输入密码
Connect-ExchangeOnline -UserPrincipalName navin@contoso.onmicrosoft.com
#如果需要连接不同的服务器需要指定服务器参数 ExchangeEnvironmentName 具体值如下
Microsoft 365 或 Microsoft 365 GCC | 不适用* |
Microsoft 365 GCC High | O365USGovGCCHigh |
Microsoft 365 DoD | O365USGovDoD |
Office 365 德国 | O365GermanyCloud |
由世纪互联运营的 Office 365 | O365China |
·
例如:
Connect-ExchangeOnline -UserPrincipalName laura@blueyonderairlines.us -ExchangeEnvironmentName O365USGovGCCHigh
禁用SMTP身份验证
Set-TransportConfig -SmtpClientAuthenticationDisabled $true
指定特定邮箱禁用SMTP身份验证
Set-CASMailbox -Identity sean@contoso.com -SmtpClientAuthenticationDisabled $false
[参考]
连接 Exchange Online PowerShell在 Exchange Online 中启用或禁用经过身份验证的客户端 SMTP 提交 (SMTP 身份验证)
exchangeonlinemanagement.3.1.0.zip
PowerShell Install-Module 离线安装 .nupkg包
留待后查,同时方便他人