Mein Verständnis der Funktionsweise von ~ / .ssh / config ist, dass jede 'Host'-Zeile für jeden Host wirksam wird, der nach diesem Punkt in der Konfigurationsdatei übereinstimmt.
Ich habe eine Reihe von Personal Servern und Arbeitsservern, zu denen ich eine Verbindung herstellen muss. Ich versuche etwas wie das Folgende zu tun:
# Allgemeine Einstellungen ControlMaster auto ControlPath ~/.ssh/controlmaster/%r@%h:% p ForwardAgent ja ForwardX11 ja GSSAPIAuthentication No. PubkeyAuthentication ja # Personal Server Gastgeber * Benutzer harleypig IdentityFile ~ / .ssh / personal_id_rsa Host host1 Hostname host1.com Host host2 Hostname host2.com # Arbeitsserver Gastgeber * Benutzer alan.young IdentityFile ~ / .ssh / work_id_rsa Host-Arbeit1 Hostname work1.companyserver.com Host work2 Hostname work2.companyserver.com Gastgeber * Benutzer devuser Host dev1 Hostname dev1.companyserver.com Host dev2 Hostname dev2.companyserver.com
Die Dokumente scheinen darauf hinzudeuten, dass host1 und host2 'personal_id_rsa' und den Benutzer harleypig verwenden sollten. work1, work2, dev1 und dev2 sollten 'work_id_rsa' verwenden und die ersten beiden sollten der Benutzer 'alan.young' sein und dev1 und dev2 sollten der Benutzer 'devuser' sein
Dies geschieht jedoch nicht. Was auch immer "Host" ist, mit dem alle folgenden Hosts eine Verbindung herstellen möchten. Missverstehe ich etwas oder vermisse ich etwas?