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
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
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
Uhrzeit unter Debian
Da ich auf meinem Rootserver Virtuelle Maschienen, auf Basis XEN, betreibe müssen Zeiteinstellungen manuell vorgenommen werden, da man während der Installation kein Zeitzone angeben kann. Um die Zeitzone manuell zu ändern gibt man unter Debian den Befehl
dpkg-reconfigure tzdata
ein. Zudem sollte man bei einem Server immer die Uhrzeit nach einem Zeitserver stellen.
Zimbra 6.0 auf Debian 5.0.3 installieren
Ich wollte gerade das neue Zimbra 6.0 OpenSource Edition auf einer neun Virtuellen Maschine mit einem Aktuellen Debian installieren. Dabei ist folgender Fehler aufgetreten:
MISSING: libgmp3
das versuchte ich mit nachinstallieren des entsprechendes Paketes über aptitude zu lösen. Das Paket war zwar installiert, doch der Fehler war immer noch vorhanden. Eine kurze Recherche im Internet brachte die Lösung. Der Zimbra Installer ist für das aktuelle Debian zu "alt".
Debian Standart Editor
Um den Standarteditor für Debian einzustellen gibt es zwei Möglichkeiten: Für das gesamte System:
update-alternatives --config editor
Oder für einen User:
export EDITOR=vi;
Wenn die Einstellung für den User fest gespeichert werden soll, muss man es in desen .bashrc schreiben.
Mails auf frischem Debian versenden
Wer auf einem frisch installiertem Debian System E-Mails versenden will, z.B. in einem Backup Script, der muss zunächst dem Mailserver von Debian konfigurieren. Am einfachsten geht das mit: dpkg-reconfigure exim4-config
Am besten man verwendet Smarthost und gibt dort seinen Mailserver an.
Debian Auflösung auf der Console
Wenn man die Auflösung der lokalen Console änder will, genügt es wenn man (bei GRUB) in der /boot/grub/menu.lst bei dem Kernelparameter einfach einen Wert für die Auflösung mit anhängt. Das sieht dann zum Beispiel so aus: /vmlinuz-2.6.26-2-amd64 root=/dev/mapper/db1-root ro quiet vga=0x317 Die Werte hinter vga= kann man aus folgender Tabelle auslesen:
|
Farbtiefe |
640x480 |
800x600 |
1024x768 |
1280x1024 |
|
256 |
0x301 |
0x303 |
0x305 |
0x307 |
|
32K |
0x310 |
0x313 |
0x316 |
0x319 |
|
64K |
0x311 |
0x314 |
0x317 |
0x31A |
|
16M |
0x312 |
0x315 |
0x318 |
0x31B |