FTP Zugang zu Webserver absichern: FTPS auf Debian Server aktivieren

Wie der ein oder andere vielleicht schon in meinem Google+ Post gelesen hat, ging es gestern beim WP Meetup Potsdam um das Thema Sicherheit. Eines meiner wichtigsten Anliegen war hierbei, ein verschlüsselter Zugang per FTP, damit das Passwort nicht einfach abgefangen werden und somit der Server infiziert werden kann.

Konfigurieren des FTPS Zugangs

Zuerst einmal muss man die grundlegende Konfiguration für den Zugang für FTPS erstellen. Die meisten FTP Server sind nämlich nicht ab Werk darauf ausgelegt, auch per SSL verschlüsselte Verbindungen zu akzeptieren. Ich zeige die Einrichtung hier Beispielhaft an meinem Server „Debian GNU/Linux 6.0.9 (squeeze)“ und dem FTP-Server „ProFTPD Version 1.3.3a“, der darauf verwendet wird. Bei euch können sich einige Details unterscheiden, aber grundsätzlich wird es sehr ähnlich ablaufen.

Zuerst einmal müsste ihr die TLS Konfigurationsdatei für den ProFTPD Server anpassen. Dazu öffnet ihr diese einfach per Konsole z.B. im Vim:

Weiterlesen →

Meine Session beim WP Camp Berlin 2013 – Performance-Optimierung mit Mod_Pagespeed

Am 9. November war es endlich soweit. Das WP Camp 2013 fand wieder in Berlin statt. Ich war dieses Jahr nicht nur wieder Mitglied des Organisationsteams, sondern habe es mir auch nicht nehmen lassen, selbst eine Session zu halten. Das Thema war „Performance-Optimierung mit Mod_Pagespeed“.

Letztes Jahr wurden ja nur alle Sessions aus dem Beuth-Saal aufgezeichnet. Wir haben es dieses Jahr geschafft aber, dass alle Sessions aufgezeichnet werden konnten. Somit könnt ihr euch auch meine Session hier in voller Länge ansehen. Einen großen Dank an Axel Becker für das Zusammenschneiden von Video und Folien. Aber jetzt genießt erst einmal das Video:

Weiterlesen →

Umlaute und Sonderzeichen in Vim reparieren

Ich verwalte einige Linux-Server per SSH und nutze dabei als Editor immer Vim. Seit ein paar Wochen habe ich aber auf einem Server das Problem, dass sämtliche Sonderzeichen, die ich eintippe, zu einem sehr merkwürdigen Ergebnis führen. Auch Sonderzeichen, die schon in der Datei vorhanden sind, werden nicht korrekt dargestellt. Ich war mir ziemlich sicher, dass es ein Problem mit UTF-8 ist, da beim Löschen solcher Zeichen, jedes Byte einzeln gelöscht werden konnte. Alle Einstellungen meiner SSH Clients (egal ob Windows, Linux oder Mac), standen aber korrekt auf UTF-8.

Die einfache Lösung

Glücklicherweise findet man ja für jedes Problem eine passende Lösung. Alles was man tun muss, ist das Encoding für Vim auf UTF-8 zu stellen. Das macht man am besten in der .vimrc Datei (entwerder in der systemweiten oder ein der eigenen). Ich habe also nur folgende Zeile einfügen müssen:

set encoding=utf-8

Jetzt werden alle Umlaute und Sonderzeichen wieder korrekt angezeigt und ich kann wieder mal schnell per SSH Änderungen an den diversen Seiten vornehmen. Ich verstehe allerdings nicht, wieso UTF-8 nicht als Standard eingestellt ist oder wieso nicht einfach das Encoding der SSH-Sitzung verwendet wird.

JavaScript Fehler im Backend durch schlecht programmierte Plugins beheben

