WordPress Kontaktformular: SMTP nutzen und den Mailversand verschlüsseln

von

am

|

geschätzte Lesezeit:

7 Minuten

Disclaimer: Dieser Beitrag ist älter als zwei Jahre. Es könnte also sein, dass auch sein Inhalt in Teilen bereits veraltet ist.

WordPress Kontaktformular SMTP verschickt Mail mit TLS verschlüsselt

Spätestens seit der DSGVO sollte sich herumgesprochen haben, dass Kontaktformulare via HTTPS bereitgestellt werden müssen. Allein das stellt sicher, dass die Daten, die Nutzer hier eingeben, verschlüsselt an den Server des Website-Betreibers übermittelt werden. Nun betrifft dies aber nicht den Mailversand. In Hinblick auf den Datenschutz ist die Verschlüsselung der E-Mail zwar nicht immer dringend gefordert. Schaden kann es aber nicht, wenn Sie für Ihr WordPress Kontaktformular SMTP nutzen. Dann verschickt nämlich Ihr E-Mail-Postfach die Mail und nicht die WordPress PHP Mail Funktion. Und wenn Ihr E-Mail-Server entsprechend eingerichtet ist, sorgt er dafür, dass der Transport mittels TLS 1.2 verschlüsselt stattfindet. Das freut den Datenschutz und hilft zudem zu verhindern, dass Ihre E-Mails als Spam verkannt oder gar nicht erst zugestellt werden.

SMTP? TLS 1.2?

SMTP heißt eigentlich Simple Mail Transfer Protocol und dient dem Verschicken und Weiterleiten von E-Mails. SMTP steht also für den Postausgangsserver eines E-Mail-Postfaches. Diesem ist ein sogenannter Port zugeordnet. Bei Übermittlung von E-Mails im Klartext ist dies Port 25.

TLS ist die Abkürzung von Transport Layer Security und sorgt dafür, dass der Transport von Daten verschlüsselt stattfindet. Das Vorgehen dient aber nicht nur der Vertraulichkeit. Zudem schützt es die Authentizität und die Integrität der Daten. Mit anderen Worten: TLS stellt sicher, dass die Daten den Transport von einem bestätigten Absender unverändert überstehen. Transportverschlüsselte E-Mails nutzen so auch nicht länger den Port 25, sondern Port 587.

TLS, SSL, HTTPS und Verschlüsselung

TLS kommt nun in verschiedenen Bereichen zum Einsatz. So sind die SSL-Zertifikate, die man für die Bereitstellung einer Website unter HTTPS benötigt, eigentlich auch TLS-Zertifikate. Man spricht nur von SSL-Zertifikaten, weil die TLS-Technik auf der des SSL basiert… Es lebe die sprachliche Genauigkeit!

Wichtig ist jedenfalls: HTTPS sorgt nur dafür, dass das Senden der in das Kontaktformular eingegebenen Daten an den Server verschlüsselt stattfindet. Der sich daran anschließende Versand per E-Mail ist von dieser Verschlüsselung nicht betroffen.

Sprachliche Genauigkeit wäre auch nicht schlecht, wenn es um den Begriff der Verschlüsselung geht. So bedeutet TLS nicht, dass die so verschickten Daten tatsächlich verschlüsselt seien. Kommt TLS für den Mailversand zum Einsatz, sind der verschickte Text und seine Anhänge hier immer noch im Klartext vorhanden. Verschlüsselt ist nur der Transport. Man könnte es sich so vorstellen – auch wenn dieses Bild nicht genau trifft: TLS macht aus der Postkarte E-Mail, deren Text der Postbote lesen konnte, nun ein Einwurfeinschreiben mit Umschlag und allem Pipapo. Soll dessen Inhalt auch noch verschlüsselt sein, braucht es weitere Techniken.

Nutzung von SMTP im Gegensatz zur PHP Mail Funktion

Wenn Sie für Ihre WordPress Website ein Kontaktformular mittels Contact Form 7 anlegen, trägt Ihnen das Plugin als Standard die Absenderadresse wordpress@IhreDomain.de ein. Diese Adresse, für die wahrscheinlich die Wenigsten von uns ein Postfach angelegt haben, verschickt die Daten des Kontaktformulars über die PHP Mail Funktion, die zu WordPress gehört. Diese PHP Mail Funktion nutzt für den Transport der E-Mail aber keineswegs TLS, bloß weil die Website mit einem SSL/TLS-Zertifikat versehen ist. Hier muss man klar trennen: Das eine verschlüsselt den Transport der E-Mail – das andere nur den Moment, in dem ein Nutzer seine Kontaktformulardaten an den Server schickt.

