Update Linux/SSH/README.md
This commit is contained in:
@@ -3,7 +3,8 @@
|
||||
```bash
|
||||
#!/bin/bash
|
||||
|
||||
printf "\033c" # Bildschirm löschen zu Beginn
|
||||
# Bildschirm löschen (Kompatibel mit Strg+L)
|
||||
printf "\033c"
|
||||
|
||||
SSH_CONFIG_DIR="/etc/ssh/sshd_config.d"
|
||||
SSH_MAIN_CONFIG="/etc/ssh/sshd_config"
|
||||
@@ -18,14 +19,14 @@ BLUE='\033[1;34m'
|
||||
WHITE='\033[1;37m'
|
||||
RESET='\033[0m'
|
||||
|
||||
# Punkt-Spinner (Docker-Stil)
|
||||
# Rotierender Kreis-Spinner
|
||||
spinner() {
|
||||
local pid=$1
|
||||
local delay=0.15
|
||||
local frames=('. ' '.. ' '...')
|
||||
while [ "$(ps a | awk '{print $1}' | grep $pid)" ]; do
|
||||
for frame in "${frames[@]}"; do
|
||||
printf " [%s] " "$frame"
|
||||
local delay=0.1
|
||||
local spinstr='|/-\'
|
||||
while kill -0 $pid 2> /dev/null; do
|
||||
for i in {0..3}; do
|
||||
printf " [%c] " "${spinstr:i:1}"
|
||||
sleep $delay
|
||||
printf "\b\b\b\b\b\b"
|
||||
done
|
||||
@@ -50,9 +51,17 @@ install_package() {
|
||||
local package=$1
|
||||
local cmd=$2
|
||||
warn "Installiere $package..."
|
||||
$cmd &> /dev/null &
|
||||
spinner $!
|
||||
log "$package wurde erfolgreich installiert."
|
||||
( $cmd &> /dev/null ) 2>&1 & # Ausgaben vollständig unterdrücken
|
||||
disown # Prozess von der Shell trennen, keine Ausgabe von [1] 3562
|
||||
local pid=$!
|
||||
spinner $pid
|
||||
wait $pid
|
||||
if [ $? -eq 0 ]; then
|
||||
log "$package wurde erfolgreich installiert."
|
||||
else
|
||||
error "Fehler bei der Installation von $package."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Überprüfe und installiere sudo, falls nicht vorhanden
|
||||
@@ -94,7 +103,7 @@ fi
|
||||
# Generiere fehlende Host-Schlüssel (Ed25519)
|
||||
if [ ! -f "$ED25519_KEY" ]; then
|
||||
warn "Host-Schlüssel fehlt. Generiere ssh_host_ed25519_key..."
|
||||
sudo ssh-keygen -t ed25519 -f $ED25519_KEY -N "" &> /dev/null &
|
||||
( sudo ssh-keygen -t ed25519 -f $ED25519_KEY -N "" &> /dev/null ) 2>&1 &
|
||||
spinner $!
|
||||
sudo chown root:root $ED25519_KEY
|
||||
sudo chmod 600 $ED25519_KEY
|
||||
@@ -127,7 +136,7 @@ for user in $SSH_USERS; do
|
||||
log "Benutzer $user existiert."
|
||||
VALID_USERS+="$user "
|
||||
else
|
||||
echo -en "${BLUE}Benutzer $user existiert nicht. Soll dieser erstellt werden? ${YELLOW}[${WHITE}y/n${YELLOW}]${RESET}: "
|
||||
echo -en "${BLUE}Benutzer ${WHITE}$user${BLUE} existiert nicht. Soll dieser erstellt werden? ${YELLOW}[${WHITE}y/n${YELLOW}]${RESET}: "
|
||||
read CREATE_USER
|
||||
if [ "$CREATE_USER" == "y" ]; then
|
||||
sudo adduser $user
|
||||
@@ -142,7 +151,7 @@ for user in $SSH_USERS; do
|
||||
sudo chmod 700 /home/$user/.ssh
|
||||
sudo chmod 600 /home/$user/.ssh/authorized_keys
|
||||
|
||||
echo -en "${BLUE}Möchtest du einen SSH Public Key für $user hinzufügen? ${YELLOW}[${WHITE}y/n${YELLOW}]${RESET}: "
|
||||
echo -en "${BLUE}Möchtest du einen SSH Public Key für ${WHITE}$user${BLUE} hinzufügen? ${YELLOW}[${WHITE}y/n${YELLOW}]${RESET}: "
|
||||
read ADD_KEY
|
||||
if [ "$ADD_KEY" == "y" ]; then
|
||||
echo -en "${BLUE}Füge den SSH Public Key hier ein: ${RESET}"
|
||||
@@ -171,5 +180,5 @@ EOL
|
||||
warn "Prüfe SSH-Konfiguration..."
|
||||
sudo sshd -t && sudo systemctl restart sshd && log "SSH-Dienst erfolgreich neu gestartet."
|
||||
|
||||
log "Setup abgeschlossen! Nur folgende Benutzer dürfen sich per SSH anmelden: $VALID_USERS"
|
||||
log "Setup abgeschlossen! Nur folgende Benutzer dürfen sich per SSH anmelden: ${WHITE}$VALID_USERS"
|
||||
```
|
||||
Reference in New Issue
Block a user