Seu cliente tem sua chave privada (geralmente chamada id_rsa
) e chave pública (geralmente chamada id_rsa.pub
).
Se ele lhe enviar sua chave pública id_rsa.pub
- que é simplesmente um arquivo de texto on-line e você adicionar o conteúdo desse arquivo em authorized_keys
no servidor (em sua conta .ssh
directory), esse cliente poderá ssh sem senha. O simples fato de que seu cliente tem acesso à sua chave privada ( id_rsa
) é suficiente para o ssh estabelecer uma conexão sem senha. Mas essa também é a razão pela qual a chave privada deve ser protegida com muito cuidado e nunca enviada a ninguém (inclusive você, proprietário do servidor). A chave pública, por outro lado, é perfeitamente adequada para mostrar e enviar para qualquer pessoa - é inútil sem ter acesso à chave privada.
Além disso (no Linux, pelo menos), o ssh tem certas regras referentes às permissões dos arquivos id_rsa
, id_rsa.pub
e authorized_keys
. Por exemplo, ele se recusará a funcionar se as permissões da chave privada e das chaves autorizadas não forem suficientemente rigorosas (algo como 0600 - somente propriedade do usuário deve estar em vigor).