User Tools

Site Tools


find_remove_an_old_ssh_key_for_all_users

Find_&_Remove_an_old_SSH_Key_for_all_users

With changing to a new mailserver, we had to revoke individual sshkeys in known_hosts, and add in a default system one instead.

#!/bin/bash # Script to find old ssh keys of mail on oldserver, and to comment them out.

HOSTKEY=“ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAl1NYD26bFvDqUVXuVjZuerXA1D4sx3qJ/aT7kN9oc4Z9r8uEYUyiE1ZwyjtrGQY6AZtfVo3qkNzxqpziRrf4uPVYQ+9128bEkpByCx4GGtbBzcbxa5cuRhNpYgQDyK2Dt+P03yq5M2QFmnVJPDOr8Fjf8pImUGawUeYl1XLZwkM=”

for user in `ls /home/` do

if -f "/home/$user/.ssh/known_hosts" ; then

              echo "Doing User Search and Replace for $user"

mv /home/$user/.ssh/known_hosts /home/$user/.ssh/known_hosts.bak

          grep -v "^[[^#]]*\($HOSTKEY\)" < /home/$user/.ssh/known_hosts.bak > /home/$user/.ssh/known_hosts
              chown $user:users /home/$user/.ssh/known_hosts
      fi

done

“grep -v” was used to select the “inverse” of a search string.

find_remove_an_old_ssh_key_for_all_users.txt · Last modified: 2022/07/19 20:13 by 127.0.0.1