SSH-Schlüssel mit PuTTY und Linux in 5 Schritten

Warum Schlüssel statt Passwort
Schlüsselbasierte SSH-Authentifizierung ist sicherer, weil ein Angreifer benutzerspezifische private Schlüssel besitzen muss, um sich anzumelden. Ein kurzer Begriff: SSH‑Key = asymmetrisches Schlüsselpaar (privat + öffentlich).
Voraussetzungen
- Windows mit PuTTY (Client) oder PuTTY-Binärdateien
- Zugang zum Linux-Server als root oder ein Benutzer mit sudo-Rechten
- Grundkenntnisse in Shell-Befehlen
Schritt 1 — PuTTY-Binärdateien herunterladen
Lade die offiziellen PuTTY-Binärdateien herunter:
http://the.earth.li/~sgtatham/putty/latest/x86/putty.zip
Entpacke das ZIP an einen Ort deiner Wahl. Enthalten sind u. a. PuTTY.exe, PuTTYgen.exe und Pageant.exe.
Schritt 2 — Privaten und öffentlichen Schlüssel erzeugen
- Starte PuTTYgen.exe.
- Klicke auf “Generate” und bewege die Maus, bis der Schlüssel erzeugt ist.
- Vergib eine Passphrase für den privaten Schlüssel (wähle eine schwierige, merkbare Passphrase).
- Klicke zuerst auf “Save public key” und dann auf “Save private key”.
Wichtig: Behalte den privaten Schlüssel sicher auf deinem Windows-System, z. B. in einem verschlüsselten Container.
Schritt 3 — Linux-Server konfigurieren (Benutzer anlegen, öffentlichen Schlüssel speichern)
Für dieses Beispiel verwenden wir den Benutzernamen autotimesheet (ersetze ihn durch deinen üblichen Benutzernamen).
Als root führe im Terminal aus:
adduser autotimesheet --disabled-password
Fülle die optionalen Informationen (Leereingabe ist zulässig). Dann:
su autotimesheet
cd /home/autotimesheet
mkdir .ssh
chmod 700 .ssh
cd .ssh
Erstelle in diesem Verzeichnis eine Datei namens authorized_keys2 und füge dort den öffentlichen Schlüssel genau in EINER ZEILE ein. Beispiel:
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIBzPeFQv+295iKzuuPH0jA9449pSHVpCwXvCR9EstmYh...
Wichtige Hinweise:
- Füge nicht den Kommentar wie [email protected] am Ende der Zeile hinzu.
- Entferne keine benötigten Schlüssel-Tags: Die Zeile muss mit “ssh-rsa” beginnen (oder dem passenden Schlüsseltyp).
- Füge nicht die “BEGIN PUBLIC KEY”/“END PUBLIC KEY”-Blöcke ein.
- Manche Distributionen nutzen authorized_keys statt authorized_keys2. Prüfe /etc/ssh/sshd_config auf AuthorizedKeysFile.
Setze die Dateiberechtigungen:
chmod 600 authorized_keys2
Schritt 4 — Privaten Schlüssel zum PuTTY-Authentifizierungsagenten hinzufügen
Starte Pageant.exe (PuTTY SSH-Authentifizierungsagent). In der Taskleiste erscheint ein Icon; rechtsklicke darauf und wähle “Add Key” beziehungsweise “Schlüssel hinzufügen” (abhängig von der Sprache deiner PuTTY-Version).
Wähle deinen gespeicherten privaten Schlüssel und gib die Passphrase ein, wenn du dazu aufgefordert wirst. Pageant hält die Passphrase im Speicher, so dass PuTTY-Verbindungen den Schlüssel ohne wiederholte Passphraseneingabe verwenden können.
Schritt 5 — Mit PuTTY zum Server verbinden
Öffne PuTTY.exe und verbinde dich als
autotimesheet@yourserver
Wenn alles korrekt eingerichtet ist, solltest du ohne Kennworteingabe angemeldet werden (die Authentifizierung erfolgt über den privaten Schlüssel im Pageant).
Wenn es nicht funktioniert — häufige Fehler und Behebung
- Datei‑/Verzeichnisberechtigungen: .ssh muss 700, authorized_keys2 600 sein. Falsche Berechtigungen lassen SSH den Schlüssel ignorieren.
- Falsche Datei: Manche Systeme erwarten ~/.ssh/authorized_keys statt authorized_keys2.
- Falsches Userkonto: Vergewissere dich, dass der öffentliche Schlüssel im Home-Verzeichnis des richtigen Benutzers liegt.
- Schlüsseltyp/Format: Achte auf “ssh-rsa” bzw. ed25519 usw.; keine zusätzlichen Kopf-/Fußzeilen einfügen.
- Pageant: Stelle sicher, dass Pageant läuft und der private Schlüssel geladen ist.
- sshd-Konfiguration: Prüfe /etc/ssh/sshd_config auf Einstellungen wie PubkeyAuthentication und AuthorizedKeysFile. Nach Änderungen sshd neu starten: sudo systemctl restart sshd
Alternative Ansätze
- Native OpenSSH (Windows 10/11 integrierter OpenSSH-Client) statt PuTTY verwenden.
- Windows Subsystem for Linux (WSL) und OpenSSH nutzen für ein Unix‑ähnliches Setup.
- Verwende cert‑based SSH (OpenSSH Certificate Authority) für zentral verwaltete Schlüssel-Validierung, wenn du viele Server verwaltest.
Mini-Methodik — Schnellcheck (Playbook)
- Erzeuge Schlüsselpaar mit PuTTYgen.
- Speichere öffentlichen Schlüssel in ~/.ssh/authorized_keys oder authorized_keys2.
- Setze Berechtigungen: 700/.ssh, 600/authorized_keys*
- Lade privaten Schlüssel in Pageant.
- Verbinde mit PuTTY als korrekter Benutzer.
- Prüfe sshd_config bei Problemen und starte sshd neu.
Rollenbasierte Checkliste
- Administrator:
- Prüfe sshd_config (PubkeyAuthentication yes)
- Überwache /var/log/auth.log beim Login-Fehler
- Sichere und rotiere Schlüssel, falls kompromittiert
- Benutzer:
- Erzeuge Schlüssel mit sicherer Passphrase
- Speichere privaten Schlüssel offline/gesichert
- Teste Verbindung vor Produktionsnutzung
Sicherheits-Härtung (Empfehlungen)
- Deaktiviere Passwort-Authentifizierung in /etc/ssh/sshd_config (PasswordAuthentication no) erst nachdem Schlüssel-Login verifiziert ist.
- Setze MaxAuthTries klein (z. B. 3).
- Nutze moderne Schlüsseltypen (ed25519) statt veralteter RSA-Längen, wenn möglich.
- Überwache Login‑Versuche und aktiviere Fail2Ban oder ähnliche Schutzmaßnahmen.
Glossar (1‑Zeiler)
- Private Key: Geheimer Schlüssel, der niemals offengelegt werden darf.
- Public Key: Schlüssel, der auf dem Server liegt und zur Verifikation dient.
- Pageant: PuTTYs SSH-Agent für die Verwaltung von privaten Schlüsseln im Speicher.
- PuTTYgen: Werkzeug zum Erzeugen von SSH‑Schlüsselpaaren für PuTTY.
Zusammenfassung
Schlüsselbasierte SSH-Authentifizierung mit PuTTY erhöht die Sicherheit gegenüber Passwort-Logins. Die wichtigsten Schritte sind: Schlüssel erzeugen, öffentlichen Schlüssel korrekt im Home des Zielbenutzers ablegen, Berechtigungen setzen, privaten Schlüssel in Pageant laden und dann mit PuTTY verbinden. Prüfe Berechtigungen, Dateinamen (authorized_keys vs authorized_keys2) und sshd-Konfiguration bei Problemen.
Wichtig: Deaktiviere Passwort-Authentifizierung erst, wenn Schlüssel-Logins zuverlässig funktionieren.
Ähnliche Materialien

Liquid Glass in iOS 26 deaktivieren

Neuen Ordner erstellen unter Windows 10

Windows 10: Updateverlauf anzeigen

Openfire auf CentOS 5.6 einrichten — Anleitung

Windows Live Mail: Anmelden & Migration zu Outlook
