How to undo an ssh-copy-id?
I have a 2 node hadoop cluster.
I ran this command on the master:
$ssh-copy-id -i /home/hadoop/.ssh/id_rsa.pub [email protected]
How can I undo this? I would actually like to reassign the key.
192.168.1.1
is the slave.
Identify the public key that you copied when you ran ssh-copy-id
:
cat ~/.ssh/id_rsa.pub
SSH to the server you copied the key to:
ssh [email protected]
Edit the file ~hadoop/.ssh/authorized_keys
on 192.168.1.1
using your preferred editor, and delete the line containing your key.
If you have done a ssh-copy-id
like:
remote='user@machine'
ssh-copy-id -i $remote
So you can access this remote machine without using a password:
ssh $remote
To undo it programmatically, you can script something like:
idssh=$(awk '{print $2}' ~/.ssh/id_rsa.pub)
ssh $remote "sed -i '\#$idssh#d' .ssh/authorized_keys"
I use it in scripts I need to scp
several files, so I ask only once for password.