Я понимаю, как работает ~ / .ssh / config, что каждая строка 'Host' вступает в силу для любого хоста, соответствующего после этой точки в файле конфигурации.
У меня есть несколько личных серверов и рабочих серверов, к которым мне нужно подключиться. Я пытаюсь сделать что-то вроде следующего:
# Общие настройки ControlMaster auto ControlPath ~/.ssh/controlmaster/%r@%h:% p ВпередАгент да ForwardX11 да GSSAPIAАутентификация нет PubkeyAuthentication да # Персональные серверы Хост * Пользователь harleypig IdentityFile ~ / .ssh / personal_id_rsa Host host1 Имя хоста host1.com Host host2 Имя хоста host2.com # Работа серверов Хост * Пользователь alan.young IdentityFile ~ / .ssh / work_id_rsa Host work1 Имя хоста work1.companyserver.com Host work2 Имя хоста work2.companyserver.com Хост * Пользователь devuser Host dev1 Имя хоста dev1.companyserver.com Host dev2 Имя хоста dev2.companyserver.com
Документы, кажется, указывают, что host1 и host2 должны использовать 'personal_id_rsa' и пользователя harleypig. work1, work2, dev1 и dev2 должны использовать 'work_id_rsa', и первые два должны быть пользователем 'alan.young', а dev1 и dev2 должны быть пользователем 'devuser'
Однако этого не происходит. Что бы я ни указывал на «Host *», это то, с чем пытаются соединиться все следующие хосты. Я недоразумение или что-то упустил?