Respostas:
Você precisa da chave do host para saber que está se conectando ao servidor certo e não falso.
# private key
openssl genrsa -out privkey.pem 2048
# public key
openssl rsa -in privkey.pem -pubout -out pubkey.pem
Para mais informações:
http://www.openssl.org/docs/apps/rsa.html
http://www.openssl.org/docs/HOWTO/keys.txt
Difere de uma distribuição para outra. No Ubuntu, use este comando:
ssh-keygen
Ele irá gerar duas chaves, uma pública (a que você compartilhará com o servidor) e a outra é privada e você não deverá compartilhar com ninguém. Depois que a chave pública é copiada nas ~ / .ssh / allowed_keys no servidor, você pode efetuar o login sem solicitar a senha.
Chaves públicas / privadas são como bloqueios e chaves: o servidor envia um bloqueio, mas mantém a chave e, em seguida, você bloqueia suas mensagens no servidor. Você também precisa enviar um bloqueio ao servidor para poder recuperar esses dados.