~/.ssh/config

Wiederverwendbare Verbindungsoptionen in der Clientkonfiguration speichern.

Vor der Ausführung

Der erste Block ist Dateiinhalt, kein Shell-Befehl: Bearbeiten Sie lokal ~/.ssh/config. Meist gilt der zuerst ermittelte Wert; konkrete Host-Blöcke gehören vor allgemeine Host *-Vorgaben. Schützen Sie die Datei, üblicherweise mit chmod 600 ~/.ssh/config. Keine Passwörter oder privaten Schlüssel darin speichern. ServerAlive erkennt fehlende Antworten des SSH-Peers, nicht jeden Anwendungsfehler. ssh -G zeigt ohne Verbindung die wirksame Konfiguration und kann interne Adressen oder Pfade offenlegen.

Beispiele

Den Alias lab mit Port, Schlüsseldatei und SSH-Keepalive konfigurieren.

Host lab
    HostName server.example.com
    User alice
    Port 2222
    IdentityFile ~/.ssh/id_ed25519
    IdentitiesOnly yes
    ServerAliveInterval 30
    ServerAliveCountMax 3

Über den Alias verbinden oder seine wirksame Konfiguration prüfen.

ssh lab
ssh -G lab

Optionen und Beispiele

Host patternHäufig

Starten Sie einen Block, der einem SSH-Alias ​​oder Host-Muster entspricht. Setzen Sie spezifische Blöcke vor allgemeine: Der zuerst erhaltene Wert wird verwendet.

Beispiel
Host lab
    HostName server.example.com
HostName / User / PortHäufig

Legen Sie die tatsächliche Serveradresse, den Anmeldenamen und den SSH-Port für den passenden Host fest.

Beispiel
Host lab
    HostName server.example.com
    User alice
    Port 2222
IdentityFile / IdentitiesOnlyHäufig

Wählen Sie einen privaten Schlüssel aus und beschränken Sie bei Einstellung auf „Ja“ die angebotenen Identitäten auf konfigurierte.

Beispiel
Host lab
    IdentityFile ~/.ssh/id_ed25519
    IdentitiesOnly yes
ProxyJumpHäufig

Stellen Sie eine Verbindung über einen oder mehrere SSH-Jump-Hosts her.

Beispiel
Host lab
    ProxyJump alice@bastion.example.com
LocalForward

Konfigurieren Sie einen lokalen Listener, der an ein vom SSH-Server erreichbares Ziel weitergeleitet wird.

Beispiel
Host lab
    LocalForward 127.0.0.1:15432 db.internal.example.com:5432
RemoteForward

Konfigurieren Sie einen Remote-Listener, der an ein Ziel weitergeleitet wird, das vom lokalen Computer aus erreicht wird. Es gilt die Serverrichtlinie.

Beispiel
Host lab
    RemoteForward 127.0.0.1:18080 127.0.0.1:8080
DynamicForward

Konfigurieren Sie einen lokalen SOCKS-Listener. Clients müssen separat konfiguriert werden.

Beispiel
Host lab
    DynamicForward 127.0.0.1:1080
ExitOnForwardFailure

Die SSH-Verbindung schlägt fehl, wenn die angeforderten anfänglichen Weiterleitungs-Listener nicht eingerichtet werden können.

Beispiel
Host lab
    ExitOnForwardFailure yes
ServerAliveInterval / ServerAliveCountMaxHäufig

Konfigurieren Sie Peer-Prüfungen auf SSH-Ebene und die Anzahl unbeantworteter Prüfungen, bevor die Verbindung getrennt wird.

Beispiel
Host lab
    ServerAliveInterval 30
    ServerAliveCountMax 3
ConnectTimeout

Legen Sie das Verbindungszeitlimit in Sekunden fest.

Beispiel
Host lab
    ConnectTimeout 10
ForwardAgent

Weiterleitung durch Steuerungsagenten. Ein kompromittierter Remote-Host kann Signaturen anfordern; Nur für vertrauenswürdige Hosts aktivieren.

Beispiel
Host lab
    ForwardAgent no
Include

Fügen Sie zusätzliche SSH-Konfigurationsdateien hinzu. Die Reihenfolge beeinflusst, welche Werte ausgewählt werden.

Beispiel
Include ~/.ssh/config.d/*.conf

Maßgebliche Quellen

Geprüft am 27. Oktober 2026