Como remover/ignorar um host conhecido ao tentar fazer ssh sem acesso de gravação ao arquivo de hosts conhecidos (ou sudo)

Como remover/ignorar um host conhecido ao tentar fazer ssh sem acesso de gravação ao arquivo de hosts conhecidos (ou sudo)

Sou um usuário não sudo tentando fazer ssh em outro servidor. Quando faço isso, ele reclama que a chave do host e o endereço IP do host foram alterados de acordo com o arquivoknown_hosts (e de fato mudou). Infelizmente, não consigo alterar o arquivoknown_hosts e usar a -o StrictHostKeyChecking=noopção desativa a autenticação por senha.

Responder1

não consigo alterar o known_hostsarquivo

Se você pode copiá-lo, então você pode alterar a cópia, então diga sshpara usar a cópia. As opções relevantes ssh_configsão:

GlobalKnownHostsFile
Especifica um ou mais arquivos a serem usados ​​para o banco de dados de chaves do host global, separados por espaços em branco. O padrão é /etc/ssh/ssh_known_hosts, /etc/ssh/ssh_known_hosts2.

UserKnownHostsFile
Especifica um ou mais arquivos a serem usados ​​para o banco de dados de chaves do host do usuário, separados por espaços em branco. O padrão é ~/.ssh/known_hosts, ~/.ssh/known_hosts2.

(fonte)

Mas espere!Você disse

usar a -o StrictHostKeyChecking=noopção desativa a autenticação por senha.

Acho que não é a opção que desativa a autenticação por senha. É o novo servidor que não permite. Isso significa que qualquer abordagem que permita conectar-se a esse servidor específico não funcionará junto com a autenticação por senha. Não importa se você contorna o known_hostsarquivo obsoleto ou conserta-o; o próprio servidor está configurado para não permitir senhas.

Se você tem certeza de que é ocertoservidor então peça ao administrador do servidor para permitir senhas (ou talvez eles forneçam alguma outra forma de autenticação). Peça ao seu administrador local para atualizar o known_hostsarquivo.

informação relacionada