Die Vielfalt an Plugins für WordPress ist enorm. Leider sind unter diesen tausenden von Plugins auch solche, die zu Problemen führen können, da sie schlecht programmiert sind. Ich bin mal ganz ehrlich: Den Fehler, den ich in diesem Post beschreibe, habe auch ich bei meinem ersten Plugin gemacht, einfach aus dem Grund, dass ich mich nicht genügend in die Materie der Hooks eingelesen habe.

Die Ursache für JavaScript Probleme im Backend

Viele Plugins benötigen JavaScript und die Dateien werden über die Funktion wp_enqueue_script() eingebunden. Was man allerdings beachten muss ist der Hook, den man verwendet, um diese Funktion auszuführen. Viele Plugins, die ich gesehen habe, nehmen hier leider den falschen Hook. So sehe ich oft diese Einbindung:

Weiterlesen →

Auch nach 4 Jahren noch kein Ende in Sicht

Mein Blog wird heute 4 Jahre alt. Beim letzten Geburtstagspost hatte ich ja schon eingestehen müssen, dass ich nicht mehr so viel gepostet habe, wie in den ersten beiden Jahren. Aber mir fällt es im Moment etwas schwer, die Zeit zu finden, um mal wieder längere Artikel zu schreiben.

Nichts desto trotz habe ich seit der langen Pause Ende Februar schon wieder zwei Artikel fertig bekommen und einige sind schon fast so weit, veröffentlicht zu werden. Thematisch habe ich in der Vergangenheit oft über SASS bzw. Compass geschrieben, da ich seit Anfang des Jahres damit einiges an Erfahrung gesammelt habe und von der Sprache absolut überzeugt bin. Gerade die Programmierung von Mixins hat es mir angetan. Einige davon findet ihr in meinem Gist Account und einige mehr warten noch darauf gepostet zu werden.

Wer meinen Blog schon länger aufmerksam liest, der kennt wohl auch meine kleine Statistik zu jedem Geburtstag zu den erfolgreichsten Artikel im vergangenen Jahr und insgesamt. Auch in diesem Jahr möchte ich euch wieder jeweils die Top 3 präsentieren:

Weiterlesen →

WordPress Backup zu Dropbox, Amazon S3, Rackspace und SugarSync in BackWPup aktivieren

Ich bin schon lange überzeugter Nutzer des Backup-Plugins BackWPup von Daniel Hüsken. Dieser hat das Projekt mittlerweile zu den Profis von Inpsyde mitgenommen und eine recht umfangreiche Pro-Version entwickelt. Mir hat bisher ja eigentlich die kostenlose Version für meinen kleinen Blog ausgereicht. Seit ich meinen Blog aber auf einen neuen Server umgezogen habe, fehlte mir eine sehr wichtige Funktion im Plugin: Die Sicherung zu Cloud-Speicherdiensten wie Dropbox, Amazon S3, Rackspace und SugarSync.

Ablagemöglichkeiten vor der Reparatur

Mein neuer Hoster hat schon einen sehr guten Backup-Mechanismus und eigentlich wäre es kein Problem, die Daten direkt auf meinem Webserver abzulegen. Aber ich fühle mich doch etwas sicherer, wenn das Backup nicht auf dem System nur eines Unternehmens liegt. Denn wenn es auf allen Systemen zu einem Datenverlust kommt, dann ist eben auch mein Backup weg. Folgende Möglichkeiten standen mir nach der Installation des Plugins zur Auswahl:

Weiterlesen →

Melde dich noch heute für das WP Camp 2013 an!

Auch in diesem Jahr findet das WP Camp wieder in Berlin an der Beuth Hochschule statt. Als Datum haben wir dieses Jahr den 9. November ausgesucht. Wie auch im letzten Jahr bin ich wieder Teil des Organisationsteams und freue mich, viele von euch wieder dort zu treffen.

Vor nicht einmal einer Woche haben wir offiziell die Registrierung gestartet. Mittlerweile sind schon über ein Drittel der Plätze weg. Ihr solltet also nicht zu lange warten, euch für das WP Camp anzumelden.

wpcamp-restplaetze-164Restplätze: Stand vom 12.06.2013 00:00 Uhr

