domingo, 22 de abril de 2018

Usando cliente SSH com chave DSA no Ubuntu 16+

Quando migrei meu computador do Ubuntu 14.04 LTS para o 16.04LTS, tive uma surpresa: não conseguia acessar os computadores remotos que eu administrava via SSH. O que aconteceu?

Com o Ubuntu 16, vem também uma nova versão do OpenSSH que é atualizado para o OpenSSH 7.0. Nas notas da versão do OpenSSH 7.0 podemos ver que "O suporte para as chaves de host e de usuário do ssh-dss está desativado por padrão em tempo de execução". Isto quer dizer que apesar de você ter as chaves no diretório .ssh, o cliente ssh do seu computador não vai nem ligar para elas.

A solução é bastante simples. Basta adicionar a seguinte linha ao arquivo ~/.ssh/config em cada máquina cliente, isto é, em cada computador onde você executa o cliente SSH. No meu caso, era somente na máquina recém atualizada.

PubkeyAcceptedKeyTypes=+ssh-dss

OBS:

Se você atualizou algum servidor e ele esteja utilizando o OpenSSH 7.0 ou mais recente, você também precisará incluir a linha mostrada acima autorizando o uso do DSA no arquivo de configuração do openssh-server. Este arquivo é /etc/ssh/sshd_config. Como no meu caso, minha estação também tem o servidor SSH habilitado (para eu poder mexer nela remotamente), eu tive que acrescentar a linha também neste arquivo. Você precisa reiniciar o serviço para que a alteração funcione:

service ssh restart



Nenhum comentário:

Postar um comentário

Desabilitar ModemManager no Ubuntu

 ModemManager provides a unified, high-level interface to control all kinds of modems: 4G/5G modems (LTE/NR) 3G modems NB-IoT / Cat-M1 modul...