diff --git a/borgmatic_setup.sh b/borgmatic_setup.sh index d55371d..2faa0af 100755 --- a/borgmatic_setup.sh +++ b/borgmatic_setup.sh @@ -675,18 +675,18 @@ if ! inf_follow "Checking for default ssh key at $SSH_KEY_FILE..." "\e[1;32mYes\ fi fi +# ask for ssh password if none is set +if [ -z "$SSH_PASSWORD" ]; then + wrn "Please enter the password for the ssh key to copy it to the backup server." + wrn "This is required to enable passwordless ssh login for backups." + + read -s -p "Password: " SSH_PASSWORD + echo "" +fi + # check first if ssh key is already present on the remote end if ! inf_follow "Checking if ssh key is already present on $SSH_HOST..." "\e[1;32mYes\e[0m" "\e[1;31mNo\e[0m" run_command ssh -oStrictHostKeyChecking=no -oBatchMode=yes -i "$SSH_KEY_FILE" -p "$SSH_PORT" -l "$SSH_USER" "$SSH_HOST" exit; then - # ask for ssh password if none is set - if [ -z "$SSH_PASSWORD" ]; then - wrn "Please enter the password for the ssh key to copy it to the backup server." - wrn "This is required to enable passwordless ssh login for backups." - - read -s -p "Password: " SSH_PASSWORD - echo "" - fi - - if ! inf_follow "Copying ssh key to $SSH_HOST..." "\e[1;32mOK\e[0m" "\e[1;31mFAILED\e[0m" run_command sudo sshpass -p "$SSH_PASSWORD" ssh -oStrictHostKeyChecking=no -oBatchMode=yes -p "$SSH_PORT" "$SSH_USER@$SSH_HOST" 'mkdir -p .ssh && cat >> .ssh/authorized_keys' < "$SSH_KEY_FILE"; then + if ! inf_follow "Copying ssh key to $SSH_HOST..." "\e[1;32mOK\e[0m" "\e[1;31mFAILED\e[0m" run_command sshpass -p "$SSH_PASSWORD" ssh -oStrictHostKeyChecking=no -oBatchMode=yes -p "$SSH_PORT" "$SSH_USER@$SSH_HOST" 'mkdir -p .ssh && cat >> .ssh/authorized_keys' < "$SSH_KEY_FILE"; then err "Failed to copy ssh key to $SSH_HOST." err "Please validate your ssh password and and host settings and try again." err "If the error persists, please contact the support at $SCRIPT_SUPPORT."