Apache

Apache und PHP stumm schalten

Posted by Michael Roth on Januar 24, 2011
Internet, Linux / No Comments

Apache und PHP senden bei Internetseiten die Versionsnummer mit an den Besucher. Ein Angreifer kann diese Informationen benutzen um gezielt verwundbare Versionen zu finden und dann diese Server anzugreifen. Mit ein paar einfachen Befehlen lassen sich die Ausgaben allerdings unterdrücken.

PHP:

  • Mit expose_php = Off kann in der php.ini die Übermittlung der PHP Versionsnummer im HTTP-Response-Header unterdrückt werden.

Apache2:

  • ServerTokens Prod unterbindet das Übermitteln der Apache Versionsnummer im HTTP-Response-Header
  • Die Option ServerSignature Off deaktiviert das Anzeigen der Versionsnummer auf von Apache generierten Seiten. Dazu zählen die Fehlerseiten oder Index-Seiten, falls das Indizieren von Ordner ohne index.html aktiviert ist.
  • Apache ermöglicht es ein paar Funktionen aus der Ferne zu debuggen. Diese Funktionalität wird auf einem Produktivsystem nicht benötigt und kann mit TraceEnable Off ausgeschaltet werden.

Tags: ,

Webserver mit mod_pagespeed beschleunigen

Posted by Michael Roth on November 04, 2010
Internet / No Comments

Zum Messen von der Aufbaugeschwindigkeit stellt Google die bereits in diesem Blog vorgestellte Firefox-Erweiterung PageSpeed bereit. Seit Gestern bietet Google nun auch die Apache-Erweiterung mod_pagespeed an, die die Darstellungszeit von Internetseiten im Browser verkürzen soll.

Auf dem Google Webmaster Central Blog wird die Erweiterung vorgestellt. Die von Google getesteten Seiten konnten im Schnitt um den Faktor 2 beschleunigt werden. Um die Ladezeit zu verkürzen gliedert die Erweiterung auf Wunsch CSS- und JavaScript-Code von HTML-Seiten in externe Dateien aus oder fasst mehrere Dateien in eine große HTML-Datei zusammen.

Zum messen der Client-Ladezeit kann in der HTML-Datei eine JavaScript-Code eingefügt werden, der die Ladezeit an den Server übermittelt. Über den Ordner /mod_pagespeed/statistics können diese Daten dann begutachtet werden.Die Statistikseite sieht folgendermaßen aus.

resource_fetches: 0
total_page_load_ms: 0
page_load_count: 0
cache_extensions: 0
not_cacheable: 0
css_file_count_reduction: 0
css_filter_files_minified: 0
css_filter_minified_bytes_saved: 0
css_filter_parse_failures: 0
css_elements: 0
image_inline: 0
image_rewrite_saved_bytes: 0
image_rewrites: 0
javascript_blocks_minified: 0
javascript_bytes_saved: 0
javascript_minification_failures: 0
javascript_total_blocks: 0
url_trims: 0
url_trim_saved_bytes: 0
resource_404_count: 0
slurp_404_count: 0
serf_fetch_request_count: 0
serf_fetch_bytes_count: 0
serf_fetch_time_duration_ms: 0
serf_fetch_cancel_count: 0

Auf der Download-Seite liegt die Apache-Erweiterung als .deb und .rpm für 64 und 32 Bit Linuxinstallationen bereit.

Tags: ,

Thawte SSL123 Zertifikat wird nicht erkannt

Posted by Michael Roth on Oktober 23, 2010
Datenschutz, Linux / No Comments

Gestern habe ich neue Zertifikate von Thawte auf einem Webserver installiert und war dann doch verwundert, dass das Zertifikat nicht bei allen getesteten Browsern und Betriebssystem erkannt wurde. Mit Windows 7 gab es kein Problem, anders sah es mit MacOSx, Ubunut Linux und Windows Vista aus.

Nach längerem Suchen im Netz, habe ich den Grund gefunden. Thawte hat neue Zertifikate Anfang des Jahres erstellt um die Schlüssellänge von 1024 auf 2048 Bit zu  erhöhen. Die neuen Zertifikate sind wohl noch nicht bei allen Clients installiert.

Bei Thawte können die neue Zertifikate herunter geladen werden. Dieses Zertifikat muss dann in den Server eingebunden werde, damit es mit dem Server-Zertifikat an den Client gesendet wird. Das Thawte-Root-Zertifikat ist noch bis 2038 gültig, daher reicht es das Zwischenzertifikat mitzusenden.

Ich habe das CA Bundle für SSL123 heruntergeladen. Bei Apache kann das CA Bundle mit dem Kommando SSLCertificateChainFile in die SSL-Konfiguration eingebunden werden.

Bei dem Cyrus Imap Server hilft der Befehl tls_ca_file.

Damit dürfte bis zum Ablauf des Zwischenzertifikats am 17.02.2020 um 23:59:59 GMT Ruhe sein.

Tags: , , ,

Webserver beschleunigen

Posted by Michael Roth on März 13, 2010
Internet, Linux / No Comments

Den Webserver zu beschleunigen hat nicht nur Vorteile für Besucher, sondern auch Auswirkungen auf die Platzierung der Seite bei Google.

Die Ausführungszeit von PHP-Skripten kann mit einem PHP-Cache, wie eAccelerator oder Zend Optimizer, verringert werden. Dadurch werden die PHP- Dateien nicht mehr bei jedem Aufruf von PHP übersetzt, sondern nach dem ersten Aufruf übersetzt und gespeichert. Wenn nun noch ein Zugriff erfolgt, so wird die bereits übersetzte Version benutzt und das Skript nur erneut übersetzt, falls sich etwas am Quellcode geändert hat. Dadurch konnte ich bei einigen Projekten die Ausführungszeit um den Faktor 10 verbessern.

Neben der Ausführungszeit von Skripten, werden auch die Übertragungszeiten von Bildern und CSS-Dateien von Google zur Ladezeit gerechnet.

Um das Übertragen von statischen Inhalten zu verbessern, kann beim Webserver die komprimierte Datenübertragung aktiviert werden. Dann werden die Dateien vor dem Senden mit GZIP gepackt und an den Besucher gesendet. Bei Apache kann dies mit mod_deflate gemacht werden. Durch diese Maßnahme wird zwar die Last auf dem Server vergrößert aber dafür das Netzwerk entlastet. Vor allem bei langsamen Internetanbindungen wird die Seite dadurch merklich schneller.

Die sind nur einige Anregungen, wie dir Geschwindigkeit erhöht werden kann. Wer mehr wissen will, findet bei Google hilfreiche Treffer.

Tags: , ,