Public repo to distribute scripts and config's
25'ten fazla konu seçemezsiniz
Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
|
- #!/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"
|