Frage

Die meisten Mail-Clients, die nur SSL / TLS muss den Benutzer unterstützen sagen, ob SSL aktiviert werden soll. Der Benutzer muss nichts über Explicit & Implicit SSL und die Unterschiede zwischen ihnen kennen.

Also, wie funktioniert der Mail-Client bestimmen, welche Art von SSL zu verwenden? Ist es auf Standard-Portnummern basiert? Ist es nur versuchen, eine und dann die andere?

War es hilfreich?

Lösung

Ein Mail-Client muss wissen, ob impliziter SSL verwendet wird, wenn es eine Verbindung, wie sie für die Einleitung des SSL-Handshake mit einer ClientHello Nachricht verantwortlich ist. Wie es bestimmt ist dies an den Client auf. Port-Nummern sind ein großer Hinweis, aber es könnte auch ein Kontrollkästchen in einem gewissen UI sein, dass es sogar zwingt, wenn die Standard (ungeschützt) Portnummer verwendet wird.

Es gibt IANA für sichere E-Mail-Portnummern registriert, aber einige ISPs können andere Ports verwenden.

  • IMAP / SSL: 993
  • POP3 / SSL: 995

SMTP / SSL häufig auf Port angeboten wird 465, aber dies ist nicht registriert, und ist weniger verbreitet, da die Unterstützung für explizite SSL wird von den meisten SMTP-Agenten unterstützt.

Unterstützung für explizite SSL kann von einem Server mit einer protokollspezifischen Verhandlungen geworben werden. Zum Beispiel, wenn ein Client an einen SMTP-Server verbindet, und gibt den Befehl EHLO, wird der Server seine Fähigkeiten Liste, die Unterstützung für den STARTTLS-Befehl umfassen könnte.

Andere Tipps

Port 465 ist sehr häufig bei kommerziellen Mail-Servern und wird sehr oft verwendet. Am häufigsten verwendete es für impliziten SSL. Wenn Sie an diesen Port Telnet finden Sie eine Timeout erhalten, da Sie die SSL-Verbindung zunächst mit dem Mail-Server vor Kommunikation einrichten. So kann ein Timeout sein der erste Hinweis Sie eine implizite SSL-Verbindung. Sie können nicht EHLO verwenden, um Ergebnisse zurück, weil keine andere Verbindung als eine SSL-Verbindung erlaubt ist. UND KEINER Sie verbinde nicht einfach an einen SMTP-Server impliziten SSL läuft es nicht reagiert und wird nur die Verbindung fallen. Das ist, was es tun soll. Explicit SSL ermöglicht Verbindung zuerst und stellen Sie dann SSL. Und ja implizite SSL wird häufig verwendet. Der Nachteil ist, dass die RFC-Standards nicht spezifisch sind, wie es umgesetzt wird, so verschiedene Entwickler setzen sie auf unterschiedliche Weise, auch wenn implizite SSL von einigen als als abgeschrieben.

Ich glaube, die meisten Kunden, die SMTP über SSL-Unterstützung mit einer unverschlüsselten Verbindung beginnen und eine EHLO statt HELO ausgeben. Ersteres hat zusätzliche Flag-Antworten, von denen einer anzeigt, ob der Server den Befehl STARTTLS unterstützt oder nicht. Wenn sie das tun, dann kann der Client STARTTLS verwenden, und dann SSL verwenden, um von diesem Punkt an.

Beispiel:

% telnet quack.kfu.com 25
220 quack.kfu.com ESMTP ready NO UCE
EHLO client
250-quack.kfu.com Hello client [xx.xx.xx.xx] (may be forged), pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE 25000000
250-ETRN
250-AUTH PLAIN LOGIN
250-STARTTLS
250-DELIVERBY
250 HELP
starttls
220 2.0.0 Ready to start TLS
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top