Usando a ssh
linha de comando (OpenSSH), posso especificar a impressão digital da chave do host do servidor?
Isso é possível com winscp.com usando (por exemplo) -hostkey="ssh-rsa 2048 AA:BB:CC...etc
Eu li a página do manual algumas vezes, peço desculpas se perdi o óbvio lá.
Não quero apenas aceitar automaticamente uma chave do host e não quero exigir que o usuário atualize a chave known_hosts
, mas especifique a chave do host de alguma forma na linha de comando.
ssh
ssh-keys
public-key
hostkey
payo
fonte
fonte
Respostas:
Não há opção de linha de comando no OpenSSH para passar uma impressão digital da chave do host.
Embora você possa usar um arquivo temporário (com o mesmo formato que o
known_hosts
) essh
utilizá-lo usando-o UserKnownHostsFile
:Consulte as páginas de manual
ssh
(para o-o
) essh_config
(para oUserKnownHostsFile
).Você também pode considerar usar o
StrictHostKeyChecking yes
.Conforme sugerido em Aceitar automaticamente a impressão digital da chave rsa na linha de comando , você pode escrever um pequeno script que permita isso:
Se você chamar o script
ssh_known_host
, poderá usá-lo, passando a chave como o primeiro argumento:fonte
-o UserKnownHostsFile=<(echo "hostname ssh-rsa ...")
que não funciona?<()
pode ser lido apenas uma vez, enquantossh
lê o arquivo repetidamente.