Zitat von Brombeermilchtrinker
Beitrag anzeigen
DKIM ist deswegen noch nicht möglich, weil die Mail-Server von DF noch nicht dafür ausgerüstet sind. Sie müssten jede rausgehende Mail signieren mit dem DKIM-Schlüssel und das geht hier nicht. Da ist DF aber nicht der einzige Laden, bei dem es noch nicht geht.
ich versuche mich auch mal an einer Erklärung zu PHPmailer und SSL/TLS, obwohl andere hier technisch sicher viel versierter sind.
Zwar stimmt es, was weiter oben geschrieben wurde, dass das Protokoll TLS der Nachfolger von SSL ist, dennoch gibt es den wunderbar verwirrenden Umstand, dass diese Protokollfragen hier beim PHP-Mailer gar keine Rolle spielen, da man mit ssl oder tls hier nicht das modernere Protokoll verwendet, sondern zwiscchen implizitem und explizitem Verschlüsseln unterscheidet. In beiden Fällen wird zur Verschlüsselung das Protokoll TLS verwendet. Verwirrend?
Tatsache ist: es gibt zwei Varianten, Mails über eine verschlüsselte Verbindung zu versenden.
Die eine ist "implizit", SMTPS über Port 465. Hier wird gründsätzlich nur eine verschlüsselte Verbindung über TLS versucht, schlägt dies fehl, gibt es einen Timeout/Fehler.
Die andere "explizit", SMTP + STARTTLS über Port 25 oder 587, hier wird eine unverschlüsselte Verbindung begonnen, der Server fragt dann explizit nach einer Verschlüsselung. Können beide Server sich auf eine Verschlüsselung einigen, wird mit TLS verschlüsselt.
Bei PHPMailer sieht das ganze so aus:
Die Angabe
Code:
$mail->SMTPSecure = "TLS";
In PHPmailer wird das tls dann übersetzt in SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS
Die Angabe
Code:
$mail->SMTPSecure = "SSL";
PHPmailer übersetzt das in SMTPSecure = PHPMailer::ENCRYPTION_SMTPS
Das funktioniert bei den meisten Hostern auch, bei einigen habe ich es aber schon erlebt, dass es nur ging, wenn das Protokoll beim Host direkt mitgegeben wurde. Ansonsten hat der PHP auf dem Port, der Verschlüsselung voraussetzt, eine unverschlüsselte Anfrage gestellt, die dann nach Timeout negativ beschieden wurde.
Hier hilft es bei einigen, beim Host das ssl direkt mitzugeben. Eigentlich sollte
Code:
$mail->Host = "sslout.df.eu"; $mail->Port = 465; $mail->SMTPSecure = "ssl";
Code:
$mail->Host = "ssl://sslout.df.eu"; $mail->Port = 465; $mail->SMTPSecure = "ssl";
Wie gesagt: ist alles ein wenig verwirrend, und wenn ich was falsch erklärt habe, sorry.
Liebe Grüße,
die Mango
Kommentar