OpenSSH 7.6 Entradas de vários hosts não correspondentes

1

Estou tendo um problema com o OpenSSH 7.6p1 em uma nova instalação do Ubuntu 16.04 (um problema que não existia no meu Ubuntu anterior, do qual copiei o arquivo de configuração. Infelizmente, esse sistema operacional foi destruído)

Estou tentando desativar a verificação de chave de host restrita para um conjunto específico de domínios (no exemplo abaixo, qualquer coisa que corresponda a *.mydomain.com ). /etc/ssh/ssh_config está completamente comentado. Eu tenho um arquivo de configuração em ~/.ssh/config que equivale a isso:

Host                       *.mydomain.com
StrictHostKeyChecking      no
UserKnownHostsFile         /dev/null

Host                       foo
HostName                   myserver.mydomain.com
PasswordAuthentication     yes
User                       myuser

Agora, quando executo ssh foo , esperaria que alias a [email protected] , percebesse que não deveria executar StrictHostKeyChecking, peça uma senha e (quando a senha correta for digitada), escreva um novo host Entrada de chave para /dev/null (que, ofc, é essencialmente um NOP).

No entanto, quando eu executo ssh foo atualmente no meu sistema, ele faz alias e tenta se conectar ao servidor correto com o usuário correto (ou seja, ele está lendo meu arquivo de configuração, senão não saberia o que 'foo' foi), mas me dá um Erro de Validação da Chave do Host (que, de outra forma, estaria correto, pois a Chave do Host está errada em known_hosts). Se eu excluir a chave incorreta de known_hosts e tentar novamente, ela gravará a nova Chave do Host em known_hosts em vez de / dev / null. Essencialmente, é como se a primeira estrofe do meu arquivo de configuração estivesse sendo ignorada.

Isso é um problema com minha configuração, ou isso é um problema conhecido ou algo assim? Qualquer ajuda seria apreciada.

    
por Cody S 01.11.2017 / 21:10

1 resposta

1

O SSH pesquisa apenas o arquivo de configuração uma vez para encontrar opções. Por isso, o argumento do nome do host foo localiza todas as seções correspondentes e as mescla.

Ele não volta novamente através da configuração, procurando por uma nova configuração baseada no nome / endereço final do host que será conectado.

Portanto, o 'problema' é simplesmente que você espera que o ssh funcione de maneira diferente e como funciona. Me desculpe por isso. Na ocasião, desejei que funcionasse do jeito que você está esperando também.

Sobre tudo o que posso sugerir é que você instale a funcionalidade de preenchimento automático disponível para a maioria dos shells. Então, em vez de ter um alias para foo , você tem um alias para foo.mydomain.com , basta digitar foo<tab> e ele será preenchido automaticamente em myserver.mydomain.com .

    
por 01.11.2017 / 22:19

Tags