Meu entendimento da maneira como o ~ / .ssh / config funciona é que cada linha 'Host' entra em vigor para qualquer host correspondente após esse ponto no arquivo de configuração.
Eu tenho vários servidores pessoais e servidores de trabalho aos quais preciso me conectar. Estou tentando fazer algo como o seguinte:
# Configurações Gerais ControlMaster auto ControlPath ~/.ssh/controlmaster/%r@%h:% p ForwardAgent sim ForwardX11 sim GSSAPIAuthentication no PubkeyAuthentication yes # Servidores pessoais Hospedeiro * Usuário harleypig Arquivo de identidade ~ / .ssh / personal_id_rsa Anfitrião host1 Nome do host host1.com Host host2 Nome do host host2.com # Servidores de trabalho Hospedeiro * Usuário alan.young Arquivo de identidade ~ / .ssh / work_id_rsa Trabalho do host1 Nome do host work1.companyserver.com Trabalho do host2 Nome do host work2.companyserver.com Hospedeiro * Usuário devuser Host dev1 Nome do host dev1.companyserver.com Host dev2 Nome do host dev2.companyserver.com
Os documentos parecem indicar que host1 e host2 devem usar 'personal_id_rsa' e o usuário harleypig. work1, work2, dev1 e dev2 devem usar 'work_id_rsa' e os dois primeiros devem ser o usuário 'alan.young' e dev1 e dev2 devem ser o usuário 'devuser'
No entanto, isso não está acontecendo. Qualquer que seja o 'Host *' que eu coloquei primeiro, é com o que todos os hosts a seguir tentam se conectar. Estou entendendo mal ou faltando alguma coisa?