Senden von E-Mails an Gmail-SMTP-server mit TLS und Plain-Authentifizierung
Ich habe eine situation. Ich möchte eine Verbindung zu gmail-smtp-server und senden E-Mails von meinem gmail-Konto. als gmail smtp server die PLAIN Authentifizierung und TLS. Habe ich eine Verbindung zum gmail-smtp-server. und die server-Antwort ist wie folgt.
220 mx.google.com ESMTP n21sm810716wed.43
dann sende ich es "AUTH PLAIN" und senden "EHLO" - Befehl. Die server-Antworten lauten wie folgt:
503 5.5.1 EHLO/HELO first. n21sm810716wed.43
Ich dann an es "EHLO" - Befehl erneut aus, und die Antwort ist:
250-mx.google.com zu Ihren Diensten, [203.99.179.10]
nach diesem, was auch immer ich geben es. Es druckt eine Reihe von Zeilen-und Ausfahrt. Die Abfolge der Antworten, die es gibt sind;
250-SIZE 35882577
250-8BITMIME
250-STARTTLS
ENHANCEDSTATUSCODES 250
was sollte ich ihm es so, dass es lassen Sie mich Anmelde und mir E-Mails schicken? Jede Hilfe oder Anregungen wird sehr geschätzt. Dank
Siehe auch
InformationsquelleAutor Ali Ahmed | 2011-07-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie vor 3 Probleme:
Ersten, Sie sind nicht Lesen ganze Antwort der EHLO-Befehl.
Dieser Befehl hat multi-line Antwort:
Hinweis: die Raum nach der letzten 250 code - es bedeutet, dass dies die Letzte Antwort Linie.
Zweite:
EHLO sollte die ersten Befehl, den Sie senden.
Dritte:
Google Mail erlaubt nicht einloggen ohne SSL verwenden, entweder implizit (port 465) oder explizite (STARTTLS-Kommando)
InformationsquelleAutor Pawel Lesnikowski
Können wir nicht verwenden STARTTLS, es sei denn, wir haben eine sichere Verbindung mit dem server. einfacher SMTP-Bibliothek und telnet nicht unterstützt STARTTLS. Für diese musste ich GNUTLS führt handshaking mit dem server und exchange-Zertifikat, um eine sichere Verbindung herzustellen. Danach sende ich STARTTLS und es funktioniert gut. Hoffe dies hilft anderen mit ähnlichen problem. Dank
InformationsquelleAutor Ali Ahmed
Sollten Sie das STARTTLS-Kommando nach der gegebenen Antwort. Hier ist ein SMTP-Konversation Beispiel, die mit
netcat
aufsmtp.gmail.com
auf port 587:Tun Sie beginnen, um SSL zu verwenden, nachdem Sie den Befehl STARTTLS-Kommando?
Lesnikowski, habe ich nicht verstanden, was bedeutet "SSL verwenden". nach STARTTLS ich einfach weiterhin das senden der Daten an die gleiche Steckdose ohne Modifikation und Schritt. Können Sie bitte erklären?
Es bedeutet, dass ab der TLS-handshake. Danach werden alle gesendeten und empfangenen Daten verschlüsselt ist: siehe en.wikipedia.org/wiki/Transport_Layer_Security. Nach STARTTLS, Sie haben eine Neuauflage des EHLO-Befehl ein, und fahren Sie dann die Authentifizierung mit dem AUTH-Befehl: siehe en.wikipedia.org/wiki/SMTP_Authentication und tools.ietf.org/html/rfc4954
InformationsquelleAutor Danilo Piazzalunga