Moodle®: Permanente SSL-Verschlüsselung mit SPDY


SPDY Support

SPDY Support

Die LEADING INTERACTIVE Lernplattform (elearn.leading-interactive.de) verschlüsselt die Zugriffe jetzt permanent und setzt dafür auf die SPDY-Technik (sprich Speedy), die maßgeblich von Google entwickelt wurde und inzwischen als Grundlage für die Entwicklung der HTTP/2.0-Spezifikation dient.

Trotz des noch offiziellen Beta-Status des SPDY-Moduls setzen es bereits mehrere große Sites produktiv ein. Dazu gehören Google, facebook, Twitter, WordPress und CloudFlare.

Clientseitig bieten bereits viele aktuelle Browser SPDY-Support an: Chrome, Firefox ab Version 11, Opera ab 12.10, Internet Explorer ab Version 11. Safari wird ab der kommenden Version (OS X Yosemite und iOS 8) SPDY-Unterstützung anbieten.

Was kann SPDY?

Der Vorteil des SPDY-Protokolls im Gegensatz zu regulären HTTP(S)-Verbindungen ist die Bündelung der Übertragung beliebig vieler Dokumente (HTML-Inhalte, Javascripte, Stylsheets, Bilder,..) in einer TCP-Verbindung als Multiplex. Diese Methode beschleunigt die Übertragung der Inhalte, verringert den Traffic und schont die Ressoucen des Servers und des Netzwerks. Darüber hinaus können wichtige Anfragen priorisiert werden um bestimmte Dokumente schneller zu erhalten.

Installation bei Apache 2.2

Ist der Server bereits für SSL konfiguriert und existiert ein gültiges SSL-Zertifikat, muss mod_spdy nur installiert und aktiviert werden (vgl. Google Developers). Nach einem Neustart des Apache (bzw. httpd) steht SPDY direkt zur Verfügung.

Allerdings muss man beachten, dass mod_spdy eine thread-sichere („thread-safe“) Umgebung voraussetzt: Die Apache Standardkonfiguration (Prefork MPM + mod_php) funktioniert hier nicht, da mod_php kein sog. „multithreaded module“ ist! Wir raten an dieser Stelle zur Apache Worker MPM Variante mit mod_fastcgi (nicht mod_fcgi) und PHP-FPM. (vgl. Installation unter CentOS / Installation unter Debian)

Bei der Konfiguration sind wir nur über ein potentielles Problem gestoßen: Die mod_ssl Directory-Direktive „SSLRequireSSL“ ist derzeit inkompatibel mit mod_spdy und äußert sich einem Forbidden 403 HTTP-Fehler beim Aufruf der Seite. Nach dem Auskommentieren der Direktive im VirtualHost funktioniert mod_spdy normal.

Zum Zeitpunkt der Veröffentlichung dieses Beitrags gibt es noch kein mod_spdy Binary für Apache 2.4. Nachdem die Apache Foundation die Entwicklung von SPDY von Google übernommen hat, ist es nur eine Frage der Zeit, bis ein entsprechendes Binary für Apache 2.4 zur Verfügung steht. Mittelfristig soll mod_spdy fester Bestandteil der Apache Distribution werden.