Exchange & Mail9 Min. LesezeitUrsprünglich auf hl-consulting.ch am aktualisiert am

Exchange-Nachrichtengröße erhöhen: alle Grenzen, die zählen

In Exchange Server bestimmt immer die strengste Grenze, wie groß eine Mail sein darf.

Kurz gesagt: In Exchange Server bestimmt immer die strengste Grenze, wie groß eine Mail sein darf. Wer größere Anhänge erlauben will, passt deshalb die Organisation, die Connectoren und die Clients Outlook im Web, ActiveSync und EWS gemeinsam an. Jeder Wert braucht rund ein Drittel Zuschlag für die Base64-Codierung. Und nach jedem kumulativen Update müssen die Client-Werte neu gesetzt werden.

Gilt für Exchange Server 2016, 2019 und Subscription Edition (SE). Exchange Online hat eigene Grenzen und ist hier nicht Thema.

Welche Grenzen es gibt

EbeneStandardwertWo einstellen
Organisation senden/empfangen10 MBSet-TransportConfig -MaxSendSize / -MaxReceiveSize
Receive-Connector36 MBSet-ReceiveConnector -MaxMessageSize
Send-Connector10 MB (Übersicht) / 25 MB (Cmdlet-Hilfe)Set-SendConnector -MaxMessageSize
Postfach senden/empfangenunbegrenztSet-Mailbox -MaxSendSize / -MaxReceiveSize
Transportregeln mit Größenbedingungnicht gesetztSet-TransportRule -MessageSizeOver / -AttachmentSizeOver
Outlook im Web35 MBweb.config (IIS)
ActiveSync (Handy)10 MBweb.config (IIS)
Exchange Web Services (EWS)64 MBweb.config (IIS)

Eine Ausnahme: Zwischen angemeldeten internen Absendern und Empfängern gelten die Postfachgrenzen statt der Organisationsgrenze. So können einzelne Abteilungen intern größere Mails tauschen, nach außen aber nicht.

Schritt 1: Zielgröße festlegen und Base64 einrechnen

Anhänge werden für den Versand Base64-codiert und dadurch rund 33 Prozent größer. Stellen Sie deshalb immer etwa vier Drittel der Größe ein, die tatsächlich durchgehen soll.

In dieser Anleitung soll eine Mail mit 50 MB Anhängen ankommen. Das ergibt:

  • 67 MB für die Exchange-Cmdlets (50 × 4/3 = 66,7)
  • 69905067 Bytes für die Byte-Werte in den web.config-Dateien (66,7 × 1024 × 1024)
  • 68267 KB für maxRequestLength, das in Kilobyte gezählt wird (66,7 × 1024)

Achten Sie bei jedem Befehl darauf, ob Bytes oder Kilobyte verlangt sind – darauf weist auch Microsoft ausdrücklich hin. Die appcmd-Zeilen unten mischen beide Einheiten.

Nachrechnen lohnt sich: Microsoft schreibt in der Anleitung als Faktor 1048756. Richtig ist 1024 × 1024 = 1048576. Die Beispielwerte von Microsoft sind mit dem richtigen Faktor gerechnet.

Schritt 2: Organisation und Connectoren anpassen

Zuerst den Ist-Stand ansehen, dann die Werte setzen. Die Befehle laufen in der Exchange Management Shell.

# Ist-Stand
Get-TransportConfig | Format-List MaxReceiveSize,MaxSendSize
Get-ReceiveConnector | Format-Table Name,MaxMessageSize
Get-SendConnector | Format-Table Name,MaxMessageSize
Get-TransportRule | where {($_.MessageSizeOver -ne $null) -or ($_.AttachmentSizeOver -ne $null)} | Format-Table Name,MessageSizeOver,AttachmentSizeOver
# Organisation
Set-TransportConfig -MaxSendSize 67MB -MaxReceiveSize 67MB
# Alle Receive-Connectoren auf denselben Wert
Get-ReceiveConnector | Set-ReceiveConnector -MaxMessageSize 67MB
# Send-Connector ins Internet (Name anpassen)
Set-SendConnector "Internet" -MaxMessageSize 67MB

