- OpenVPN IPv6 and IPv4 configuration - Mon, Mar 1 2021
- 4sysops author and member competition 2020 - Fri, Jan 1 2021
- Assign an IPv6 address to an EC2 instance (dual stack) - Tue, Dec 15 2020
Yesterday, I tried sending a little ZIP file (110MB) with Outlook 2016 from my Office 365 account. After a couple of seconds, Outlook stopped sending, without an error message, and moved my email to the Draft folder. After repeating the procedure, it occurred to me that my little ZIP file exceeded the maximum message size in Office 365.
To find the setting in the Office 365 admin center is not easy and ends in a click orgy. Most guides you find on the web are outdated because Microsoft keeps changing the web interface frequently. Thus, using PowerShell is usually the better option.
Changing message size restriction in the admin center ^
For the sake of completeness, below you'll find the current click path for accessing the message size dialog. After you login, you should arrive at Office 365 Home. Next, stretch your forefinger and start clicking:
Admin > Users > Active Users > Select User > Mail Settings > More Settings > Edit Exchange Properties > Mailbox Features > Message Size Restrictions > View Details > Change Sent and Received
If Microsoft didn't change the web interface, you should now have the message size restrictions dialog on your screen:
As mentioned above, the default setting is 35MB. The maximum you can set for sent and received messages is 150MB (153600KB). This is not much considering users may want to send videos as an attachment or, as in my case, a couple of PDF files.
Setting the maximum attachment size with PowerShell ^
Don't think that PowerShell gives you more power. Of course, the limits are just the same.
First you have to establish a remote PowerShell connection with Office 365:
$Cred = Get-Credential $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $Cred -Authentication Basic -AllowRedirection Import-PSSession $Session
The first command asks you for the credentials that allow access to the user's mailbox. You can check the current mailbox size restrictions settings with the next command:
Get-Mailbox -Identity "UserName@YourDomain.com" | fl maxsendsize,maxreceivesize
Finally, you can change the maximum receive and maximum send size:
Set-Mailbox -Identity "UserName@YourDomain.com" -MaxReceiveSize 150MB -MaxSendSize 150MB
Notice that PowerShell won't tell you if the command succeeded. However, if you think your user should be allowed to send or receive bigger attachments, PowerShell will complain:
The operation on mailbox "michael" failed because it's out of the current user's write scope. The value of property 'MaxReceiveSize' cannot exceed the limit of 150 MB.
MaxReceiveSize cannot exceed the limit of 150 MB
If you use PowerShell to change the message size limit, you can be sure that the commands above will work in the foreseeable future, and of course, if you must change several mailboxes, you will be faster with a quick script.
Now, before you free yourself or your favorite user from message size restriction, look what "undeliverable message" I received after I finally succeeded at sending my little email:
Your message wasn't delivered to anyone because it's too large. The limit is 35 MB. Your message is 110 MB.
And this what I found in the mail header:
Remote Server returned '550 5.2.11 RESOLVER.RST.SendSizeLimit.Sender; message too large for this sender'
Obviously, the recipient's mailbox suffers from the same limits. Thus, it might make sense to modify the maximum size for receiving emails. That way, external emailsarriving at Office 365 won't be rejected. However, currently, sending messages that are larger than 35 MB probably doesn't make much sense because most mailboxes have similar restrictions. So much for unlimited resources in the cloud.
Notice that if you want to change the default maximum send and receive sizes for new mailboxes, you have to modify your default mailbox plan.