server_init/init.sh

43 lines
1.1 KiB
Bash
Raw Normal View History

#!/bin/bash
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
echo "=== Server Init ==="
echo ""
read -p "Username [ubuntu]: " OLD_USER
OLD_USER="${OLD_USER:-ubuntu}"
read -p "Host: " HOST
read -p "SSH public key path [~/.ssh/id_ed25519.pub]: " PUBKEY_PATH
PUBKEY_PATH="${PUBKEY_PATH:-$HOME/.ssh/id_ed25519.pub}"
read -p "New username: " NEW_USER
SSH_TARGET="${OLD_USER}@pangolin.${HOST}"
echo ""
echo "Set a password for '$NEW_USER' (used for sudo):"
read -s -p "Password: " USER_PASSWORD
echo
read -s -p "Confirm: " USER_PASSWORD_CONFIRM
echo
if [ "$USER_PASSWORD" != "$USER_PASSWORD_CONFIRM" ]; then
echo "Error: Passwords do not match"
exit 1
fi
if [ ! -f "$PUBKEY_PATH" ]; then
echo "Error: Public key file not found: $PUBKEY_PATH"
exit 1
fi
PUBKEY=$(cat "$PUBKEY_PATH")
export SCRIPT_DIR HOST OLD_USER NEW_USER SSH_TARGET PUBKEY USER_PASSWORD
source "$SCRIPT_DIR/scripts/01_create_user.sh"
source "$SCRIPT_DIR/scripts/02_remove_old_user.sh"
source "$SCRIPT_DIR/scripts/03_run_playbook.sh"
source "$SCRIPT_DIR/scripts/04_show_setup_info.sh"