ssh config: globale Einstellungen vs `Host *`
Was ist der Unterschied zwischen den Einstellungen der SSH-Konfigurationsdatei:
- Auf der obersten (globalen) Ebene
- In einem
Host *Umfang?
Unter der Annahme, dass es einen Unterschied gibt, in welchen Fällen wäre jeder bevorzugt?
Antworten
Die SSH-Konfigurationsdokumentation berührt dies indirekt:
Für jeden Parameter wird der erste erhaltene Wert verwendet. Die Konfigurationsdateien enthalten Abschnitte, die durch Hostspezifikationen getrennt sind. Dieser Abschnitt wird nur für Hosts angewendet, die einem der in der Spezifikation angegebenen Muster entsprechen.
Da der erste erhaltene Wert für jeden Parameter verwendet wird, sollten am Anfang der Datei mehr hostspezifische Deklarationen und am Ende allgemeine Standardeinstellungen angegeben werden.
Einstellungen in der „obersten“ Ebene können daher nicht überschrieben werden, wohingegen Einstellungen in der Host *vor diesem Abschnitt definierten Einstellung (in der „obersten“ Ebene oder in einem Abschnitt, der dem Zielhost entspricht) überschrieben werden.
Dies antwortet: "In welchen Fällen wäre jeder bevorzugt": Die "oberste" Ebene sollte für Einstellungen verwendet werden, die nicht überschrieben werden sollten, und der Host *Abschnitt, der als letzter kommen sollte, sollte für Standardeinstellungen verwendet werden.