Am Beispiel eines Debian 13 Servers
In dieser Anleitung wird die Konfiguration des SSH Zugriff angepasst, damit SSH-Keys verwendet werden können
SSH-Server installieren
Falls kein SSH-Server installiert ist, muss dieser mit dem folgenden Befehl installiert werden:
sudo apt update && sudo apt upgrade -y && sudo apt install -y openssh-server
SSH-Schlüssel erzeugen
Es gibt viele Möglichkeiten ein SSH-Schlüsselpaar zu erstellen.
Da wir später die Verbindung mit Putty aufbauen möchten, generieren wir das Schlüsselpaar auch mit dem dafür eigenen Programm puttygen:

Im Generator können wir dann die Bitlänge des Keys noch etwas hoch setzen (hier auf 4096) und anschließend mit Generate die Generierung starten. Nach dem Klick auf Geneate werdet ihr dazu aufgefordert, eure Maus im oberen Feld zu bewegen bis der grübe Balken geladen ist:

Den öffentlichen Schlüssel (1) solltet ihr euch abspeichern, den benötigen wir später.
Um den privaten Schlüssel zu verschlüsseln, empfehlen wir eine Passphrase (2) zu erstellen und darunter zu bestätigen. Diese wird dann zur Nutzung des SSH-Schlüssel verwendet.
Nun kann auch der private Schlüssel (3), der durch die Passphrase (2) verschlüsselt ist, heruntergeladen werden.

SSH-Schlüssel einrichten
Nun verbinden wir uns auf unseren Linux Server.
Dort benötigen wir einen Texteditor. In diesem Bespiel nutzen wir nano:
Anschließend können wir den generierten öffentlichen Schlüssel zu den erlaubten Schlüsseln hinzufügen.
Dazu öffnen wir die folgende Datei (ohne sudo):
nano ~/.ssh/authorized_keys
Darin fügen wir den öffentlichen Schlüssel ein und speichern die Datei mit Strg+X, y und anschließend mit Enter.
Zur Sicherheit passen wir nun die Berechtigungen auf diesen Ordner an:
chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys
Nun ist unser SSH-Schlüssel eingerichtet.
Damit wir diesen allerdings nutzen können, müssen wir folgende Konfiguration anpassen:
SSH-Key für weiteren neuen Benutzer einrichten
Zuerst den neuen Benutzer anlegen:
sudo adduser deinneuerbenutzer
Danach wird man aufgefordert ein Kennwort festzulegen und die restlichen Fragen können mit Enter bestätigt werden.
Dieser muss anschließend zur sudo-Gruppe hinzugefügt werden:
sudo usermod -aG sudo deinneuerbenutzer
Nun können wir in den erstellten Benutzer wechseln:
sudo su deinneuerbenutzer
Zur Sicherheit prüfen wir, ob wir wirklich sudo-Rechte haben:
sudo ls /root
Falls dabei ein Fehler ausgegeben wird, hat der Benutzer keine sudo-Rechte.
Jetzt können wir auch für den neuen Benutzer das .ssh Verzeichnis anlegen und die Liste mit den erlaubten SSH-Schlüsseln erstellen:
mkdir ~/.ssh
nano ~/.ssh/authorized_keys
Darin fügen wir den öffentlichen Schlüssel ein und speichern die Datei mit Strg+X, y und anschließend mit Enter.
Zur Sicherheit passen wir nun die Berechtigungen auf diesen Ordner an:
chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys
Nun ist unser SSH-Schlüssel auch für den neuen Benutzer eingerichtet.
SSH Konfiguration anpassen
Zuerst öffnen wir die Konfiguration unseres SSH-Servers wie folgt:
sudo nano /etc/ssh/sshd_config
Dort müssen wir nun die Zeile PubkeyAuthentication yes (ist standardmäßig mit # auskommentiert) so anpassen, dass kein # davor steht und dahinter yes steht. Damit erlauben wir den Login mit SSH-Schlüsseln.
Um zusätzlich die Sicherheit zu erhöhen, können wir nun noch nach PasswordAuthentication yes und PermitRootLogin yes suchen.
Der Wert PasswordAuthentication yes erlaubt den Zugriff via SSH mit dem normalen Passwort. Dies können wir mit PasswordAuthentication no unterbinden (bitte erst, wenn der Zugriff via SSH-Schlüssel getestet wurde).
Um die Sicherheit weiter zu erhöhen, sollte man sich einen eigenen Benutzer anlegen und nicht mit dem root Benutzer arbeiten. Damit wird der root-Login via SSH nicht mehr benötigen und kann deaktiviert werden in dem wir PermitRootLogin yes zu PermitRootLogin no ändern.
Nach jeder Anpassung muss die Konfiguration mit Strg+X, y und anschließend mit Enter gespeichert werden und anschließend der SSH-Server Dienst neu gestartet werden:
sudo systemctl restart ssh
SSH-Verbindung mit Putty herstellen
Putty starten und Serveradresse auswählen:

Um uns nun mit dem SSH-Schlüssel zu verbinden, müssen wir links unter Connection -> SSH -> Auth -> Credentials der private Schlüssel ausgewählt werden:

Nun können wir die Sitzung mit dem Button Open am unteren Rand starten.
Beim Login müssen wir unseren Benutzernamen angeben:

Nach der Bestätigung des Benutzernamens muss der private Schlüssel mittels Passphrase entschlüsselt werden:

Nun ist der SSH-Zugriff erfolgreich eingerichtet und getestet.
Eventuell könnten dich diese Themen auch interessieren:
-
Veeam Agent for Linux
Am Beispiel eines Debian 13 Servers mit Veeam Agent for Linux 13 In dieser Anleitung wird Veeam Agent for Linux installiert auf einem Debian 13 Server installiert. Installation Veeam Agent for Linux Zuerst müssen wir das Veeam Software Repository Installationspaket von der Veeam Webseite https://www.veeam.com/de/linux-backup-free-download.html herunterladen. Anschließend können wir das Veeam Software Repository Installationspaket mit…
-
Zugriff mit SSH absichern
Am Beispiel eines Debian 13 Servers In dieser Anleitung wird die Konfiguration des SSH Zugriff angepasst, damit SSH-Keys verwendet werden können SSH-Server installieren Falls kein SSH-Server installiert ist, muss dieser mit dem folgenden Befehl installiert werden: SSH-Schlüssel erzeugen Es gibt viele Möglichkeiten ein SSH-Schlüsselpaar zu erstellen.Da wir später die Verbindung mit Putty aufbauen möchten, generieren…
-
Ubuntu Version updaten
Am Beispiel eines Ubuntu Server 20.04 auf Version 24.10 In dieser Anleitung wird das Update der Ubuntu Server Betriebsversion beschrieben. Damit wir nicht vor jeden Befehl der erhöhte Rechte benötigt „sudo“ schreiben müssen, wechseln wir für die Zeit, in der das Terminal-Fenster offen bleibt (bzw. wir am Server via SSH angemeldet sind) in den „superuser“-Modus….
