web-dev-qa-db-fra.com

Comment annuler un ssh-copy-id?

J'ai un cluster hadoop à 2 nœuds.

J'ai lancé cette commande sur le maître:

$ssh-copy-id -i /home/hadoop/.ssh/id_rsa.pub [email protected]

Comment puis-je annuler cela? Je voudrais réellement réaffecter la clé.

192.168.1.1 est l'esclave.

Identifiez la clé publique que vous avez copiée lors de l'exécution de ssh-copy-id:

cat ~/.ssh/id_rsa.pub

SSH sur le serveur sur lequel vous avez copié la clé:

ssh [email protected]

Editez le fichier ~hadoop/.ssh/authorized_keys sur 192.168.1.1 à l’aide de votre éditeur préféré et supprimez la ligne contenant votre clé.

20
David Edwards

Si vous avez fait un ssh-copy-id comme:

remote='user@machine'
ssh-copy-id -i $remote

Vous pouvez donc accéder à cette machine distante sans utiliser de mot de passe:

ssh $remote

Pour l'annuler de manière systématique, vous pouvez utiliser un script tel que:

idssh=`cat ~/.ssh/id_rsa.pub | awk '{print $2}'`
ssh $remote "sed -i '/$idssh/{d}' .ssh/authorized_keys"

Je l'utilise dans des scripts dont j'ai besoin pour scp plusieurs fichiers, je ne demande donc qu'un mot de passe.

3
Javi M.