This repository has been archived on 2024-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
piholesync/phtransfer-server-conf.sh
2023-11-23 01:08:49 -06:00

38 lines
1.3 KiB
Bash

#!/bin/sh
## Script for NH-Opti160 to take a backup of pihole configuration, for nanopineo (or other alternate pihole servers) to pick up over SSH on a scheduled task.
## This script configures master svr
## Author: iRaven
if [[ $EUID > 0 ]]; then
echo "Not running as root, exiting"
exit
fi
echo ### phtrans config script ##
read -p "Enter the username of the low privileged user: " PHTRANSUSR
echo Making user
useradd -m ${PHTRANSUSR}
ssh-keygen -C "piholetransfer" -f /home/${PHTRANSUSR}/.ssh/id_rsa
## note that key down
PHTRANSIPRVKEY=$(cat /home/${PHTRANSUSR}/.ssh/id_rsa)
PHTRANSIPUBKEY=$(cat /home/${PHTRANSUSR}/.ssh/id_rsa.pub)
echo ${PHTRANSIPUBKEY} > /home/${PHTRANSUSR}/.ssh/authorized_keys
chown -R ${PHTRANSUSR} /home/${PHTRANSUSR}/
## Connect to client to transfer key
read -p : "Enter a server you want to configure as a client to SSH into in user@machine format:" PHTRANSCLIENT
echo Now connecting to ${PHTRANSCLIENT} over ssh
ssh -t ${PHTRANSCLIENT} "echo ${PHTRANSIPRVKEY} >> ~/.ssh/id_rsa && echo ${PHTRANSIPUBKEY} >> ~/.ssh/id_rsa.pub"
## Clean up
PHTRANSIPRVKEY=0xD3ADB33F
PHTRANSIPUBKEY=0xD3ADB33F
rm -f /home/${PHTRANSUSR}/.ssh/id_rsa
rm -f /home/${PHTRANSUSR}/.ssh/id_rsa.pub
touch ~/.phtrans-svr-conf-wasrun
echo ### Complete~! ###