Dies ist die archivierte Version des Blogs vom 05.01.2017. Aktuelle Beiträge findest du unter thomas-leister.de
 

PHP-Anwendungen unter eigenen Benutzern ausführen

Kaum einer meiner Server läuft nur mit einer einzigen Anwendung. Der Webserver, auf dem dieser Blog läuft, beherbergt nicht nur thomas-leister.de, sondern auch noch zwei andere Blogs und weitere PHP-basierte Webdienste, die ich zur Verfügung stelle. Aus Sicht eines Hackers ein lohnenswertes Ziel: Wird über eine PHP-Anwendung wie z.B. einen schlecht gepflegten WordPress-Blog Zugriff auf das Dateisystem des Servers erlangt, kann der Hacker nicht nur die unsichere Webapplikation angreifen, sondern auch alle anderen Anwendungen, die unter dem PHP-User laufen. Aus diesem Grund ist es sinnvoll, die PHP-Anwendungen etwas voneinander abzuschotten, sodass ein Angreifer von der einen PHP-Anwendung aus keine andere PHP-Anwendung beeinträchtigen kann. Dies erreicht man, indem man für jede Anwendung einen eigenen User anlegt, der PHP ausführt. Die Verzeichnisrechte werden so gesetzt, dass nur der jeweils zugedachte PHP-User Zugriff auf die Anwendungsdateien hat und keine weiteren Änderungen im Dateisystem vornehmen kann.

Weiterlesen ›


Anleitung für Let’s Encrypt: Kostenlose TLS Zertifikate für alle

Das Let’s Encrypt Projekt (hinter dem unter anderem Mozilla, Facebook und Cisco als Sponsoren stecken) ist gestern in den Public Beta Betrieb übergegangen. Von nun an können nach belieben kostenlose TLS (aka SSL)-Zertifikate für die eigenen Domains erstellt werden. Für den Erhalt eines Zertifikats sind nur wenige, einfache Schritte erforderlich, die ich im Folgenden erkläre:

Weiterlesen ›


Nginx: PHP-FPM unter Ubuntu Server 14.04 installieren und einrichten

Nachdem die grundlegende Einrichtung des Nginx Webservers in diesem Beitrag bereits erklärt wurde, soll nun auf die beliebte Programmiersprache PHP eingegangen werden. Die meisten Webanwendungen (Foren, Blogsoftware, CMS) benötigen für den Betrieb PHP-Unterstützung. Im Zusammenspiel mit Nginx soll hierfür PHP-FPM genutzt werden.

Weiterlesen ›


Nginx: Installation und Konfiguration unter Ubuntu 14.04

Dieser Beitrag soll euch beim Einstieg in die Nginx Webserver Welt helfen – vor allem auch jenen unter euch, die das Apache Imperium verlassen wollen und auf Nginx umsteigen wollen. Die Konfigurationssyntax unterscheidet sich komplett von der des Apache Webservers, ist aber mindestens so einfach gehalten und einfach verständlich. Hier soll es um die ersten Schritte unter Ubuntu Server 14.04 gehen. Wenn ihr ein anderes Linux OS auf eurem Server nutzt, müsst ihr diese Seite aber nicht verlassen – Die Konfiguration an sich bleibt dieselbe. ;)

Weiterlesen ›


Nginx Access Logs: IP-Adressen entfernen oder Logs abschalten

Nachdem ich zu dem Thema schon einen Beitrag für den Apache Webserver veröffentlicht und meinen Server heute Nacht auf Nginx umgestellt habe, darf natürlich auch die Umstellung für Nginx nicht fehlen ;)

Wie ich im Beitrag zum Apache Webserver schon erwähnt habe, ist laut TMG (=> TMG §15) das Speichern von IP-Adressen über den Webserver nicht zulässig, außer es ist zwingend Notwendig, um dem Benutzer einen Dienst anbieten zu können. Die Ausnahme trifft bei meinem Blog (und den meisten anderen) aber nicht zu, sodass ich gesetzlich verpflichtet bin, die IP-Adressen meiner Besucher aus den Logfiles zu entfernen.

Weiterlesen ›


Datenschutz: Apache Logfiles anonymisieren oder abschalten

Nach deutschem Recht dürfen Webserver keine IP-Adressen abspeichern – Es sei denn, es ist z.B. aus geschäftlichen oder technischen Gründen zwingend notwendig. (=> TMG §15)

Das gilt sowohl für die Kommentarfunktion z.B. in WordPress als auch für die Logfiles, die von Apache angelegt werden. Die meisten Apachen sind leider falsch eingestellt und werden den Datenschutzgesetzen damit nicht gerecht. Mit ein paar Zeilen Konfiguration kann man die Logfiles seines Webservers aber anonymisieren oder sogar ganz abschalten.

Weiterlesen ›


Apache Reverse Proxy (auch mit SSL Support zum Zielserver) einrichten

Ein Apache Webserver kann durch wenige Zeilen zusätzlicher Konfiguration als Proxy vor einem anderen Webserver dienen. Das kann man sich z.B. bei Serverumzügen zunutze machen. Solange die neue Server-IP zu einer Domain noch nicht durch das DNS an alle Clients verteilt wurde, kann man die Besucher einfach am alten Server abfangen und den Server anweisen, die Webseiten aber vom neuen Server abzuholen und sie den Besuchern dann zu präsentieren. Der alte Webserver gibt die Dokumente dann nicht mehr direkt an den Besucher aus, sondern ist nur noch die Vermittlungsstelle zwischen dem Benutzer und dem neuen Server.

Weiterlesen ›


Apache2: SSL-verschlüsselte Verbindungen ermöglichen (Ubuntu 14.04)

Seit dem Bekanntwerden der flächendeckenden, verdachtslosen Überwachung durch die NSA und andere Geheimdienste gewinnt Verschlüsselung im Internet an Bedeutung. Vor allem die Kommunikation zwischen Browser und Webserver wird verstärkt gesichert, um privates privat zu halten. Eine solche SSL-Verschlüsselung kann auch für den eigenen Apache Server eingerichtet werden. Benötigt wird dafür das Apache Modul „ssl“:

Weiterlesen ›