Feb 02

Statische Dateien (z.B. CSS, JS, Bilder) verfügen in der Standardkonfiguration von diversen Webservern über keine Expires-Header. Dies führt dazu, dass Dateien i.d.R. vom Browser nicht im Cache zwischengespeichert werden und stets eine Anfrage an den Server gesendet wird. Neben einer größeren Belastung für den Server führt es außerdem zu langsameren Ladezeiten der Webseite. Mit dem Apache-Modul mod_exprires – bei Debian z.B. standardmäßig mit Apache installiert – kann der Expries-Header gesetzt und dem Browser mitgeteilt werden, wie lange sich dieses Element nicht ändern wird. Hierfür fügt man der .htaccess-Datei folgende Zeilen hinzu:

<IfModule mod_expires.c>
	ExpiresActive On
	#ExpiresDefault "access plus 7 days"
	ExpiresByType image/bmp "access plus 7 days"
	ExpiresByType image/gif "access plus 7 days"
	ExpiresByType image/jpeg "access plus 7 days"
	ExpiresByType image/jpg "access plus 7 days"
	ExpiresByType image/png "access plus 7 days"
	ExpiresByType image/x-icon "access plus 7 days"
	ExpiresByType text/css "access plus 7 days"
	ExpiresByType text/javascript "access plus 7 days"
	ExpiresByType text/x-js "access plus 7 days"
	ExpiresByType application/javascript "access plus 7 days"
	ExpiresByType application/x-javascript "access plus 7 days"
</IfModule>

Die Verwendung von ExpiresDefault (hier nicht aktiviert) würde dazu führen, dass für jede ausgelieferte Datei ein Expires-Header gesetzt werden würde. Dies sollte bei dynamisch generierten Webseiten vermieden, da diese aus dem Browser-Cache und nicht vom Server geladen werden und somit nicht den aktuellen Stand widerspiegeln würden. Header für JPG-Bilder und JavaScript werden in diesem Beispiel mehrfach gesetzt, damit unterschiedliche Mime-Types aufgrund verschiedener Konfigurationen von Servern und Ausgaben von Skripts abgedeckt sind.

Artikel twittern
Jul 27

Einen unter UNIX/Linux erstellten id_rsa privaten Schlüssel für SSH kann man mit PuTTY nicht ohne weiteres verwenden. Dieser muss hierfür zuerst mit PuTTYgen in eine PuTTY Private Key File (Dateiendung: .ppk) konvertiert werden.

Zuerst lädt man sich PuTTYgen und wählt nach dem Start des Programms im Menü “Conversions” > “Import key” aus. Im daraufhin öffnenden Dateibrowser wählt man den privaten Schüssel “id_rsa” aus und öffnet diesen. Als nächstes klickt man auf die Schaltfläche “Save private key” und bestätigt die daraufhin erscheinende Sicherheitsabfrage mit “Yes”, sodass keine Passphrase verwendet wird. Im Dateibrowser wählt man den gewünschten Speicherort aus und gibt einen Dateinamen ein, um die ppk-Datei abschließend unter diesem Namen zu speichern. Der soeben erstellte ppk kann nun zur RSA-Authentifizierung mittels PuTTY verwendet werden. Analog funktioniert die Konvertierung von DSA-Schüsseln (id_dsa).

Artikel twittern
Apr 09

Bei HostEurope wird für vServer Virtuozzo zur Virtualisierung verwendet. Dieses setzt bei jedem Start die Dateien “/etc/hostname” und “/etc/resolv.conf” neu, d.h. geänderte Konfigurationseinstellungen gehen bei jedem Neustart verloren. Abhilfe schafft ein kleines Startup-Skript, das in “/etc/init.d/hostname-vps.sh” mit folgendem Inhalt abgelegt wird:

#!/bin/bash
if [ -f /etc/hostname.override ]
then
  cp /etc/hostname.override /etc/hostname
  cat /etc/hostname | xargs /bin/hostname
fi
 
if [ -f /etc/resolv.conf.override ]
then
  cp /etc/resolv.conf.override /etc/resolv.conf
fi
 
exit 0

Wenn die Datei “/etc/hostname.override” existiert, so ersetzt diese die Datei “/etc/hostname”. Selbiges gilt analog für “/etc/resolv.conf.override” und “/etc/resolv.conf”. Damit dieses Skript beim Starten ausgeführt wird, müssen noch Links in den entsprechenden Runlevel-Ordner hinzugefügt werden. Debian stellt hierfür das Tool “update-rc.d” zur Verfügung:

# update-rc.d hostname-vps.sh defaults 09

Nun müssen noch die override-Dateien mit den gewünschten Optionen angelegt werden. Anschließend kann das System neu gestartet und die Funktionalität überprüft werden:

# reboot
Artikel twittern
Apr 08

Debian GNU/LinuxIm Auslieferungszustand startet Apache2 auf HostEurope vServern mit Debian nicht automatisch beim Hochfahren, obwohl Apache2 installiert wurde. Das ist natürlich ärgerlich, da dieser bei Server-Wartungsarbeiten, Stromausfall, etc. händisch neu gestartet werden müsste, was im Serverbetrieb natürlich nicht gewünscht ist.

Ein Blick in die Log-Dateien bringt keine Fehler ans Tageslicht, der nächste Schritt ist den aktuellen Runlevel zu überprüfen:

 

# /sbin/runlevel
N 2

D.h. der vServer befindet sich im Runlevel 2, das ist Debian-Standard. Die Ausgabe von “$ ls -la /etc/rc2.d/” zeigt, dass Apache2 nicht gestartet wird, d.h. es fehlt der Link zum Startskript, der bei Debian üblicherweise gesetzt ist. Das lässt sich einfach beheben:

# cd /etc/rc2.d/
# ln -s ../init.d/apache2 S91apache2

Nun noch den Server neu starten:

# reboot 

 

Und ein Aufruf der IP-Adresse im Browser sollte nun die Default-Seite von Apache2 als Ergebnis liefern.

Artikel twittern
Feb 12

Wenn man Anrufe im Auftrag von anderen Personen durchführt oder man nicht möchte, dass ein Gesprächspartner die Rufnummer kennt, von der aus angerufen wurde, so kann man das Mitsenden der eigenen Rufnummer einzeln/pro Anruf unterbinden. In den Einstellungen jedes Mobiltelefons kann man die Vorauswahl treffen, ob die eigene Rufnummer grundsätzlich mitgesendet werden soll, oder nicht. Je nach Voreinstellung kann man pro Rufnummer mit einer Vor-Vorwahl festlegen, ob die angerufene Person die eigene Rufnummer sehen soll.

#31#Rufnummer (z.B. #31#123451234567) unterdrückt die eigene Rufnummer.
*31#Rufnummer (z.B. *31#123451234567) übermittelt die eigene Rufnummer. 

Selbstverständlich können oben genannte Vor-Vorwahlen auch im Telefonbuch gespeichert werden und somit die gewünschte Auswahl pro Person/Gesprächspartner individuell festgelegt werden. Somit kann auf das umständliche Umschalten vor und nach einem Anruf im Menü verzichtet werden. Die Vor-Vorwahlen funktionieren übrigens auch im Festnetz.

Artikel twittern