Um nun die TLS-Verschlüsselung für den Mailversand nutzen zu können, müssen Sie für das WordPress Kontaktformular SMTP nutzen. Das heißt, Sie brauchen eine E-Mail-Adresse, für die es ein Postfach gibt. Zudem sollte sichergestellt sein, dass der E-Mail-Server die TLS 1.2 Technik benutzt. Denn nur diese gilt als sicher vor sogenannten »Man-in-the-Middle-Angriffen«. Also jenen bösartigen Attacken, bei denen sich ein unbefugt Dritter in die Kommunikation einklinkt und dabei vorgibt, der gewünschte Kommunikationspartner zu sein.

Sie wissen nicht, ob Ihr E-Mail-Provider TLS 1.2 im Einsatz hat? Dann fragen Sie ihn am besten.

Dem WordPress Kontaktformular SMTP beibringen

Am leichtesten verklickern Sie Ihrem WordPress Kontaktformular SMTP mittels Plugin. Zwar gibt es durchaus die Möglichkeit, hier selbst Hand an den Code zu legen, und es gibt auch Anleitungen dafür. Aber hier sind wir doch in einem Bereich, der schon ein bisschen heikel ist. So sollte man auf den Aspekt achten, wo die Zugangsdaten, vor allem das Passwort, zu dem Postausgangsserver gespeichert werden. Denn die braucht WordPress nun natürlich, um über das Postfach verschicken zu können.

Die Vorstellung, dass die Zugangsdaten zu dem Postfach nun einfach in der WordPress Datenbank lagern könnten – und das auch noch im Klartext -, ist der einzige Grund, weshalb ich mit der Umstellung so lange gewartet habe. Natürlich halte ich meine WordPress Installation für so sicher, wie es halt geht. Aber das bedeutet auch, dass ein Restrisiko bleibt. Niemand ist gefeit davor, dass die Website nicht eines Tages doch gehackt wird. Und in dem Fall wäre es schon nett, wenn nicht auch noch das E-Mail-Postfach davon betroffen wäre.

WP Mail SMTP von WP Forms

SMTP Plugins gibt es mehrere. Für mich kamen also nur jene in Frage, die das Passwort des Postfaches nicht in der Datenbank speichern. WP Mail SMTP von WP Forms ist ein solches. Und mit über einer Million Nutzern offenbar auch ein beliebtes. Das Plugin rekonfiguriert nach Installation und Aktivierung die WordPress Mail Funktion und erstellt eine Einstellungsseite. Auf dieser können Sie wählen zwischen verschiedenen Anbietern, so zum Beispiel auch Googles gmail. Per »Other SMTP« können Sie aber auch Ihren eigenen Postausgangsserver hinterlegen.

Other SMTP

Das Plugin sagt Ihnen nun, welche Angaben es braucht:

  • Den Namen Ihres Postausgangsservers (SMTP Host)
  • Die Verschlüsselungsart (keine, SSL oder TLS)
  • Den Port, der sich je nach Wahl der Verschlüsselungsart automatisch einstellt
  • Die Authentifizierung, die bereits auf on steht – was auch so sein soll
  • Den SMTP Benutzernamen (SMTP Username)
  • Das SMTP Passwort

Sie müssen also drei Angaben herbeischaffen: Den Namen des SMTP Host, Ihren Benutzernamen und das Passwort. Alles sollten Sie irgendwann mal von Ihrem Hoster bekommen haben. Im Zweifel erhalten Sie die Angaben aber auch über den Kundenbereich Ihres Hosters.

Das Passwort nicht in der WordPress Datenbank speichern

WP Mail SMTP sagt Ihnen auch, was Sie tun müssen, um Ihr Passwort nicht in der WordPress Datenbank, sondern in der Datei wp-config.php zu speichern.

Die wp-config.php ist die zentrale WordPress Datei schlechthin. In ihr befindet sich die alles entscheidende Information, mit welcher Datenbank sich die Installation verbinden soll. Das macht diese Datei so wichtig, aber auch so heikel. Zugreifen können Sie auf die wp-config.php deshalb auch nicht aus dem WordPress Backend, sondern via FTP. Das heißt, Sie brauchen ein FTP-Programm wie Filezilla und geben dort die FTP-Zugangsdaten ein, die Sie von Ihrem Hoster erhalten haben. Und auch hier sollte die Verbindung mit TLS verschlüsselt sein!

Das Passwort in der wp-config.php hinterlegen