Die Anmeldung ist wie auch im letzten Jahr sehr einfach. Auf der Registrierungsseite zum WP Camp 2013 habt ihr die Möglichkeit, euch als neuer Teilnehmer anzumelden. Dazu bezahlt ihr einfach die Teilnahmegebühr (auch in diesem Jahr wird der gesamte Überschuss gespendet). Anschließend könnt ihr einen Account erstellen und euch auf der Seite anmelden.

Wenn ihr schon im letzten Jahr dabei gewesen seid, ist es sogar noch einfacher. Dann meldet ihr euch einfach an eurem Profil an, und findet dort den Button zum Bezahlen.

Also wartet nicht zu lange und meldet euch bald an, damit ihr auch mit Sicherheit einen der begehrten Plätze bekommt. Wir werden auch bald damit starten, die Sessionvorschläge einzusammeln. Wenn ihr euch registriert habt, könnt ihr auch sehr gerne ein passendes Thema vorschlagen. Wir freuen uns schon jetzt auf eure Ideen!

CSS3 Animationen mit SASS Mixins einfach umsetzen

Vor ein paar Wochen zum ersten Mal CSS3 Animationen eingesetzt. Dabei kamen dann wieder die obligatorischen Vendor-Prefixes ins Spiel. So etwas ist aber für einen Webentwickler wie mich nicht gerade zufriedenstellend und normalerweise nimmt einem SASS die Sache ja ab. Leider habe ich für CSS Animations keine Standard-Mixin in SASS bzw. Compass gefunden. Auch bei Github gab es keine allgemeinen Lösungen. Dort wurden meist nur für ganz spezifische Animationen Mixins angeboten.

Mixins für Animationen

Da eine Animation viele Eigenschaften kennt, habe ich mit selbst drei kleines Mixins geschrieben, die für so gut wie alle Anwendungsfälle ausreichen sollten. Man muss zwar jede Eigenschaft einzeln definieren, hat damit aber volle Freiheit bei der Gestaltung der Animation und muss nicht auf fest definierte Mixins für bestimmt Animationen zurückgreifen. Die Mixins sind wie folgt definiert:

Weiterlesen →

Mobile First Design mit SASS für alte Internet Explorer umsetzen

Wie ich euch ja schon in meinem letzten Artikel erzählt habe, setze ich seit einiger Zeit SASS bzw. Compass ein. Für das Redesign einer Website habe ich mich für den Mobile Fist Ansatz entschieden. Für diejenigen von euch, die damit nichts anfangen können: Bei Mobile First entwickelt man ein Design zuerst für kleine Bildschirmauflösungen, also z.B. Smartphones, und entwickelt dieses dann Schrittweise bis zur Desktop-Version weiter.

Das Problem dieses Ansatzes mit älteren Internet Explorern

Für die technische Umsetzung verwendet man immer CSS Media Queries. Man definiert bei Mobile First dann zuerst die Eigenschaften für mobile Endgeräte und anschließend über weitere Anweisungen in einem Media Query die Anweisungen für die größeren Auflösungen. In SASS könnte es vereinfacht wie folgt aussehen:

Weiterlesen →

SASS oder Compass-Dateien in eclipse automatisch beim Speichern kompilieren

Ich arbeite seit einigen Wochen mit Compass und bin bisher begeistert. Eine Sache die mich anfangs aber gestört hat war die Notwendigkeit die Dateien immer kompilieren zu müssen. Meine erste Idee war es, die Dateien von einem PHP-Skript direkt auf dem Server kompilieren zu lassen. Dazu habe ich dann sogar mit PHPSass einen passenden Kompiler gefunden. Aber irgendwie war ich dann von der Idee doch nicht so begeistert.

Kompilieren über einen Watch-Prozess

Wer SASS bzw. Compass kennt, der wird sich jetzt wohl fragen, wieso ich nicht einfach einen Watch-Prozess starte, der ja genau dafür da ist. Gestartet wird er innerhalb des Projekts wie folgt:

Weiterlesen →