汪瑞阳
【摘要】
对于我们企业生产环境下Exchange系统来说,邮件的收发至关重要,其涉及到用户的日常工作邮件收发。邮件的收发过程又涉及到许多方面的配置,这些配置对于一封邮件或多封邮件的发送,也起到了关键性的限制作用。本文主要针对于Exchange系统中邮件收发的大小、速率、收件人数量方面的限制因素进行阐述。
【正文】
一、
邮件尺寸大小的限制设置有好几种方式,有公司层面的,连接器还有用户邮箱单独设置,他们其实并不存在优先级,并不是生效某一项,其他不生效,而是全部要附加给邮件,只是在应用到每封邮件过程中有顺序存在。
相关设置有:
Ø
Set-TransportConfig –MaxSendSize 20MB –MaxReceiveSize 100MB
Ø
Set-SendConnector <Connector Name> –MaxMessageSize 50MB
Ø
Set-ReceiveConnector <Connector Name> –MaxMessageSize 50MB
Ø
Set-Mailbox “test”
–MaxSendSize 20MB
–MaxReceiveSize 20MB
另外,有一些注意点需要考虑到,在邮件传输过程中,检测到的邮件大小会是邮件本身的实际大小的1.33倍,也就是大三分之一,打个比方,邮件实际大小为30MB,在传输过程中系统检测到的邮件可能就是40MB了,该信息官方有明确提示。
针对于组织、链接器、服务器、用户方面的限制配置,详细介绍如下:
1.
若要查看这些组织限制的值,请在Exchange命令行管理程序中运行以下命令:
Get-TransportConfig | Format-List
MaxReceiveSize,MaxSendSize,MaxRecipientEnvelopeLimit
Get-TransportRule | where
{($_.MessageSizeOver -ne $null) -or ($_.AttachmentSizeOver -ne $null)} |
Format-Table Name,MessageSizeOver,AttachmentSizeOver
2.
若要查看这些连接器限制的值,请在Exchange命令行管理程序中运行以下命令:
Get-ReceiveConnector | Format-Table
Name,Max*Size,MaxRecipientsPerMessage; Get-SendConnector | Format-Table
Name,MaxMessageSize; Get-AdSiteLink | Format-Table Name,MaxMessageSize;
Get-DeliveryAgentConnector | Format-Table Name,MaxMessageSize;
Get-ForeignConnector | Format-Table Name,MaxMessageSize
3.
4.
若要查看这些限制的值,请在Exchange命令行管理程序中为收件人类型运行相应的Get- cmdlet。
例如,要查看在特定邮箱上配置的限制,请运行以下命令:
Get-Mailbox <MailboxIdentity> |
Format-List MaxReceiveSize,MaxSendSize,RecipientLimits
若要查看在所有用户邮箱上配置的限制,请运行以下命令:
$mb= Get-Mailbox -ResultSize unlimited; $mb | where {$_.RecipientTypeDetails -eq 'UserMailbox'} | Format-Table Name,MaxReceiveSize,MaxSendSize,RecipientLimits
5.
另外还有些冷门的通过访问协议来限制大小,可以通过服务器配置文件进行修改限制:
Ø
通过Outlook Web Access发送电子邮件时,还会在位于%ExchangeInstallPath%ClientAccess \ Owa \ web.config中的Web配置文件中验证电子邮件大小
OWA中的默认电子邮件大小:
maxAllowedContentLength =“35000000”(以字节为单位)=约33 MB
maxReceivedMessageSize =“35000000”(以字节为单位的值)=约33 MB
maxRequestLength =“35000”(以千字节为单位)=约34 MB
您可以将此值更改为您需要的任何大小。
Ø
就像OWA一样,当使用EWS应用程序(Mac Outlook,Entourage)发送电子邮件时,邮件大小是合理的,参数值位于文件 ExchangeInstallPath%ClientAccess \ exchweb \ ews \
web.config中
EWS中的默认电子邮件大小:
maxAllowedContentLength =“67108864”(以字节为单位的值)=约64 MB
maxReceivedMessageSize =“67108864”(以字节为单位)=约64 MB
您可以将此值更改为您需要的任何大小。
Ø
使用ActiveSync手持设备发送电子邮件时,邮件大小合理,文件名为%ExchangeInstallPath%ClientAccess \ Sync \ web.config
Activesync中的默认电子邮件大小:
<add key =“MaxDocumentDataSize”value =“10240000”>(以字节为单位的值)约9.7 MB
maxRequestLength =“10240”(以千字节为单位)=约10 MB
二、
我们可以在以下位置设置邮件速率限制和限制选项:
Ø 邮箱服务器和边缘传输服务器。总的来说,我们将这些称为传输服务器。
Ø 发送连接器
Ø 接收连接器
Ø 用户
Ø 传输服务器上的邮件限制
1. 传输服务器限制
若要查看这些服务器消息限制设置的值,请在Exchange命令行管理程序中运行以下命令:
Write-Host "Transport service:" -ForegroundColor yellow;
Get-TransportService | Format-List
MaxConcurrent*,MaxConnection*,Max*OutboundConnections;
Write-Host "Mailbox Transport service:" -ForegroundColor yellow;
Get-MailboxTransportService | Format-List MaxConcurrent*
2. 发送连接器上的邮件限制
若要查看这些发送连接器限制设置的值,请在Exchange命令行管理程序中运行以下命令:
Get-SendConnector | Format-List
Name,ConnectionInactivityTimeout,SmtpMaxMessagesPerConnection
3. 接收连接器上的消息限制
若要查看这些接收连接器邮件限制设置的值,请在Exchange命令行管理程序中运行以下命令:
Get-ReceiveConnector | Format-List
Name,Connection*,MaxInbound*,MessageRate*,TarpitInterval
4. 用户限制
每个邮箱都有ThrottlingPolicy设置。此设置的默认值为空($null)。您可以使用Set-Mailbox cmdlet 上的ThrottlingPolicy参数为邮箱配置限制策略。
Ø 打开Exchange命令管理器,创建一个名称为LimitMessagesSent的新策略规则,例:用户每天最大发送量为300封,每分钟最大为10封,你可以使用以下命令:
New-ThrottlingPolicy -Name LimitMessagesSent -RecipientRateLimit 300 -MessageRateLimit
10
执行完后,可以看到规则名称和recipientratelimit、messageratelimit两个参数的值
Ø 把刚新建的策略规则LimitMessagesSent应用到需要限制发送量的用户上
Set-Mailbox -Identity "jerry" -ThrottlingPolicy LimitMessagesSent
三、
针对于收件人数量的限制有组织级别限制、连接器级别限制、用户级别。
一般情况下,最终邮件收件人数的限制,以这三个级别的限制的最小值为准,如果有发件人和收件人都是组织内部用户的话,用户级别的限制可以不受组织级别限制的控制。但是如果有外部用户作为收件人,收件人的数量的限制由组织级别和用户级别共同决定。
邮件中最大收件人数:
EAC配置:邮件流>接收连接器>更多选项>组织传输设置>限制最大收件人数
EMS命令配置:Set-TransportConfig,参数:MaxRecipientEnvelopeLimit
连接器限制:
EMS命令:New-ReceiveConnector,Set-ReceiveConnector,参数:MaxRecipientsPerMessage
收件人限制:
EMS命令:Set-mailbox,Set-MailUser,参数:RecipientLimit