From b072645f48553bf1e4a8280a9a89b736c3d033f7 Mon Sep 17 00:00:00 2001 From: petep Date: Wed, 11 Mar 2026 11:10:19 +0000 Subject: [PATCH] Update 'add-tf-users.sh' --- add-tf-users.sh | 66 +++++++++++++++++++++++++++++++++---------------- 1 file changed, 45 insertions(+), 21 deletions(-) diff --git a/add-tf-users.sh b/add-tf-users.sh index 8428c13..88a1987 100644 --- a/add-tf-users.sh +++ b/add-tf-users.sh @@ -1,21 +1,45 @@ -##/bin/bash -apt -y install zsh -useradd -Gsudo -m -s /usr/bin/zsh -p '$6$w6py6llD3P4FgJR4$EzDQ9yIrpNDskKLAPUQrsBqVnDeBbVaeOzRyJp2R8k7L8IC7SjZEXFYyhxywS7J9r5uw/tB1korefeEbJjUS31' -c "Jan De Landtsheer" delandtj -mkdir /home/delandtj/.ssh -wget -qO- https://github.com/delandtj.keys >> /home/delandtj/.ssh/authorized_keys -chown -R delandtj:delandtj /home/delandtj/.ssh - -useradd -m -Gsudo -s /usr/bin/zsh -p '$6$w6py6llD3P4FgJR4$EzDQ9yIrpNDskKLAPUQrsBqVnDeBbVaeOzRyJp2R8k7L8IC7SjZEXFYyhxywS7J9r5uw/tB1korefeEbJjUS31' -c "Lee Smet" lee -mkdir /home/lee/.ssh -wget -qO- https://github.com/LeeSmet.keys >> /home/lee/.ssh/authorized_keys -chown -R lee:lee /home/lee/.ssh - -useradd -m -Gsudo -p '$6$w6py6llD3P4FgJR4$EzDQ9yIrpNDskKLAPUQrsBqVnDeBbVaeOzRyJp2R8k7L8IC7SjZEXFYyhxywS7J9r5uw/tB1korefeEbJjUS31' -c "Peter Nashaat" -s /bin/bash nashaatp -mkdir /home/nashaatp/.ssh -wget -qO- https://github.com/PeterNashaat.keys >> /home/nashaatp/.ssh/authorized_keys -chown -R nashaatp:nashaatp /home/nashaatp/.ssh - -useradd -m -Gsudo -p '$6$w6py6llD3P4FgJR4$EzDQ9yIrpNDskKLAPUQrsBqVnDeBbVaeOzRyJp2R8k7L8IC7SjZEXFYyhxywS7J9r5uw/tB1korefeEbJjUS31' -c "Samir Hossny" -s /bin/bash hossnys -mkdir /home/hossnys/.ssh -wget -qO- https://github.com/hossnys.keys >> /home/hossnys/.ssh/authorized_keys -chown -R hossnys:hossnys /home/hossnys/.ssh +#!/bin/bash +set -euo pipefail + +# Idempotent: safe to re-run — skips existing users, refreshes SSH keys + +echo "=== Setting up TF Users ===" + +DEBIAN_FRONTEND=noninteractive apt-get install -y zsh >/dev/null 2>&1 + +add_user() { + local username="$1" + local fullname="$2" + local shell="$3" + local github_user="$4" + + if id "$username" &>/dev/null; then + echo "[OK] User '$username' already exists" + else + useradd -m -G sudo -s "$shell" \ + -p '$6$w6py6llD3P4FgJR4$EzDQ9yIrpNDskKLAPUQrsBqVnDeBbVaeOzRyJp2R8k7L8IC7SjZEXFYyhxywS7J9r5uw/tB1korefeEbJjUS31' \ + -c "$fullname" "$username" + echo "[OK] Created user '$username'" + fi + + mkdir -p "/home/$username/.ssh" + chmod 700 "/home/$username/.ssh" + + # Refresh SSH keys from GitHub + if wget -qO "/home/$username/.ssh/authorized_keys" "https://github.com/${github_user}.keys" 2>/dev/null; then + chmod 600 "/home/$username/.ssh/authorized_keys" + echo "[OK] Updated SSH keys for '$username' from github.com/${github_user}" + else + echo "[WARN] Could not fetch SSH keys for '$username' from github.com/${github_user}" + fi + + chown -R "$username:$username" "/home/$username/.ssh" +} + +add_user "delandtj" "Jan De Landtsheer" "/usr/bin/zsh" "delandtj" +add_user "lee" "Lee Smet" "/usr/bin/zsh" "LeeSmet" +add_user "nashaatp" "Peter Nashaat" "/bin/bash" "PeterNashaat" +add_user "hossnys" "Samir Hossny" "/bin/bash" "hossnys" + +echo "" +echo "[OK] TF Users setup complete" \ No newline at end of file