Rozumiem, jak działa ~ / .ssh / config, że każda linia „Host” działa dla każdego pasującego hosta po tym punkcie w pliku konfiguracyjnym.
Mam kilka serwerów osobistych i serwerów roboczych, z którymi muszę się połączyć. Próbuję zrobić coś takiego:
# Ustawienia główne ControlMaster auto ControlPath ~/.ssh/controlmaster/%r@%h:% p ForwardAgent tak Przekaż X11 tak Nr GSSAPIA Uwierzytelnienie Pubkey Uwierzytelnienie tak # Serwery osobiste Gospodarz * Harleypig użytkownika IdentityFile ~ / .ssh / personal_id_rsa Host host 1 Nazwa hosta host1.com Host host 2 Nazwa hosta host2.com # Serwery robocze Gospodarz * Użytkownik alan.young IdentityFile ~ / .ssh / work_id_rsa Praca hosta 1 Nazwa hosta work1.companyserver.com Praca hosta 2 Nazwa hosta work2.companyserver.com Gospodarz * Użytkownik devuser Host dev1 Nazwa hosta dev1.companyserver.com Host dev2 Nazwa hosta dev2.companyserver.com
Dokumenty wydają się wskazywać, że host1 i host2 powinny używać „personal_id_rsa” i harleypig użytkownika. work1, work2, dev1 i dev2 powinny używać „work_id_rsa”, a pierwsze dwa powinny być użytkownikiem „alan.young”, a dev1 i dev2 powinny być użytkownikiem „devuser”
Tak się jednak nie dzieje. Z tym, co „Host *” stawiam na pierwszym miejscu, próbują się połączyć wszystkie następujące hosty. Czy coś źle zrozumiałem lub coś przeoczyłem?