Die wp-config.php finden Sie im Stammverzeichnis Ihrer WordPress Installation. Also auf der Ebene, auf der sich auch die drei Ordner wp-admin, wp-includes und wp-options befinden.

In die wp-config.php tragen Sie nun die zwei Zeilen Code ein, die das WP Mail SMTP Plugin Ihnen nennt. Fügen Sie Ihr Passwort ein und platzieren Sie die beiden Zeilen in der wp-config.php vor die Zeile /* That's all, stop editing! Happy blogging. */

define( 'WPMS_ON', true );
define( 'WPMS_SMTP_PASS', 'IHR PASSWORT' );

Wenn Ihre wp-config.php diese Information sodann auf Ihrem Server bereitstellt, erkennt das Plugin dies und graut die Eingabe für SMTP Passwort auf seiner Einstellungsseite aus.

Nun können Sie die gemachten Angaben mit dem Email Test, den das Plugin zur Verfügung stellt, erst einmal ausprobieren. Wenn die Test E-Mail ankommt, sollte der Rest auch schon funktionieren.

Nutzt fortan das Kontaktformular SMTP und verschickt E-Mails TLS verschlüsselt?

WP Mail SMTP bietet die Option, die Nutzung der auf der Einstellungsseite gemachten Angaben zu erzwingen (Force From Email, Force From Name). Das scheint auch für bereits bestehende Contact Form 7 Formulare zu funktionieren. Dennoch habe bei meinen Kontaktformularen die wordpress@-Adresse gegen diejenige ausgetauscht, deren Postausgangsserver ich nun nutze. Schaden kann das jedenfalls nicht.

Die Sache ist nämlich die: Sie merken von der ganzen Umstellung nichts. Und hier liegt auch das Problem. Denn es ist nicht so einfach zu belegen, dass die entsprechende TLS-Verschlüsselung stattgefunden hat.

Ein Blick in die E-Mail Kopfzeilen hilft da vielleicht weiter. Aber a) muss man die erst einmal finden (im aktuellen Outlook geht das über Eigenschaften, früher waren es die Nachrichtenoptionen). Und b) muss man die Angaben dort lesen und verstehen lernen. Irgendwo in dem Wust an Informationen findet sich jedenfalls auch jene, die besagt, ob das Ganze ursprünglich per PHP Mailer verschickt wurde oder ob das WordPress Kontaktformular SMTP genutzt hat.

Ich zumindest weiß, dass mein Hoster die Nutzung von TLS 1.2 seit geraumer Zeit erzwingt. Um überhaupt noch E-Mails abrufen zu können, musste ich meinem zugegeben veralteten Windows 7-System das Ganze erst einmal beibringen.

SMTP/TLS soll Probleme bei Zustellung lösen

Der wesentliche Grund, weshalb es von der WordPress PHP Mailer Funktion verschickte E-Mails manchmal noch nicht mal in den Spam-Ordner des Adressaten schaffen, liegt meist an der Konfiguration des Servers. Der gestattet die Funktion entweder gar nicht oder unterstützt sie nicht richtig. Vielleicht sind die Einstellungen aber auch sehr streng gewählt. Wie auch immer. Das Versenden von Kontaktformular E-Mails via SMTP/TLS soll hier maßgeblich helfen.


Beitragsbild: Britta Kretschmer

2 Antworten zu „WordPress Kontaktformular: SMTP nutzen und den Mailversand verschlüsseln“

  1. Sina

    Uaaaah, SMPT als Plugin funktioniert nach einigem Hick Hack bei mir gut.
    Nun sah ich, dass man das PW in die config schreiben soll.
    Das habe ich eben getan und der wollte nochmal komplett WordPress installieren beim erneutem WordPress Dashboard-Aufruf. Waaaaaaaaaaaas war das denn bitte?
    Ich hatte nur die 2 Zeilen inkl. PW in die config an der richtigen Stelle hinzugefügt und hochgeladen.

  2. Hallo Sina,

    oje, das klingt aber alles nicht gut. Hick Hack beim Einrichten des Plugins sollte es jedenfalls schon mal nicht geben. Und das Hinterlegen des Passwortes in der config stößt sicherlich keine Aufforderung zur Neuinstallation an. Wo hier das Problem liegt, kann ich so leider nicht sagen.

    LG, bk

Schreibe einen Kommentar

Die im Rahmen der Kommentare angegebenen Daten werden von mir dauerhaft gespeichert. Cookies speichere ich nicht. Für weitere Informationen siehe bitte meine Datenschutzerklärung.

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert