Tags

#Selfhosting

Eigene Server, selbst gehostete Dienste und mehr Kontrolle ueber digitale Werkzeuge.

Wordpress: Formulardaten von Contact Form 7 via SMTP richtig versenden

Wordpress: Formulardaten von Contact Form 7 via SMTP richtig versenden

Wie können in Wordpress Formular-Komponenten wie http://wordpress.org/plugins/contact-form-7/ oder das (kostenpflichtige) http://www.gravityforms.com funktionieren, wenn der Wordpress-Server nicht die Mails verarbeitet? Weil beispielsweise ein externer Mailserver für die Zustellung eingerichtet ist? Wir haben die Lösung. Vielleicht nicht lehrbuchreif. Dafür funktioniert's – sogar mit den "richtigen" Absender-Namen und E-Mail-Adresse.

Es kommt öfter vor, als einem bewusst ist, dass der Mailserver einer Domain nicht vom selben Server gestellt wird. Wir bei der workin media nutzen beispielsweise die http://www.google.de/intx/de/enterprise/apps/business/ um effektiv und zentral unsere Mails verwalten zu lassen. Das heißt aber auch, dass Wordpress-Formulare nicht mehr funktionieren, da diese standardmäßig mit der php-Funktion http://php.net/manual/de/function.mail.php verschickt werden wollen. Ob dies klappt oder nicht, bekommt ihr dadurch zu spüren, ob ihr bei neuen Kommentaren, Updates, etc. von eurer Seite per Mail benachrichtigt werdet oder nicht (natürlich auch via http://php.net/manual/de/function.phpinfo.php).

Oder eben, weil Mails aus Formularen nicht ankommen. Und das ist tatsächlich etwas tricky, weil beispielsweise Contact Form 7 dem Nutzer gute Miene zum bösen Spiel macht und zwar auf der Seite anzeigt, dass die Nachricht versendet. Es aber nicht macht.

Die Lösung: Mailversand via SMTP. Da können wir euch eine Lösung anbieten, indem ihr im Code rumflickelt. Oder ein Plugin, was das für euch übernimmt.
Die Codelösung

Zunächst editiert ihr eure config.php im Stammverzeichnis der Wordpress Installation und fügt folgenden Code ein:

// SMTP
function smtp_wp_mail($phpmailer) {
$phpmailer->IsSMTP(); // telling the class to use SMTP
$phpmailer->Host = "smtp.example.com"; // set the SMTP server host
$phpmailer->Port = 465; // set the SMTP server port
$phpmailer->SMTPSecure = "ssl"; // enable SMTP via SSL
$phpmailer->SMTPAuth = true; // enable SMTP authentication
$phpmailer->Username = "wordpress@example.com"; // set the SMTP account username
$phpmailer->Password = "PASSWORD"; // set the SMTP account password
}

Die entsprechenden Felder müsst ihr mit den Daten eures externen Mailproviders befüllen.

Als nächstes müsst ihr in der wp-includes/pluggable.php Wordpress noch klar machen, dass ihr Mails nun via SMTP verschicken wollt.  Sucht bitte $phpmailer->IsMail(); und ersetzt die Zeilen mit der folgenden Version:

// Set to use PHP's mail()
// $phpmailer->IsMail();

//SMTP
smtp_wp_mail($phpmailer);

Bei jeder Wordpress-Aktualisierung können diese Änderungen verloren gehen.
Die Plugin-Lösung

https://workin-media.hnz.io/wp-content/uploads/2014/06/smtp-mail11.png WP SMTP Mail im Dashboard

Für einige ist die Plugin-Lösung der einfachere Weg, wobei das Plugin nichts anderes macht, als wir weiter oben beschrieben. Nur eben im Wordpress-Backend in einer netten Formular-Ansicht. Wir nutzen hier http://wordpress.org/plugins/wp-mail-smtp/.

Das Problem, was es beim SMTP-Versand geben kann, ist ärgerlich: Viele Server verbieten es (zu Recht!) Mails unter falschen Namen zu versenden.

Wenn allerdings ein Nutzer ein Kontaktformular auf eurer Seite verwendet, wollt ihr auch, dass das Kontaktformular von eben jener Person kommt. Martina Musterfrau (martina@musterfrau.de) benutzt dann zwar das Formular – die Mail von Wordpress kommt aber über den SMTP-Account, den wir vorher definiert hatten. Und wenn ich dann Frau Musterfrau schnell antworten möchte und nicht daran denke, schreibe ich leider dem SMTP-Account eine Mail.

Es gibt allerdings noch andere Probleme: Beispielsweise kann man so Kontaktformulardaten nicht an Ticketsysteme wie http://osticket.com.de, http://www.otrs.com/?lang=de oder https://www.zendesk.de übergeben, da durch die falsche Zuweisung die Systeme ad absurdum geführt werden und immer eine händische Korrektur des Absenders nötig wäre. Dafür, dass solche Systeme Arbeit abnehmen sollen und eben nicht zusätzliche verursachen, war das für uns nicht tragbar.
Die Lösung bei Contact Form 7

https://workin-media.hnz.io/wp-content/uploads/2014/06/contact-form-711.png Zusätzliche Kopfzeilen

Bei  Contact Form 7 gibt es das von mir sträflich übersehene Zusatzfeld "Zusätzliche Kopfzeilen", was beispielsweise dazu gedacht ist, Antwortadressen hinzuzufügen. Dann bekommt ihr zwar immer noch eine Mail von eurem Account. Wenn ihr Antwortet, wird aber dem richtigen Absender geantwortet. Außerdem funktioniert die Weiterleitung zu beispielsweise Zendesk perfekt.

Gebt einfach (mit den Standardformular-Tags) folgenden Code in das Feld ein:

Reply-To: <>

Denkt an das Leerzeichen zwischen den beiden Tags. Und alle sind glücklich.


So schützt ihr WordPress

So schützt ihr WordPress

Bereits über http://marketpress.de/2013/10-jahre-wordpress-wir-feiern-du-kannst-gewinnen-inkl-infografik/ soll WordPress weltweit verwendet werden. Das ist schon eine ziemlich große Hausnummer. Kein Wunder also, dass das Content-Management-System auch in illegalen Kreisen äußerst beliebt ist. Oft passiert es daher, dass WordPress gekapert wird und der Administrator anfangs davon gar nicht mitbekommt – bis Google oder eine andere Suchmaschine plötzlich von der Webseite warnt, weil sie Viren verbreitet.

Wir geben euch hier 10 nützlichen Tipps, wie ihr eure WordPress-Installation besser schützen könnt.
Nutzt auf gar keinen Fall "admin" als Benutzer

Bis zur 3.0-Version von WordPress, wurde der Admin-Useraccount automatisch generiert. Inzwischen kann man zwar den Nutzernamen frei wählen, viele nehmen aber dennoch den Vorschlag, der voreingestellt ist. Das ist fatal: Wenn ihr "admin" als Nutzer habt und zusätzlich ein unsicheres Passwort, ist es für Angreifer mehr als leicht eure Installation zu übernehmen, weil sie ja einen Teil der Anmeldung (den Namen) schon kennen.

Außerdem solltet ihr die Autorenseite des Admins verschleiern. Was bringt es denn, zwar den Admin-Namen zu ändern, ihn aber im Klartext in der URL eurer Autorenseite anzuzeigen? Die lautet nämlich standardmäßig auch http://eureseite.de/author/username.

Um den Namen in der URL zu ändern, benötigt ihr Zugriff auf eure WordPress-Datenbank. In der Tabelle wp_users gibt es den Eintrag user_nicename. Diesen Namen nutzt WordPress um den Link für die Autorenseite zu generieren. Ihr könnt ihn dort in einen anderen Namen umändern (benutzt bitte keine Sonderzeichen sondern nur Buchstaben, Zahlen, Unterstriche und Minuszeichen).

Wenn ihr das gemacht habt, kann man von außen nicht mehr den Namen des Administrator-Accounts ablesen.
Verwendet sichere Passwörter

123456 und passwort sind keine sicheren Passwörter, liebe Leute!
Ladet aktuelle Software

Updates, Updates, Updates! WordPress und die verwendeten Plugins müssen ständig weiterentwickelt werden. Und zwar nicht nur um die Bedienung und das Aussehen zu verbessern, sondern um Sicherheitslücken zu stopfen. Denn das Böse schläft nie. Deshalb aktualisiert so schnell wie möglich eurer WordPress und die installierten Plugins. Achtet auch darauf, dass ihr keine Software bei euch draufhaut, die seit zwei Jahren nicht aktualisiert wurde. Denn auch da können sich gefährliche Einfalltore befinden.
Kontrolliert Themes und Plugins

Weniger ist manchmal mehr. Nutzt bitte nur die Plugins, die ihr auch tatsächlich benötigt. Aktivierte Komponenten, die nicht gebraucht werden verlangsamen nicht nur eure System, sie machen auch das Aktualisieren unnötig kompliziert. Als Richtlinie solltet ihr euch merken, so wenige fremde Plugins wie möglich zu installieren.

Auch ist es wichtig, etwas Hirnschmalz zu investieren, ob die Quelle, von der ihr das Plugin oder Theme habt, vertrauenswürdig ist.

Wenn ihr euch unsicher seid, könnt ihr Plugins mit http://wordpress.org/plugins/antivirus/ testen und Themes mit http://wordpress.org/plugins/theme-check/.
Schützt das Backend

Wer sich als Angreifer bis ins Backend durchschlagen konnte, hat die volle Kontrolle über eure WordPress-Installation. Deshalb geben wir euch hier mehrere Vorschläge, euch ordentlich abzusichern.

Schützt zunächst euer Backend per .htaccess (Verzeichnisschutz). Zwar wäre es am logischsten, den gesamten Ordner wp-admin zu schützen; dies hat bei manchen Kunden aber nicht richtig funktioniert. Woran das liegt? Keine Ahnung. Deshalb schützt am Besten die wp-login.php, damit hatten wir noch keine Probleme:

protect wp-login.php

AuthName "Admin-Bereich"
AuthType Basic
AuthUserFile /pfad-zur/.htpasswd
require valid-user

Jedes mal, wenn ihr nun http://www.eureseite.de/wp-admin aufruft, müsst ihr zusätzlich noch die Nutzerdaten der .htpasswd eintragen. http://www.htpasswdgenerator.de/.

Doppelt hält bekanntlich besser, weshalb ich euch dringend noch zu einer Zwei-Wege-Authentifizierung rate. Das Prinzip ist ganz einfach: Zu einem erfolgrteichen Login benötigt ihr nicht nur ein Passwort, sondern noch eine zusätzliche Passphrase, die euch per App oder SMS zugesendet werden kann. Wie die TAN beim Online-Banking. http://wordpress.org/plugins/google-authenticator/screenshots/.
Macht Backups

Zwar bieten viele Provider (wie auch wir) eine automatische Sicherung der Daten an, es kann aber nicht schaden, seine Dateien selbst zu sichern. Eine typische Installation besteht aus den Dateien auf dem FTP und der Datenbank. Ein automatisiertes Plugin, das wir empfehlen können, ist http://wordpress.org/plugins/backwpup/. Hier könnt ihr eure Sicherungskopien direkt in der Dropbox speichern lassen und genau einstellen, wann und was dort hingeschrieben wird.
Spiegelt eure Installation lokal

Wir legen euch zusätzlich ans Herz, ab und an mal eure Installation lokal zu spiegeln – oder in einer Entwicklungs-Umgebung auf dem Server. Denn dort könnt ihr rumspielen, ohne dass es gleich jeder im Live-System sehen kann. Ihr könnt Plugins testen, überprüfen, ob nach Updates oder zusätzlichen Plugins noch alles so funktioniert, wie ihr es euch wünscht. Und das tolle: Euch steht nicht gleich der kalte Schweiß auf der Stirn, wenn etwas nicht so funktioniert. Kurz und knapp: Baut niemals in der Live-Umgebung!
Nutzt Sicherheits-Plugins

Security-Plugins für WordPress gibt es wie Sand am mehr. Wir können an dieser Stelle deshalb keine abschließenden Empfehlungen geben, sondern euch an unseren Erfahrung teilhaben lassen.
Wordfence Security

http://wordpress.org/plugins/wordfence/: Das Plugin schützt eure Seite mit einer Firewall und kümmert sich um viele Security-Einstellungen. Wir nutzen es. Wir mögen es.
Better WP Security

