EMZETT.
Login

SSH-Config: Mehrere Server bequem verwalten

Kurz: Die Datei ~/.ssh/config speichert Kurznamen, Benutzer, Ports und Schlüssel für Server; statt langer Befehle genügt dann ssh meinserver.

Genauer: Wer mit mehreren Rechnern arbeitet, tippt sonst ssh -i ~/.ssh/id_ed25519 -p 2222 admin@203.0.113.10. Die SSH-Config macht daraus ein kurzes ssh web. Sie gilt auch für scp, rsync und Git über SSH.

Im Detail

Beispiel

# ~/.ssh/config
Host web
    HostName 203.0.113.10
    User admin
    Port 2222
    IdentityFile ~/.ssh/id_ed25519
    IdentitiesOnly yes

Host github.com
    User git
    IdentityFile ~/.ssh/id_github

Host *
    ServerAliveInterval 60
    AddKeysToAgent yes

Jetzt: ssh web, scp datei web:/tmp/, rsync -av ordner/ web:backup/. Host * gilt für alle als Standard.

Nützliche Optionen

  • ProxyJump (Sprungserver): ProxyJump bastion verbindet über einen Zwischenrechner zu einem Server im internen Netz.
  • LocalForward / RemoteForward: Portweiterleitung (Tunnel) fest hinterlegen.
  • ControlMaster/ControlPersist: wiederverwendet eine bestehende Verbindung, spart Anmeldezeit.
  • ServerAliveInterval: verhindert Verbindungsabbrüche bei Leerlauf.
  • StrictHostKeyChecking: Prüfung des Server-Fingerabdrucks (nicht abschalten!).
  • IdentityFile + IdentitiesOnly: benutzt gezielt den richtigen Schlüssel.

Sicherheit

Berechtigungen: chmod 700 ~/.ssh, chmod 600 ~/.ssh/config und private Schlüssel. Nutze eigene Schlüssel pro Dienst oder zumindest pro Umgebung, geschützt mit Passphrase, und den ssh-agent. Passwort-Anmeldung am Server abschalten, wenn Schlüssel funktionieren. Die Config enthält keine Geheimnisse, aber Hostnamen und Benutzer: nicht blind öffentlich teilen.

Fehlersuche

ssh -v web (mehr -vvv) zeigt Details; ssh -G web gibt die wirksame Konfiguration aus. Typische Fehler: falscher Schlüssel, falsche Dateirechte, geänderter Server-Fingerabdruck (Eintrag in known_hosts prüfen, nicht einfach löschen, wenn du nicht weißt warum), Firewall oder falscher Port.

Siehe auch: ssh-agent, SSH-Tunnel, scp