Adiciona o host remoto ao arquivo known_hosts sem prompt [duplicado]

2

Eu escrevi alguns scripts e gostaria de adicionar um host remoto ao meu arquivo known_hosts sem nenhuma interação. Posso executar um comando como ssh -o "StrictHostKeyChecking no" [email protected] , que adicionará a chave do host remoto aos meus hosts conhecidos, mas será seguido por um prompt de senha ssh. Qualquer maneira de fazer isso sem o prompt de senha?

    
por VenomFangs 21.10.2014 / 18:33

2 respostas

1

Como mencionado em outra resposta, ssh-keyscan é ideal, mas se por algum motivo você não puder fazer isso: Você pode desativar a autenticação por senha configurando a opção

PasswordAuthentication no

em um arquivo de configuração (por exemplo, .ssh/config ) ou passando a opção -o PasswordAuthentication na linha de comando, evitando assim que o ssh peça uma senha. Não é necessário dizer que o servidor vê isso como uma tentativa de login com falha, a menos que você tenha outro método de autenticação configurado que faça permitir o login.

Como você já observou, é necessário alterar o valor da opção StrictHostKeyChecking de ask , o padrão, para no (ou yes , se você quiser uma segurança melhor) para evitar o aviso sobre se você deseja adicionar a chave do host a .ssh/known_hosts .

    
por 21.10.2014 / 19:42
4

Use ssh-keyscan 10.x.x.x >> /path/to/known_hosts/file (use -H para melhor segurança, depende do contexto).

    
por 21.10.2014 / 19:22