Inhaltsverzeichnis

Verwante Seiten

Sicherheit erhöhen

Wer wird schon gerne überfallen? Hier geht es speziell um den 'openssh-server'.

Root-login

Direktes Login mit dem 'root' account verbieten. Dazu in der Datei '/etc/ssh/sshd_config' folgende Zeile auskommentieren/anpassen/hinzufügen.

PermitRootLogin no

Public-Key's erlauben oder Passwort-Logins verbieten

Beides ist über folgende Optionen gesteuert:

# Mögliche Werte: yes/no
PubkeyAuthentication yes

# Mögliche Werte: yes/no
PasswordAuthentication yes

Port ändern

Die wohl einfachste Methode sich zu schützen ist auf den Komfort des standard Ports zuverzichten. Wartet der Server zum Beispiel auf dem Port 774 (einfach zu merken, da man auf dem Handy 7 (S), 7 (S) und 4 (H) eingibt, gehen die meisten Scanner an deiner IP vorbei. Der Nachteil ist, dass man dann manchmal nicht mehr von überall auf den Host zugreifen kann.

In der Konfigurations-Datei heisst die Option 'Port' und steht standardmässig auf '22'. Es können hier auch mehrere Ports angegeben werden.

Port 22
Port 123
Port 321

Erwähnenswert ist, dass die Option(en) 'Port' ignoriert wird, sobald mit der Option 'ListenAdress' ein Port mit gegeben wird. Es können auch hier mehrere Ports angegeben werden.

ListenAdress 192.168.0.15:123
ListenAdress 10.0.12.25:321
ListenAdress 10.0.12.25:22

IPTables

Mit den IPTables kann man auch sehr einfach viele Attacken abwehern. Die zwei folgenden Befehle erlauben pro Minute nur vier neue SSH-Verbingungen. Das reicht den meisten zum Arbeiten. Ein agressiver Passwort knacker wird hier aber sehr schnell ausgesperrt.

# iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set
# iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP

Automatisches Laden

Da die Regeln bis jetzt nur bis zum nächsten Neustart aktiv sind, müssen sie noch gespeichert werden. Abhilfe schaftt der Punkt init.d_skript im IPTables Artikel.

Vertieftes

Sollte der Server mehrere Netzwerkkarten haben, kann man entweder Regeln für jedes Interface erstellen, also die beiden Befehle mehrfach ausführen, oder für alle, die beiden Befehle nur einmal ausführen und die Option '-i' weg lassen.

Zusätzliche Infos

Quelle: http://www.debian-administration.org/articles/187

Auch interessant: http://nodomain.cc/archives/190-SSH-Bruteforce-Attacks-mit-IPTables-stoppen.html

Fail2Ban

http://www.fail2ban.org/

DenyHost

http://sourceforge.net/projects/denyhosts/

Optik aufwerten

Auch auf der Konsole gibt es ein gutes Design. Dazu müssen folgende Einstellungen in der Datei '/etc/ssh/sshd_config' gesetzt sein:

PrintMotd yes
PrintLastLog yes
Banner /etc/issue.net

Das heisst, dass das Banner in der Datei '/etc/issue.net' abgespeichert ist. In dieser kann man zum Beispiel eine ASCII-Grafik oder einen Begrüssungstext ablegen:

 _  _ _ _ _ _   __  _ __  ,_, __     _  _ _
 |  | | |_/ |   |_) | |_) /_\ |_)   / ` |_|
 |/\| | | \ | o |_) | |_) | | | \ o \_, | |
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~