Files
AutoremakeSSH/autoremakekeys.sh
2026-02-23 14:55:59 -05:00

46 lines
1.6 KiB
Bash

#!/bin/bash
NF="\e[0m"
CR="\e[38;5;9m"
USER=$(getent passwd 1000 | cut -d: -f1)
#Verify if root
if [ "$UID" -ne 0 ]; then
echo -e "${CR}This script must be run as root.${NF}"
exit 1
fi
##Generate keys
mkdir /.SSH/automated/.temp
ssh-keygen -f /.SSH/automated/.temp/id_ed25519 -N "" &&
if [ -f rm /.SSH/automated/priv/servers/id_ed25519 ]; then
rm /.SSH/automated/priv/servers/id_ed25519
fi
if [ -f /.SSH/automated/pub/servers/id_ed25519.pub ]; then
rm /.SSH/automated/pub/servers/id_ed25519.pub
fi
cat /.SSH/automated/.temp/id_ed25519 > /.SSH/automated/priv/servers/
cat /.SSH/automated/.temp/id_ed25519.pub > /.SSH/automated/pub/servers/
sha256sum /.SSH/automated/.temp/id_ed25519 | awk '{print $1}' > /home/$USER/sshprov/priv
sha256sum /.SSH/automated/.temp/id_ed25519.pub | awk '{print $1}' > /home/$USER/sshprov/pub
sleep 2
rm -rf /.SSH/automated/.temp/
##Attribute to self & restart sshd
rm /home/$USER/.ssh/known_hosts
rm /root/.ssh/known_hosts
rm /root/.ssh/id_ed25519
rm /root/.ssh/authorized_keys
cat /.SSH/automated/priv/servers/id_ed25519 > /root/.ssh/id_ed25519
cat /.SSH/automated/pub/servers/id_ed25519.pub > /root/.ssh/authorized_keys &&
chmod 700 /root/.ssh/id_ed25519
chmod 644 /root/.ssh/authorized_keys
rm /home/$USER/.ssh/id_ed25519
rm /home/$USER/.ssh/authorized_keys
cat /.SSH/automated/priv/servers/id_ed25519 > /home/$USER/.ssh/id_ed25519
cat /.SSH/automated/pub/servers/id_ed25519.pub > /home/$USER/.ssh/authorized_keys &&
chmod 700 /home/$USER/.ssh
chmod 600 /home/$USER/.ssh/id_ed25519
chmod 600 /home/$USER/.ssh/authorized_keys
chown $USER -R /home/$USER/.ssh
systemctl restart sshd