diff --git a/spoke/setup-spoke.sh b/spoke/setup-spoke.sh index b1e65be..297a3b5 100644 --- a/spoke/setup-spoke.sh +++ b/spoke/setup-spoke.sh @@ -2,7 +2,7 @@ set -euo pipefail HUB_HOST="" -HUB_USER="armbian" +HUB_USER="" ARMBIAN_HOME="/home/armbian" SSH_DIR="$ARMBIAN_HOME/.ssh" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" @@ -44,6 +44,8 @@ header() { echo -e "\n${CYAN}═════════════════ read -rp "Hub hostname [oily.dad]: " HUB_HOST HUB_HOST="${HUB_HOST:-oily.dad}" +read -rp "Hub SSH user [armbian]: " HUB_USER +HUB_USER="${HUB_USER:-armbian}" header "TinyBoard Spoke Setup" @@ -76,7 +78,8 @@ read -rp "Choose [1/2]: " KEY_CHOICE case "$KEY_CHOICE" in 1) - KEY_NAME="oilykey" + read -rp "Key name [hubkey]: " KEY_NAME + KEY_NAME="${KEY_NAME:-hubkey}" KEY_PATH="$SSH_DIR/$KEY_NAME" mkdir -p "$SSH_DIR" chown armbian:armbian "$SSH_DIR" @@ -102,8 +105,8 @@ case "$KEY_CHOICE" in read -rp "Press ENTER once the key has been added to ${HUB_HOST}..." ;; 2) - read -rp "Enter a name for the key file (e.g. oilykey): " KEY_NAME - KEY_NAME="${KEY_NAME:-oilykey}" + read -rp "Enter a name for the key file [hubkey]: " KEY_NAME + KEY_NAME="${KEY_NAME:-hubkey}" KEY_PATH="$SSH_DIR/$KEY_NAME" mkdir -p "$SSH_DIR" chown armbian:armbian "$SSH_DIR" @@ -131,7 +134,7 @@ header "Testing SSH Connection" info "Testing connection to $HUB_HOST..." retry_or_abort \ "sudo -u armbian ssh -i \"$KEY_PATH\" -o BatchMode=yes -o ConnectTimeout=10 \"$HUB_USER@$HUB_HOST\" exit" \ - "SSH connection to $HUB_HOST failed. Check that finn added your public key." + "SSH connection to $HUB_HOST failed. Check that the hub owner added your public key." header "Finding Available Tunnel Port" info "Scanning for a free port on $HUB_HOST starting from $START_PORT..." @@ -147,14 +150,14 @@ for PORT in $(seq "$START_PORT" $((START_PORT + 20))); do fi done -[ -n "$TUNNEL_PORT" ] || die "Could not find a free port between $START_PORT and $((START_PORT + 20)). Ask finn to free up a port." +[ -n "$TUNNEL_PORT" ] || die "Could not find a free port between $START_PORT and $((START_PORT + 20)). Ask the hub owner to free up a port." header "Configuring compose.yaml" info "Setting port to $TUNNEL_PORT and key to $KEY_NAME..." sed -i "s|-R [0-9]*:localhost:22|-R ${TUNNEL_PORT}:localhost:22|g" "$COMPOSE" sed -i "s|-i /home/armbian/.ssh/[^ ]*|-i /home/armbian/.ssh/${KEY_NAME}|g" "$COMPOSE" -sed -i "s|/home/armbian/.ssh/oilykey[^:]*:/home/armbian/.ssh/oilykey[^:]*|${SSH_DIR}/${KEY_NAME}:${SSH_DIR}/${KEY_NAME}|g" "$COMPOSE" +sed -i "s|/home/armbian/.ssh/[^:]*:/home/armbian/.ssh/[^:]*|${SSH_DIR}/${KEY_NAME}:${SSH_DIR}/${KEY_NAME}|g" "$COMPOSE" sed -i "s|container_name: spoke-autossh|container_name: ${SPOKE_NAME}-autossh|g" "$COMPOSE" sed -i "s|container_name: spoke-syncthing|container_name: ${SPOKE_NAME}-syncthing|g" "$COMPOSE" sed -i "s|hostname: spoke-syncthing|hostname: ${SPOKE_NAME}-syncthing|g" "$COMPOSE"