web-dev-qa-db-fra.com

ssh-copy-id sans authentification

Comment le serveur Linux permet-il à quiconque de copier la chaîne (clé publique) à l'aide de ssh-copy-id sans authentification? Est-ce que cela ne permet pas à l'utilisateur inconnu de copier un fichier malveillant sur le serveur?

3
Prem

ssh-copy-id automatise simplement les commandes

scp .ssh/id_rsa.pub user@other-Host:
ssh user@other-Host 'cat id_rsa.pub >> .ssh/authorized_keys'
ssh user@other-Host 'rm id_rsa.pub'

Autrement dit: il copie votre fichier id_rsa.pub local sur l'autre serveur et l'ajoute au fichier authorized_keys de l'utilisateur distant.

C'est juste un script de commodité et il requiert l'authentification. Vous devez fournir le mot de passe de userother-Host) pour que cela fonctionne. ssh-copy-id ne fait rien d'autre que scp et sshen votre nom donc s'ils exigent une authentification par mot de passe, ssh-copy-id le fera également. .

11
PerlDuck

S'ils ne connaissent pas le mot de passe, ils ne peuvent pas copier l'ID sur le serveur, donc ne désactivez pas PasswordAuthentication.

Match User user1,user2,user3
    PasswordAuthentication yes

Edit:

Si vous autorisez la connexion sans autorisation, ils n'ont même pas besoin de copier l'identifiant de leur clé, car ils peuvent quand même se connecter sans la clé, s'ils connaissent le nom d'utilisateur.

4
An0n