Das http://wordpress.org/plugins/better-wp-security/ checkt eure bisherigen Security-Bemühungen und bietet mit der One-Click-Protection einen einfachen Weg, eure Webseite zu schützen. Nicht so groß wie Wordfence, dafür einfacher zu bedienen.
Exploit Scanner

Der http://wordpress.org/plugins/exploit-scanner/ schaut sich Dateien auf dem Server und auch Teile der Datenbank. Außerdem überprüft es die Liste aller aktiven Plugins.

Der Google-Reader ist bald nicht mehr. Na und?

Der Google-Reader ist bald nicht mehr. Na und?

Man nannte mich Fanboy. Mein Leben habe ich jahrelang über Google organisiert. Kalender, Mail-Account. Bilder hatte ich bei Picasa. Und alle meine Endgeräte waren so eingerichtet, dass mir die Daten immer und überall zur Verfügung standen, selbst wenn da ein Apfel hintendrauf war. Und, ja klar, meine RSS-Feeds habe ich im Google-Reader gesammelt.

RSS... was?! Kennt fast niemand. Hat man schon mal gelesen, klar. Aber nur so halb wahrgenommen. Wahrscheinlich hat Google deshalb den Dienst auch eingestellt. Oder zumindest angekündigt, dies zu tun. Denn richtig mainstream ist das alles nicht so wirklich geworden.

Das ging bisher immer wunderbar im Google-Reader; weil er offen war und von vielen Programmen und Apps benutzt werden konnte.

http://de.wikipedia.org/wiki/RSS bildet eine Möglichkeit, kurze Ausschnitte oder lange Artikel maschinenlesbar aufzubereiten. Das heißt: Ihr interessiert euch für ein paar Blogs, für ein paar Ressorts auf Newsseiten und müsst dank RSS nicht alle Seiten ansteuern, sondern könnt sie euch ganz bequem in einem RSS-Reader anschauen. Mir spart das unheimlich viel Zeit und bildet eine Schnittstelle, die ich für Twitter, Facebook und Linkorganisation nutze. Denn selbst ich muss versuchen, in mein heißgeliebtes Chaos etwas Ordnung reinzubekommen, um nicht gänzlich durchzudrehen.

Ja okay. Es hat sich ja angekündigt, dass Google den Reader nicht mehr so wirklich mag: Seit Ewigkeiten haben die Kalifornier den Dienst nicht weiterentwickelt und vor zwei Jahren sogar böse beschnitten, um Google+ zu pushen. Und natürlich gab es deshalb auch schon die ein oder anderen Gerüchte, dass Google den Dienst bald einstellen könnte. "Eigentlich entschieden sie sich irgendwann im Jahr 2010, den Service zu killen", https://www.quora.com/Google-Reader-Shut-Down-March-2013/Why-is-Google-killing-Google-Reader?srid=2Rw&=&share=1. Der ehemalige Produktmanager vom Reader zählt auf, wie das Team über die Jahre ausgeblutet ist: 2008 wurde es abgezogen um OpenSocial zu bauen, 2009 für Buzz und 2010 sollten sie Google+ mitentwickeln. "Ironischerweise glaube ich, dass Google das Reader-Team abgezogen hat, um diese anderen Social-Services zu entwickeln, weil das Team einfach 'Social' verstanden habe".

Und heute war es dann soweit: http://googleblog.blogspot.de/2013/03/a-second-spring-of-cleaning.html. Der Google-Reader wird eingestellt. Weshalb ich auch endlich einen Grund hatte mich um Alternativen zu kümmern. Und dabei bin ich auf eine wunderbare Lösung gestoßen: Das kostenpflichtige http://www.feedafever.com/.

Fever finde ich aus mehreren Gründen genial:

  • Man hostet das Script selbst
  • Die Einrichtung ist denkbar einfach
  • Das Konzept ist innovativ
  • Andere Apps bieten schon eine Fever-Unterstützung an

Erhöhte Temperatur: Je mehr Quellen sich auf einen Artikel beziehen, umso heißer ist der auch.
Erhöhte Temperatur

Eine simple und gerade deswegen auch geniale Idee: Fever wertet nämlich gleich einmal aus, wie viele Feeds sich eigentlich auf die gleiche Quelle beziehen. Denn wenn viele über etwas schreiben, dann ist das ja bestimmt auch wichtig. Fever gibt einem zusätzlich noch die Möglichkeit, ob man die heißesten Artikel des Tages, der Woche, etc. anzeigen zu lassen. Eine Art privates http://www.rivva.de, sozusagen.

