Ein Potentieller Angreifer müsste im Besitz des Private Keys und des dazugehörigen Passwortes sein um sich auf dem SSH Server einloggen zu können.

Schlüsselpaar / Zertifikate erzeugen
Bevor das Schlüsselpaar erzeugt werden kann, muss der OpenSSH Client installiert werden.
sudo apt-get install openssh-client
Anschließend kann das Schlüsselpaar erzeugt werden.
ssh-keygen -t rsa
Der Speicherort kann über die Eingabetaste bestätigt werden. Zur Sicherheit sollte hier ein Passphrase eingegeben werden. Dieser wird im Anschluss beim Aufbau der Verbindung eingegeben.

Wird ein leerer Passphrase eingegeben (mit Enter bestätigen) ist zur Authentifizierung kein Kennwort erforderlich. Hierdurch leidet allerdings die Sicherheit.
Bei Ubuntu und Debian bzw. nahezu jeder anderen Distribution liegen die Keys dann im Ordner .ssh des Homeverzeichnisses.
Konfiguration des Servers
Auf dem Zielsystem wird zunächst die Authentifizierung per Zertifikat aktiviert. Die Konfiguration des SSH-Servers befindet sich in der Datei /etc/ssh/ssh_config und kann z.B. mit dem Editor nano editiert werden.
sudo nano /etc/ssh/sshd_config
Hier müssen die folgenden Zeilen gesetzt sein um die Authentifizierung per Zertifikat zu erlauben.
RSAAuthentication yes
PubkeyAuthentication yes
Damit die Änderungen übernommen werden, wird der SSH-Dienst in Ubuntu bzw. Debian neu gestartet.
sudo service openssh-server restart
Zertifikat einspielen / Zugriff erlauben
Auf dem Client spielen wir jetzt das Zertifikat auf den Server ein. Am einfachsten geschieht dies über den Befehl ssh-copy-id.
ssh-copy-id -i ~/.ssh/id_rsa.pub benutzer@server
SSH fragt nun nach einer einmaligen Authentifizierung. Hier werden die Zugangsdaten des Benutzers (benutzer) auf dem Zielsystem (server) eingegeben.
Der Befehl ssh-copy-id hängt im Grunde nur den eigenen Public Key an die Datei ~/.ssh/authorized_keys auf dem Zielsystem / Server an. Bei Problemen kann man den Public Key auch manuell einspielen.
cat ~/.ssh/id_rsa.pub | ssh benutzer@server cat >> ~/.ssh/authorized_keys
Weiterführendes
Nach dem Austausch der Keys ist die Authentifizierung per Zertifikat möglich. Natürlich lassen sich jetzt noch einige Änderungen vornehmen bzw. Konfigurationen einsehen.
Passwort Authentifizierung deaktivieren
Um für weitere Sicherheit zu sorgen kann man die bisher genutzte Authentifizierung per Benutzername und Kennwort komplett deaktivieren.
Wichtig: Diese Option sollte erst nach dem Schlüsselaustausch gesetzt werden. Andernfalls sperrt man sich aus und bekommt lediglich über einen physischen Zugang wieder Zugriff auf das System.
Hierzu wieder in die Konfigurationsdatei /etc/ssh/sshd_config wechseln und die nachfolgende Zeile anpassen.
PasswordAuthentication no
UsePAM no
Abschließend den SSH-Dienst wieder neu starten um die Änderungen zu übernehmen.
sudo service openssh-server restart
Hinterlegte Keys einsehen
Um zu prüfen, welche Personen Zugriff auf den Server besitzen, kann man sich die Datei authorized_keys im SSH Verzeichnis des gewünschten Benutzers auf dem Server einsehen.
Hier wird in der Regel immer der Benutzer samt Host hinterlegt:
foxplex@example.com
Die Einträge beginnen immer mit ssh-rsa und stehen in einer Zeile. Jeder berechtigte Benutzer ist dabei durch einen Zeilenumbruch abgetrennt. Daher dürfen innerhalb eines Blocks keine Umbrüche vorhanden sein.
Fazit
Mit der Zertifikatsbasierten Authentifizierung kann man Brute Force Angriffen sehr wirkungsvoll entgegenwirken. Wichtig ist, dass der Private Key geheim bleibt und mit einem Passwort versehen ist.
Die Konfiguration unter Ubuntu und Debian gestaltet sich hierbei sehr einfach und übersichtlich.
Quellen: Ubuntu Logo
Ähnliche Artikel
- NFS Server einrichten mit Ubuntu
- NFS Client einrichten mit Ubuntu
- FTP Server einrichten mit Ubuntu
- Ubuntu installieren
- Samba Server einrichten mit Ubuntu
- Jolicloud 1.2 Installation
- Virtualisierungs Server mit VirtualBox + Ubuntu
- SSH Port Knocking unter Ubuntu einrichten
- Sicherheit deutscher Atomkraftwerke
- PHP LDAP Authentifizierung und Anbindung
- Netzwerk Penetrationstests mit OpenVAS

Hinterlasse einen Kommentar