Linux und Ich

Blog über Ubuntu, Linux, Android und IT

Lizenziert unter CC by-sa von rhymeswithsausage auf Flickr

SSH-Server mit Fail2Ban ein wenig absichern

| 8 Kommentare

Hat man einen SSH-Server installiert und ist dieser auch vom Internet aus zu erreichen, so hat man eventuell ein mulmiges Gefühl bezüglich der Sicherheit. Den Dienst an sich zu missbrauchen ist schwer möglich. Aber gerade an einem Rechner mit mehreren Benutzeraccounts, hat man nicht die volle Kontrolle, so dass eventuell schwache Passwörter von Dritten genutzt werden.

So wäre es in der Theorie möglich, durch einen Brute-Force-Angriff einen Account mit einem gültigen Passwort zu treffen. Denn der SSH-Server selber ist sehr geduldig mit einem Angreifer. Dieser könnte über Stunden, Tage oder gar Wochen hinweg immer und immer wieder Accountnamen und Passwörter wiederholt austesten.

Hier kommt der kleine Dienst Fail2Ban ins Spiel. Versucht sich jemand per SSH einzuloggen und misslingt dieser Versuch, so trägt sshd – also der SSH-Server – dieses Ereignis in die Logdatei /var/log/auth.log ein.

Oct 14 20:13:11 knecht sshd[25218]: Failed password for root from 192.168.0.251 
port 43101 ssh2

Fail2Ban überwacht nun die auth.log im Hintergrund und blockiert die Zugriff zum SSH-Server über iptables, falls der Zugriff per SSH über eine IP wiederholt scheitert. In der Datei /var/log/fail2ban.log protokolliert Fail2Ban das Ereignis mit

2006-10-14 20:13:12,132 INFO: SSH: 192.168.0.251 has 5 login failure(s). Banned.
2006-10-14 20:13:12,132 WARNING: SSH: Ban 192.168.0.251

Fail2Ban ist ist den Ubuntu Paketquellen (universe) vorhanden und kann direkt installiert werden. Hat man das Paket installiert, können man über die Konfigurationsdatei /etc/fail2ban.conf noch Einstellungen vorgenommen werden. Aber eigentlich ist die Standardkonfiguration ausreichend. Hat man die fail2ban.conf geändert, so muss man den Dienst mit

$ sudo /etc/init.d/fail2ban restart

neu starten, damit die Änderungen eingelesen werden. Der Dienst ist gleich nach der Installation des Paketes aktiv und blockiert nach dem fünften vergeblichen Versuch einer IP sich einzuloggen den Zugriff dieser IP zum SSH-Server.

Autor: Christoph Langner

Hallo, ich bin Christoph -- Linux-User, Blogger und pragmatischer Fan freier Software. Wie Ihr ohne Zweifel bemerkt haben solltet schreibe ich hier über Linux im Allgemeinen, Ubuntu im Speziellen, sowie Android und andere Internet-Themen. Wenn du Freude an meinen Artikel gefunden haben solltest, dann kannst du mir über Facebook, Google+ oder Twitter oder natürlich dem Blog folgen.

8 Kommentare

  1. Auch denyhosts ist ein sehr schönes Skript zum Blocken.

    Was aber bei mir am meisten geholfen hat ist das ändern des ports auf dem SSH lauscht.

  2. Ich hab in meinem Blog das selbe Thema angesprochen allerdings wie man einen dummy User einrichtet und dann mit su auf root welchsel kann.

  3. Ich nutze dazu auch DenyHosts.
    Ganz praktisch und sehr einfach zu konfigurieren :)

  4. Arbeitet fail2ban mit ufw zusammen oder brauche ich eine andere Firewall als die standard Ubuntu Firewall?

  5. Danke für den klasse Tipp. Mal sehen obs auch wirklich hilft?

    Danke
    ANO

Hinterlasse eine Antwort

Auf Linux und Ich darf anonym kommentiert werden. Die Felder für Name und E-Mail-Adresse dürfen beim Eintragen eures Kommentars leer bleiben. Ich freue mich aber über jeden Kommentar, zu dem der Autor mit seinem Namen steht.