From dea41f3e8f23f1b1e4086d6c76182bec24e804ac Mon Sep 17 00:00:00 2001 From: Franscobec Date: Sat, 31 Jan 2026 21:49:14 -0500 Subject: [PATCH] Add file verification Add verification of file presence to avoid "file not found" errors displayed in terminal --- renewkeys.sh | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/renewkeys.sh b/renewkeys.sh index f7bda72..a17051a 100644 --- a/renewkeys.sh +++ b/renewkeys.sh @@ -49,9 +49,16 @@ fi rootcheck(){ serversidePRIV=$(cat /.SSH/.temp/priv | awk '{print $1}') serversidePUB=$(cat /.SSH/.temp/pub | awk '{print $1}') +if [ -f /root/.ssh/id_ed25519 ]; then rootPRIV=$(sha256sum /root/.ssh/id_ed25519 | awk '{print $1}') +else +rootPRIV=0 +fi +if [ -f /root/.ssh/authorized_keys ]; then rootPUB=$(sha256sum /root/.ssh/authorized_keys | awk '{print $1}') - +else +rootPUB=0 +fi echo Root User Check: if [ "$rootPRIV" = "$serversidePRIV" ] then @@ -61,7 +68,9 @@ then else echo -e "${CR}Private Keys Checksum against Server - ${FB}MISMATCH${NF} ${CR}- Provisioning... ${NF}" sleep 2 + if [ -f /root/.ssh/id_ed25519 ]; then rm /root/.ssh/id_ed25519 + fi cp --no-preserve=mode,ownership /.SSH/automated/priv/servers/id_ed25519 /root/.ssh/id_ed25519 echo -e ${CY}'key data from server -> local store'${NF} chmod 700 /root/.ssh @@ -87,7 +96,9 @@ then else echo -e "${CR}Public Keys Checksum against Server - ${FB}MISMATCH${NF} ${CR}- Provisioning... ${NF}" sleep 2 + if [ -f /root/.ssh/authorized_keys ]; then rm /root/.ssh/authorized_keys + fi cp --no-preserve=mode,ownership /.SSH/automated/pub/servers/id_ed25519.pub /root/.ssh/authorized_keys echo -e ${CY}'key data from server -> local store'${NF} chmod 700 /root/.ssh @@ -108,8 +119,16 @@ fi } admincheck(){ +if [ -f /home/$USER/.ssh/id_ed25519 ]; then adminPRIV=$(sha256sum /home/$USER/.ssh/id_ed25519 | awk '{print $1}') +else +adminPRIV=0 +fi +if [ -f /home/$USER/.ssh/authorized_keys ]; then adminPUB=$(sha256sum /home/$USER/.ssh/authorized_keys | awk '{print $1}') +else +adminPUB=0 +fi echo Admin User Check: if [ "$adminPRIV" = "$serversidePRIV" ] then @@ -120,7 +139,9 @@ then else echo -e "${CR}Private Keys Checksum against Server - ${FB}MISMATCH${NF} ${CR}- Provisioning... ${NF}" sleep 2 + if [ -f /home/$USER/.ssh/id_ed25519 ]; then rm /home/$USER/.ssh/id_ed25519 + fi cp --no-preserve=mode,ownership /.SSH/automated/priv/servers/id_ed25519 /home/$USER/.ssh/id_ed25519 echo -e ${CY}'key data from server -> local store'${NF} chmod 700 /home/$USER/.ssh @@ -148,7 +169,9 @@ then else echo -e "${CR}Public Keys Checksum against Server - ${FB}MISMATCH${NF} ${CR}- Provisioning... ${NF}" sleep 2 + if [ -f /home/$USER/.ssh/authorized_keys ]; then rm /home/$USER/.ssh/authorized_keys + fi cp --no-preserve=mode,ownership /.SSH/automated/pub/servers/id_ed25519.pub /home/$USER/.ssh/authorized_keys echo -e ${CY}'key data from server -> local store'${NF} chmod 700 /home/$USER/.ssh