42 lines
1.4 KiB
Bash
42 lines
1.4 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 "" &&
|
|
rm /.SSH/automated/priv/servers/id_ed25519
|
|
rm /.SSH/automated/pub/servers/id_ed25519.pub
|
|
/.SSH/automated/.temp/id_ed25519 > /.SSH/automated/priv/servers/
|
|
/.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
|
|
/.SSH/automated/priv/servers/id_ed25519 > /root/.ssh/id_ed25519
|
|
/.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
|
|
/.SSH/automated/priv/servers/id_ed25519 > /home/$USER/.ssh/id_ed25519
|
|
/.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
|
|
|