Você está confundindo dois tipos diferentes de chaves SSH lá. Embora sejam semelhantes em estrutura, eles têm um propósito muito diferente.
Sua chave pública é o que poderia ser chamado de chave de usuário : embora seja pública , ou seja, não há necessidade de mantê-la em segredo, não publicado automaticamente por qualquer meio. Se você quiser colocá-lo em sua página da web, claro, você pode fazer isso. Mas você deve fazer isso sozinho.
As chaves por máquina, por outro lado, são chamadas chaves do host . Esses são trocados automaticamente no login, então eles podem ser considerados publicados . Mas as chaves de host não entram em um arquivo authorized_keys
: elas entram em known_hosts
. Apenas ter a chave de host de alguma máquina não dará a ninguém qualquer tipo de acesso: apenas permite que seu cliente SSH confirme que a máquina é a mesma de antes quando você se conecta a ela.
Se o administrador do sistema optar por ativar HostbasedAuthentication
in /etc/ssh/sshd_config
e a chave do host do host remoto estiver no arquivo /etc/ssh/ssh_known_hosts
do sistema inteiro, será possível adicionar o nome do host remoto a /etc/hosts.equiv
ou /etc/ssh/shosts.equiv
para permitir que todos nesse host remoto registrem contas correspondentes no host local, sem digitar uma senha. Se o administrador do sistema também definir IgnoreRhosts
para no
, você, como usuário comum, poderá permitir que um usuário específico em um host remoto específico acesse sua conta no host local sem uma senha, colocando a chave do host do host remoto para seu ~/.ssh/known_hosts
e o nome de usuário @ nome do host no seu ~/.rhosts
ou ~/.shosts
. Mas este método de autenticação está desativado por padrão.
(Por que dois arquivos como ~/.shosts
e ~/.rhosts
, você acha? Bem, é porque o arquivo .rhosts
foi usado pelo antigo não criptografado rsh
/ rlogin
/ rexec
/ rcp
de ferramentas, e o SSH foi originalmente criado como substituto imediato para ele. Você usaria .rhosts
ou hosts.equiv
se quisesse permitir o acesso por meio das ferramentas rsh
e ssh
e .shosts
ou shosts.equiv
se você quisesse permitir apenas o acesso SSH.)