commit 131914a37821ffaf98c6f57357ff5edadb241d80 Author: Ryan Hamilton Date: Thu Jul 3 16:49:46 2025 +0000 Add create-user.sh diff --git a/create-user.sh b/create-user.sh new file mode 100644 index 0000000..356144b --- /dev/null +++ b/create-user.sh @@ -0,0 +1,43 @@ +#!/bin/bash + +echo "🔐 Ansible User Setup Script" +echo "-----------------------------" + +# Username prompt +read -p "👤 Enter username to create (default: ansible): " USERNAME +USERNAME=${USERNAME:-ansible} + +# SSH key prompt +read -p "🔑 Paste the SSH public key: " PUBKEY + +# Group prompt +read -p "👥 Enter comma-separated groups to add (default: sudo, e.g. sudo,docker): " GROUPS +GROUPS=${GROUPS:-sudo} + +# Convert group list into array +IFS=',' read -ra GROUP_ARRAY <<< "$GROUPS" + +# Create user +echo "" +echo "📋 Creating user: $USERNAME" +useradd -m -s /bin/bash "$USERNAME" + +# Add user to each group +for group in "${GROUP_ARRAY[@]}"; do + echo "➕ Adding $USERNAME to group: $group" + usermod -aG "$group" "$USERNAME" +done + +# Set up SSH +echo "🔒 Setting up SSH access..." +mkdir -p /home/$USERNAME/.ssh +echo "$PUBKEY" > /home/$USERNAME/.ssh/authorized_keys +chmod 700 /home/$USERNAME/.ssh +chmod 600 /home/$USERNAME/.ssh/authorized_keys +chown -R $USERNAME:$USERNAME /home/$USERNAME/.ssh + +# Done +echo "" +echo "✅ User '$USERNAME' created." +echo "📦 Groups added: ${GROUP_ARRAY[*]}" +echo "🎉 SSH key installed and permissions secured."