sshd auf Debian absichern
Um unter Debian den Secure-Shell-Daemon (sshd) etwas abzusichern verwende ich folgende Einstellungen in der Konfigurationsdatei /etc/ssh/sshd_config:
Protocol 2
Nur die aktuelle Protokollversion von ssh verwenden.
AllowUsers julian
Nur die aufgelisteten Benutzer dürfen sich via ssh am System anmelden.
LoginGraceTime 60
Die Zeit, welche zur Verfügung steht, um sich via ssh mit Benutzername und Passwort am System anzumelden. Nach Ablauf wird die Verbindung vom Server getrennt und der Sub-Prozess beendet. Dieser Benötigt ja schließlich auch Ressourcen. Zu klein sollte er aber dennoch nicht sein, da es ja eine schlechte Verbindung geben kann, beziehungsweise der Server unter Last stehen könnte und deshalb etwas träge reagiert.
GPG Error Debian Aptitude
Wer bei einem "aptitude update" auf folgende Fehlermeldung stößt, hat vermutlich keine aktuelle Liste mit gültigen GPG-Schlüsseln mehr auf seinem System:
W: GPG error: http://ftp.de.debian.org lenny Release: Die folgenden Signaturen konnten nicht überprüft werden, weil ihr öffentlicher Schlüssel nicht verfügbar ist: NO_PUBKEY AED4B06F473041FA
Um dies zu lösen kann man,nachdem man die Gültigkeit des neuen Schlüssels auf Debian Schlüssl Seite Kontrolliert hat, mit folgendem Komando den neuen Schlüssel laden und aktivieren:
gpg --keyserver subkeys.pgp.net --recv-keys AED4B06F473041FA;gpg --armor --export AED4B06F473041FA| apt-key add -
Nun sollte das "aptitude update" wieder ohne Probleme funktionieren. Dabei muss eventuell die Schlüssel-ID angepasst werden. Die aktuelle (Stand 15.11.11) für Squeeze ist 4B06F473041, welche sich auf der oben genannten Schlüssel-Seite in erfahrung bringen lässt.
Weiter Inforamtionen zu der Sicherheit von apt(-itude) biete das Debian Wiki
Beep Sounds
Da ich einen Praktikanten bei uns etwas mit dem Linux Programm "beep" geärgert habe, habe ich ihm zu Belustigung noch etwas Musik vorgespielt. Nachfolgend eine Liste mit ein paar Melodien, die ich auf die schnelle gefunden habe:
Axel F:
beep -f 659 -l 460 -n -f 784 -l 340 -n -f 659 -l 230 -n -f 659 -l 110 -n -f 880 -l 23 -n -f 659 -l 230 -n -f 587 -l 230 -n -f 659 -l 460 -n -f 988 -l 340 -n -f 659 -l 230 -n -f 659 -l 110 -n -f 1047 -l 230 -n -f 988 -l 230 -n -f 784 -l 230 -n -f 659 -l 230 -n -f 988 -l 230 -n -f 1318 -l 230 -n -f 659 -l 110 -n -f 587 -l 230 -n -f 587 -l 110 -n -f 494 -l 230 -n -f 740 -l 230 -n -f 659 -l 460
Debian Squeeze Netzwerkeinstellungen übernehmen
Wer mittels /etc/network/interfaces seine Netzwerkkonfiguration bearbeitet hat, sollte immer an eine Kleinigkeit denken. Wenn man mittels
/etc/init.d/networking restart
seine Netzwerkkonfiguration übernehmen will, kann einem folgende Meldung überraschen:
# /etc/init.d/networking restart
Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces ... (warning).
Reconfiguring network interfaces...
und man bekommt keine Netzwerkverbindung mehr mit dem System. Ärgerlich bei Servern in einem Rechenzentrum.
Um dies zu verhindern, sollte man auto eth0 in die Datei /etc/network/interfaces mit eintragen. Dies sieht dann z.B. so aus:
# The primary network interface
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.0.20
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 192.168.0.1
dns-search google.de
Der Grund ist, das /etc/init.d/networking das Programm "ifup -a" verwendet. Dieses startet nur Netzwerkinterfaces die mit "auto" gekennzeichnet sind.
Debian zusätzliche Paketquellen
Für die Debian Distribution gibt es zwei offizielle zusätzliche Paketquellen. Diese sind interessant, wenn man ganz aktuelle Software benötigt.
squeeze-updates (ehemals als Volatile-Repository bekannt):
In squeeze-updates sind hauptsächlich zeitkritisch, aber nicht Security-relevante Pakete enthalten. Wie zum Beispiel das Antivirenprogramm clamav.
Um dieses Repository nutzen zu können, muss man einfach
deb http://ftp.debian.org/debian squeeze-updates main contrib non-free
in die /etc/apt/sources.list eintragen.
Backports:
Backports enthält Pakte von aktueller Software die aufgrund des Releasezyklus noch nicht in dem Stable-Zweig von Debian ist. Mehr Informationen zu den Backports gibt die offizielle Seite.
Um dieses Repository nutzen zu können, muss man einfach
deb http://backports.debian.org/debian-backports squeeze-backports main
in die /etc/apt/sources.list eintragen.
Nach dem einrichten eines neuen Repositorys müssen die Paketlisten aktualisiert werden:
aptitude update
Um ein Paket aus den zusätzlichen Quellen zu installieren verwendet man zum Beispiel
aptitude install -t squeeze-backports
oder wählt es über die Paketdetails in der aptitude-"Konsole" aus.
Weitere Informationen zu den zur Verfügung stehenden Pakete liefert die Seite debian.org/distrib/packages
20 Jahre Linux – Die Geschichte
Am 26. August wird Linux 20 Jahre alt. Anlässlich dieses Geburtstags hat die Linux Foundation ein nettes Video veröffentlicht, in dem die Geschichte von Linux erklärt wird:
Via: sysadminslife.com
Howto Upgrade von Debian Lenny zu Debian Squeeze
Hier stelle ich für alle Interessierten ein Schnellanleitung zur Verfügung, welche ihr Debian Lenny auf die neue Version Squeeze aktualisieren wollen. Es gibt natürlich unterschiedliche Möglichkeiten, solch ein Update durch zu führen. Ich habe den in der Anleitung beschrieben Weg gewählt. Wie immer kann ich leider nicht garantieren, dass es bei Dir genauso funktioniert!
Schritt 1 - Backup:
Der Update-Prozess ist ein sehr komplexer Vorgang, daher sollte auf jeden Fall vor dem Update ein Backup aller wichtigen Daten durchgeführt werden. Denn für den Erfolg des Updates gibt es keine Garantie.
Schritt 2 - Das alte System auf den letzten Stand bringen:
Damit das Update möglichst ohne Probleme von statten geht, sollte man auf jeden Fall seine bestehende Installation auf den letzten Stand bringen:
aptitude update
aptitude upgrade
Falls ein Kernelupdate dabei war (kann sonst aber auch nicht schaden) sollte die Maschine einmal neu gestartet werden:
reboot
Schritt 3 - sources.list anpassen:
Um das Dist-Upgrade durchzuführen muss die neue Paketquelle dem System bekannt gemacht werden. Dazu muss man die sources.list bearbeiten:
vi /etc/apt/sources.list
Hierbei sind alle "lenny" mit "squeeze" zu ersetzten. Das Ergebnis sieht zum Beispiel so aus:
deb http://ftp.de.debian.org/debian squeeze main contrib non-free deb-src http://ftp.de.debian.org/debian squeeze main contrib non-free deb http://security.debian.org/ squeeze/updates main contrib non-free deb-src http://security.debian.org/ squeeze/updates main contrib non-free
Schritt 4 - Upgrade auf Squeeze:
Da die neue Paketquelle jetzt eingerichtet ist, kann jetzt das Upgrade auf Squeeze erfolgen. Dabei sollte immer auf Meldungen des Update-Prozesses geachtet werden:
aptitude update
aptitude full-upgrade
Nachdem das Update alle Pakete aktualisiert hat, sollte wieder ein Neustart durchgeführt werden:
reboot
Schritt 5 - System überprüfen:
Nachdem das System neu gestartet ist, kann man jetzt überprüfen, ob alles in Ordnung ist und das Update funktioniert hat. Hier ein paar Sachen, welche man überprüfen sollte:
Kernel-Version:
uname -a
Debian Version:
cat /etc/debian_version
Logfiles:
egrep -i 'err|warn' /var/log/dmesg
egrep -i 'err|warn' /var/log/messages
Laufende Prozesse:
ps ax
Netzwerkverbindungen (offene Ports):
netstat -tulpn
htaccess: Option Multiviews not allowed here
Bei der Drupal 7 Installation durch einen Kunden ist auf dem Webserver immer folgende Fehlermeldung im Log aufgetaucht:
[Tue Jan 12 14:28:28 2011] [alert] [client 1.2.3.4] /var/www/drupal7/.htaccess: Option Multiviews not allowed here
Der Grund war, das Drupal 7 in der htaccess-Datei die Multiviews-Option deaktivieren will:
Options -Multiviews
Über die eine Suche in den bekannten Suchmaschinen brachte keine schnelle Antwort. Ein kurzer Blick in die Dokumentation von Apache 2.2 hier und hier brachte aber die Lösung und den Grund zu Tage.
Die vhost-Konfiguration mit
AllowOverride All
beinhaltet nicht die MultiViews, welche Drupal bearbeiten will. Um dies zu erreichen muss man es wie folgt Konfigurieren:
AllowOverride Options=All,MultiViews
So ist es jetzt möglich, das eine htaccess-Datei die Option für MultiViews bearbeitet.
Website mit Apache-Modul mod_pagespeed schneller ausliefern
Google hat mit mod_pagespeed ein Apache-Modul veröffentlicht, welches die Auslieferung einer Website vom Server zum Client beschleunigen soll. Das Modul verwendet dabei 15 verschiedene Techniken an. Unter anderem werden Caching-Funktionen für Bilder verwendet, passende Caching-Header gesetzt, sowie die übertragene Datenmenge durch Kompression von Texten und Bildern reduziert.
Zimbra SSL Zertifikate abgelaufen
Vor etwa 12 Monaten habe ich auf meinem Server Zimbra als meine E-Mail Lösung installiert. Alles hat problemlos funktioniert, bis heute. Als ich meine E-Mails über die Weboberfläche checken wollte bekam ich immer die Meldung "Ein Netzwerk Service Fehler ist aufgetreten". Ein neuer Login-Versuch brachte dieselbe Fehlermeldung zu tage.
Ein Blick in das Logfile /opt/zimbra/log/mailbox.log brachte auch schon eine detailliertere Fehlermeldung zu tage:
ERROR: service.FAILURE (system failure: ZimbraLdapContext) (cause: javax.net.ssl.SSLHandshakeException sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: timestamp check failed)
Demzufolge ist das SSL-Zertifikat, welches (auch intern) zur Kommunikation verwendet wird abgelaufen.