SMTP für Gruppe: SSL falsche Versionsnummer Fehler

Hallo,

Ich versuche, SMTP für Gruppen zu implementieren, erhalte aber immer wieder die folgende Fehlermeldung.

image

Ich verwende jedoch denselben SMTP-Server, den auch die Instanz verwendet, und erhalte dieselbe Fehlermeldung, selbst wenn ich dieselben Anmeldeinformationen verwende, die in meiner app.yml-Datei angegeben sind… Ich verstehe nicht, warum er sich anders verhält: E-Mails werden mit den Standardanmeldeinformationen perfekt gesendet.

In den Protokollen meines SMTP-Servers sehe ich eine Verbindung vom Discourse-Server, dann erhalte ich die folgende Meldung:

smtp bad-input result=“500 5.5.1 Invalid command: Pipelining not supported”
smtp disconnected reason=“io-error: Connection reset by peer”

1 „Gefällt mir“

Ich vermute, dass Discourse versucht, eine Verbindung zum SMTP-Server mit TLS anstelle von STARTTLS herzustellen.

Können Sie die relevanten Einstellungen als Screenshot zeigen?

Bitte schwärzen Sie spezifische Hostnamen und Benutzernamen, aber lassen Sie Portinformationen und andere Einstellungen sichtbar.

1 „Gefällt mir“

Die Konfiguration ist eher klassisch: üblicher Port 587 und Starttls ist true (Standardwert)

Allgemeine Konfiguration:

für die Gruppe smtp:

Ich habe einige tcpdumps gemacht, um zu sehen, was passiert, und ich bemerke 3 verschiedene Verhaltensweisen. Für die ersten beiden Fälle ist es genau wie in diesem Thread beschrieben: https://meta.discourse.org/t/smtp-error-must-issue-a-starttls-command-first/181050/6?u=gde.

  1. Normale Nutzung
    Benutzer erstellen Themen, antworten usw. andere Benutzer erhalten E-Mail-Benachrichtigungen wie erwartet
    Auch bei der Test-E-Mail-Versand über die Administrationsoberfläche: kein Problem, sie wird gut gesendet und gut empfangen

Mit tcpdump sehen wir eine korrekte Sequenz, die Verbindung über STARTTLS usw.

  1. Discourse-doctor und rake
    Verwendung von discourse-doctor oder rake emails:test
    Die E-Mail wird nicht gesendet und ich erhalte eine Fehlermeldung: 503 5.5.1 Invalid command: Command not supported

  2. Gruppen-SMTP
    Beim Testen der Gruppen-SMTP sehe ich ein “DATA fragment”-Paket von Discourse unmittelbar nach dem TCP-Handshake, worauf der SMTP-Server mit 220 xxxxxxx ESMTP OpenSMTPD und dann mit der Meldung 500 5.5.1 Invalid command: Pipelining not supported antwortet.

1 „Gefällt mir“

587 unterstützt STARTTLS, aber nicht TLS (zum Zeitpunkt der Verbindung).

Wir sollten die Optionen hier ändern, um STARTTLS zu erlauben.

Funktioniert es, wenn Sie “SSL für SMTP verwenden” deaktivieren?

Leider funktioniert es nicht.
Wenn ich “SSL für SMTP verwenden” deaktiviere, erhalte ich folgende Fehlermeldung:

image

Was seltsam ist, da ich weiß, dass meine Anmeldedaten korrekt sind.

Bei der Überprüfung mit tcpdump verhält es sich so, wie ich es für den Fall “Discourse-doctor und Rake” erklärt habe.
Der Austausch zwischen Discourse und dem SMTP-Server sieht wie folgt aus:

< 220 [redacted] ESMTP ready
> EHLO [redacted]
< 250-[redacted]
< 250-PIPELINING
< 250-SIZE 36700160
< 250-ENHANCEDSTATUSCODES
< 250-8BITMIME
< 250 STARTTLS
> AUTH PLAIN [redacted]
< 500 5.5.1 Invalid command : commande not supported

Es ist, als ob Discourse nicht versucht, STARTTLS zu initiieren; es ist genau so, wie es in dem Beitrag beschrieben wird, auf den ich in meiner vorherigen Nachricht verlinkt habe.

Ich habe jetzt das gleiche Problem, wenn ich versuche, Discourse SMTP so zu konfigurieren, dass es mit einer ImprovMX-E-Mail-Adresse funktioniert.

Irgendwelche Gedanken @supermathie?