ssh: Não foi possível resolver o nome do host - High Sierra

2

Estou apoiando um colega de trabalho que recentemente atualizou seu MacBook Pro para o Sierra da Sierra. Ele está tentando se conectar a uma das nossas caixas no campo via ssh. A caixa em questão tem um endereço IPv6.

O arquivo ~/.ssh/config está vazio e as chaves ssh não foram alteradas. O arquivo /etc/ssh/ssh_config é o padrão instalado no MBP. Dig funciona muito bem e relata o endereço IPv6 adequado da caixa. Ping6 também funciona como esperado. Ele pode se conectar ao nosso servidor git interno, que é publicado via DNS com um endereço IPv4 e push / pull sem problemas.

Quando eu o levo para a caixa, assim:

ssh user@hostname

A conexão falha com:

ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known

Adicionando -vvvv ao ssh produz a seguinte saída:

ssh -vvvv [hostname]
OpenSSH_7.6p1, LibreSSL 2.6.2
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to [hostname] port 22.
ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known

Se ele se conectar ao appliance usando o endereço IPv6, a conexão será bem-sucedida e ele poderá fazer o login.

Nossos servidores DNS estão devidamente configurados e atendem a endereços conforme o esperado. Estou em um MBP com o Sierra e não estou tendo problemas para me conectar. Além disso, o nosso grupo usa Macbooks de várias safras e sabores do sistema operacional (nenhum outro usuário do High Sierra) e, até o momento, ele é o único que está enfrentando esse problema.

EDIT: Nós tentamos a solução apresentada aqui . Mas, a proteção de integridade do sistema da Apple ficou no caminho. Eu não estou prestes a desligá-lo neste momento. Eu gostaria de deixar isso como último recurso.

    
por jrogers63 22.12.2017 / 20:01

1 resposta

3

Veja um trabalho que ajudou nesse caso:

# install openssh from brew
brew install openssh

# /usr/local/sbin shouldn't be writable on High Sierra (by default), 
# so brew will fail to link the ssh binary

brew unlink openssh
ln -s /usr/local/Cellar/openssh/<version of openssh>/bin/ssh /usr/local/bin/ssh

Isso vinculou uma versão do ssh que é utilizável. Meu colega de trabalho agora pode se conectar conforme o esperado. Como agora existem duas versões do ssh em seu mac, é importante certificar-se de que a versão openssh instalada via brew seja encontrada no PATH primeiro, por exemplo.

PATH=/usr/local/bin:/usr/bin
    
por 22.12.2017 / 20:01