Postfix-Protokolle zeigen ??? als Befehl vom Client an

Postfix-Protokolle zeigen ??? als Befehl vom Client an

Ich verwende einen Ubuntu 18.04.6 LTS-Server mit dem Postfix-Paket 3.1.0-3ubuntu0.4.

Sowohl beim Apple Mail-Client als auch beim Postbox-Client kommt es zu einer merkwürdigen Verzögerung, wenn eine E-Mail zum ersten Mal an den SMTP-Dienst gesendet wird. Apple Mail versucht es schließlich erneut und funktioniert, aber Postbox gibt auf.

Beim ersten Austausch scheint der E-Mail-Client nach der Serverbegrüßung ein „???“ als Befehl zu senden, oder zumindest wird dies von Postfix so protokolliert. Die Zeile im Protokoll sieht folgendermaßen aus (tatsächliche IP-Adresse redigiert):

Nov 23 17:11:09 mail postfix/smtpd[3367]: < ipxx-xxx-xxx-xxx.ph.ph.cox.net[xx.xxx.xxx.xxx]: ???

Worauf der Server antwortet: 502 5.5.2 Error: command not recognized

Was ist hier los? Ich kann nirgendwo finden, dass die Zeichenfolge „???“ als gültiger SMTP-Befehl angesehen wird. Ist das eine Art Hack für ältere Systeme?

Während die beiden oben genannten Clients dies zu senden scheinen, tut dies der iOS-E-Mail-Client nicht.

Ich habe keine Dokumentation hierzu gefunden oder dazu, dass dies als Postfix-Einstellung toleriert wird.

Antwort1

Postfix ersetzt nicht-druckbar()Zeichen ?in seinen Protokollen.

Dies könnte beispielsweise passieren, wenn ein Client angewiesen wird, eine TLS-Verbindung herzustellen, aber eine Portnummer verwendet, bei der Postfix Klartext spricht. Der binäre TLS1.3 ClientHello ist kein gültiger SMTP-Befehl und wird in Protokollen als ? angezeigt. Die Server bieten an, eine bereits bestehende unverschlüsselte SMTP-Verbindung über den STARTTLSKompatibilitäts-Hack auf einen sicheren Kanal zu aktualisieren, was normalerweise unbemerkt bleibt. Ein cleverer MUA könnte diesen Fehler erkennen und es mit von der Konfiguration abweichenden Einstellungen erneut versuchen, wobeicleverkönnte sich leicht in gefährliches Gebiet wagen.

Vorausgesetzt, Ihr Postfix ist so eingerichtet, dass dies möglich ist, konfigurieren Sie Ihre Clients so, dass sie Port 465/tcp („Message Submission over TLS protocol“) verwenden, zusammen mit der Anweisung, sofort TLS zu verwenden. Dies ist die empfohlene sichere Option zum Senden von E-Mails. Ein paar Schlüsselwörter, die Ihnen helfen, die passenden Optionen zu identifizieren:

Hafen Reserviert für die Nachrichtenübermittlung über wie es in den Softwareeinstellungen bezeichnet ist
465 SMTP über TLS (empfohlen) implizitTLS, TLS, SMTPS,sauberTLS, Wrappermodus
587 SMTP-Klartext mit optionalem TLS explizitTLS, STARTTLS,OptionalTLS, RFC 3207

verwandte Informationen