Um die Ergebnisse noch zu präzisieren, kann man in Fever sogenannte Sparks anlegen. Das sind Feeds, die nicht im Hauptfeed angezeigt werden, aber trotzdem die Temperatur von den Artikeln erhöhen können. Alles klar? Da kann man beispielsweise die Feeds aus Pinboard, Delicious oder anderen Bookmarkin-Dienste reinhauen. Meistens sind die Links ja toll, die Präsentation (nur der Linktext) aber wenig ansprechend. http://pinboard.in/u:floyboy. Haut man von interessanten Leuten die Bookmarks in Fever, dann werden die Ergebnisse natürlich auch interessanter – und man muss sich nicht durch Linkwüsten quälen.
Übersichtliches Design

Drei Spalten sollen für die Übersicht sorgen.

Zum Design kann man eigentlich nix sagen; denn es existiert nicht so wirklich. Shaun Imman ordnet das Feedchaos in drei Spalten: Die Ordner, die Quellen und die Beiträge. Ein Menü steht etwas uninspiriert ganz links zur Verfügung.

Aber es funktioniert. Auch wenn mir die Farbauswahl, die uns der Entwickler vorgibt, nicht so wirklich zusagt, ist die GUI durchdacht, logisch und übersichtlich. Und man kann es gänzlich über die Tastatur bedienen.

Am iPhone kann man Fever inzwischen schon mit der Reeder-App verbinden. In den Mac-Versionen ist das leider noch nicht möglich.
Alles in der eigenen Hand

Und mit der größte Vorteil: Wenn ich den Dienst einstellen möchte, kann ich das tun. Denn: Ich bin mit dem Dienst erst einmal autark. Und das ist ein tolles Gefühl.

Jetzt brauche ich nur noch eine funktionierende Alternative für die Google-Docs. Kalender synce ich nun mit der Kalender-App von Apple, für Mails habe ich meinen eigenen Server, Bilder kommen in die Dropbox. Google ist mich fast ganz los. Ganz unemotional. Vom Fanboy bis zu diesem Punkt hat das nicht einmal zwei Jahre gedauert.

Nicht schlecht, Google.

Open Social Media Monitoring

Open Social Media Monitoring

Die beste Strategie im Social Web bringt herzlich wenig, wenn man die Stimmungen nicht erfasst und regelmäßig schaut: Was interessiert wen und vor allem auch noch: wie sehr interessiert es denn? Um das alles zu monitoren gibt es Tools wie Sand am Meer. Auf der einen Seite gibt es die kostenpflichtigen Tools. Goldmann Interactive (gehört zur http://de.wikipedia.org/wiki/Goldbach_Group) hat 2012 diese Übersicht aus kostenpflichtigen Tools zusammengestellt. Die Infografik gibt's der Lesbarkeit halber am Ende des Artikels.

Daneben gibt es auch haufenweise mal bessere, mal schlechtere Opens Source Tools. Der größte Unterschied zu den kostenpflichtigen: Statt eines Tools, muss man sich die wichtigsten Bausteine selbst zusammensuchen. Das klingt nach Arbeit – und die haben euch Christine Heller und Tim Krischak auf dem Monitoringcamp in Hamburg abgenommen. 

http://de.slideshare.net/tkrischak/kostenlose-social-media-monitoring-tools from http://de.slideshare.net/tkrischak
Wie man "richtig" monitort, das ist nicht nur einen eigenen Blogbeitrag wert, sondern viel mehr: Ein eigenes Blog. Und da sind andere eindeutig besser als ich.

Dennoch will ich euch auf ein Tool hinweisen, dass ich jetzt seit ein paar Wochen nutze, und von dem ich doch sehr angetan bin: Das http://openstream.github.com/open-social-media-monitoring/. Zum einen ist es Open Source und läuft auf dem eigenen Server. Zum anderen kann man auch noch ganz genau per Cronjob definieren, wie oft das Tool die Daten aus den sozialen Netzwerken auslesen soll.

Fazit: Kleines Tool, bei dem man die volle Datenkontrolle hat. Die geringe Versionsnummer bemerkt man vor allem bei der Installation.