Halten Sie die Werte an allen Stellen gleich. Microsoft empfiehlt, zu große Mails möglichst früh abzuweisen – also am Eingang und nicht erst, nachdem der Server sie schon angenommen hat. Zeigt die letzte Ist-Stand-Zeile eine Transportregel, prüfen Sie deren Grenze ebenfalls.

Mit Edge-Transport-Server: Führen Sie Set-TransportConfig und die Connector-Befehle dort zusätzlich aus. Auf dem Edge gelten die Organisationsgrenzen nur lokal.

Schritt 3: Outlook im Web anpassen

Die Client-Grenzen stehen nicht in Exchange, sondern in den web.config-Dateien der IIS-Websites. Öffnen Sie eine Eingabeaufforderung als Administrator auf jedem Exchange-Server.

%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/owa/" -section:system.webServer/security/requestFiltering /requestLimits.maxAllowedContentLength:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/owa/" -section:system.web/httpRuntime /maxRequestLength:68267
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/owa/" -section:system.webServer/security/requestFiltering /requestLimits.maxAllowedContentLength:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/owa/" -section:system.web/httpRuntime /maxRequestLength:68267
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/owa/" -section:system.serviceModel/bindings /webHttpBinding.[name='httpsBinding'].maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/owa/" -section:system.serviceModel/bindings /webHttpBinding.[name='httpBinding'].maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/owa/" -section:system.serviceModel/bindings /webHttpBinding.[name='httpsBinding'].readerQuotas.maxStringContentLength:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/owa/" -section:system.serviceModel/bindings /webHttpBinding.[name='httpBinding'].readerQuotas.maxStringContentLength:69905067

Schritt 4: ActiveSync anpassen

Bei ActiveSync gibt es drei Werte, und alle drei müssen passen. Der Schlüssel maxAllowedContentLength fehlt in der web.config standardmäßig. Dann gilt der Serverwert von 30000000 Bytes – auch wenn die anderen Werte höher stehen.

%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync/" -section:system.webServer/security/requestFiltering /requestLimits.maxAllowedContentLength:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync/" -section:system.web/httpRuntime /maxRequestLength:68267
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/Microsoft-Server-ActiveSync/" -section:system.webServer/security/requestFiltering /requestLimits.maxAllowedContentLength:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/Microsoft-Server-ActiveSync/" -section:system.web/httpRuntime /maxRequestLength:68267
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/Microsoft-Server-ActiveSync/" -section:appSettings /[key='MaxDocumentDataSize'].value:69905067

Schritt 5: EWS anpassen

EWS nutzt zum Beispiel Outlook für Mac. Hier sind es zwei maxAllowedContentLength-Werte und 14 Bindungen mit maxReceivedMessageSize. maxRequestLength braucht EWS nicht.

%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/ews/" -section:system.webServer/security/requestFiltering /requestLimits.maxAllowedContentLength:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.webServer/security/requestFiltering /requestLimits.maxAllowedContentLength:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSAnonymousHttpsBinding'].httpsTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSAnonymousHttpBinding'].httpTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSBasicHttpsBinding'].httpsTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSBasicHttpBinding'].httpTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSNegotiateHttpsBinding'].httpsTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSNegotiateHttpBinding'].httpTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSWSSecurityHttpsBinding'].httpsTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSWSSecurityHttpBinding'].httpTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSWSSecuritySymmetricKeyHttpsBinding'].httpsTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSWSSecuritySymmetricKeyHttpBinding'].httpTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSWSSecurityX509CertHttpsBinding'].httpsTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /customBinding.[name='EWSWSSecurityX509CertHttpBinding'].httpTransport.maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /webHttpBinding.[name='EWSStreamingNegotiateHttpsBinding'].maxReceivedMessageSize:69905067
%windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/ews/" -section:system.serviceModel/bindings /webHttpBinding.[name='EWSStreamingNegotiateHttpBinding'].maxReceivedMessageSize:69905067

Schritt 6: IIS neu starten und testen

Die Änderungen in den web.config-Dateien gelten erst nach einem Neustart von IIS.

net stop w3svc /y
net start w3svc

Testen Sie danach mit jedem Client, den Sie geändert haben: eine Mail mit etwa 45 MB Anhängen senden und empfangen. Kommt sie durch, stimmen alle Ebenen. Scheitern Mails knapp unter 50 MB, ist der Zuschlag größer als ein Drittel. Das hängt laut Microsoft von Dateityp, Komprimierung und Mailprogramm ab. Setzen Sie dann alle Werte etwas höher.

Nach jedem kumulativen Update wieder setzen

Ein kumulatives Update (CU) überschreibt die web.config-Dateien. Die Werte aus Schritt 3 bis 5 sind danach wieder auf dem Standard, die Werte aus Schritt 2 bleiben. Legen Sie die appcmd-Zeilen deshalb als Skript neben die Update-Anleitung und führen Sie es nach jedem CU auf jedem Server aus. Wie Sie das Update selbst in einer DAG einspielen, zeigt der Beitrag zum Exchange-Wartungsmodus.

Korrektur zur Fassung von 2023: Die alte Fassung dieses Beitrags setzte für ActiveSync nur zwei der drei Werte hoch. maxAllowedContentLength blieb bei 30000000 Bytes. Damit kamen über das Handy höchstens rund 21 MB Anhänge durch, egal was sonst eingestellt war. Außerdem fehlten die Organisations- und Connector-Grenzen, der Base64-Zuschlag, der IIS-Neustart und der Hinweis auf die Updates.

Häufige Fragen

Warum kommt eine 30-MB-Datei nicht an, obwohl 35 MB eingestellt sind?

Der Anhang wird für den Versand Base64-codiert und wächst dabei um rund ein Drittel, manchmal mehr. Aus 30 MB werden so etwa 40 MB, und das liegt über der Grenze von 35 MB. Darum stellen Sie immer rund vier Drittel der gewünschten Größe ein, an allen Stellen gleich: Organisation, Connectoren und Clients.

Welche Grenze gewinnt, wenn mehrere gesetzt sind?

Immer die strengste. Steht die Organisation auf 67 MB, der Send-Connector ins Internet aber noch auf 10 MB, gehen nach außen nur kleine Mails raus. Eine Ausnahme gibt es intern: Zwischen angemeldeten Absendern und Empfängern zählen die Postfachgrenzen statt der Organisationsgrenze.

Muss ich nach einem Exchange-Update etwas tun?

Ja. Ein kumulatives Update setzt die web.config-Dateien von Outlook im Web, ActiveSync und EWS auf den Standard zurück. Die Werte aus der Exchange Management Shell bleiben erhalten. Führen Sie die appcmd-Befehle nach jedem Update auf jedem Exchange-Server erneut aus und starten Sie IIS neu.

Quellen (abgerufen am 17.10.2026)

Nils Lappenbusch

Nils Lappenbusch

Microsoft Certified Trainer · Exchange- und M365-Experte

Schreibt hier über Probleme, die in echten Projekten auftreten: Microsoft 365, Security, Automatisierung und digitale Systeme. Hängen Sie gerade an genau diesem Thema? Dann lösen wir es gemeinsam, von der Diagnose bis zur Umsetzung.

Kontakt aufnehmen

Wo steckt Ihr Projekt gerade fest?

Erzählen Sie uns in 30 Minuten, worum es geht. Sie bekommen eine ehrliche Einschätzung und einen konkreten nächsten Schritt, auch wenn dieser nicht bei uns liegt.