login.sh aktualisiert
This commit is contained in:
44
login.sh
44
login.sh
@ -41,6 +41,14 @@ if ! command -v gum &> /dev/null; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Funktionen
|
||||||
|
what_port() {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# Ziel-Host-Auswahl
|
# Ziel-Host-Auswahl
|
||||||
declare -A HOSTS=(
|
declare -A HOSTS=(
|
||||||
["Server1"]="100.87.87.101"
|
["Server1"]="100.87.87.101"
|
||||||
@ -60,24 +68,7 @@ declare -A HOSTS=(
|
|||||||
)
|
)
|
||||||
|
|
||||||
TARGET_LABEL=$(gum choose --header "Zielsystem wählen" "${!HOSTS[@]}")
|
TARGET_LABEL=$(gum choose --header "Zielsystem wählen" "${!HOSTS[@]}")
|
||||||
TARGET_HOST="${HOSTS[$TARGET_LABEL]}"
|
|
||||||
log_info "Zielsystem gewählt: $TARGET_LABEL ($TARGET_HOST)"
|
|
||||||
|
|
||||||
TARGET_PORT=$(gum input --placeholder "Ziel SSH Port" --value "2222")
|
|
||||||
log_info "SSH-Port: $TARGET_PORT"
|
|
||||||
|
|
||||||
# Benutzer-Auswahl
|
|
||||||
USER_CHOICES=("alf" "root" "oberkoetter" "Benutzer manuell eingeben")
|
|
||||||
SSH_USER=$(gum choose --header "SSH-Benutzer wählen" "${USER_CHOICES[@]}")
|
|
||||||
if [[ "$SSH_USER" == "Benutzer manuell eingeben" ]]; then
|
|
||||||
SSH_USER=$(gum input --placeholder "SSH Benutzername")
|
|
||||||
fi
|
|
||||||
log_info "Verwendeter Benutzer: $SSH_USER"
|
|
||||||
|
|
||||||
# Gültigkeit wählen
|
|
||||||
VALIDITY_OPTIONS=("300" "600" "1800" "3600") # Sekunden
|
|
||||||
VALIDITY=$(gum choose --header "Gültigkeitsdauer des Zertifikats wählen (Sekunden)" "${VALIDITY_OPTIONS[@]}")
|
|
||||||
log_info "Zertifikatsgültigkeit: $VALIDITY Sekunden"
|
|
||||||
|
|
||||||
# Hier unterscheiden zwischen Servern, die mittels einfachem PublicKey-Verfahren und solchen, die per zertifiziertem Schlüssel angesteuert werden.
|
# Hier unterscheiden zwischen Servern, die mittels einfachem PublicKey-Verfahren und solchen, die per zertifiziertem Schlüssel angesteuert werden.
|
||||||
case $TARGET_LABEL in
|
case $TARGET_LABEL in
|
||||||
@ -94,6 +85,25 @@ case $TARGET_LABEL in
|
|||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
|
TARGET_HOST="${HOSTS[$TARGET_LABEL]}"
|
||||||
|
log_info "Zielsystem gewählt: $TARGET_LABEL ($TARGET_HOST)"
|
||||||
|
|
||||||
|
TARGET_PORT=$(gum input --placeholder "Ziel SSH Port" --value "2222")
|
||||||
|
log_info "SSH-Port: $TARGET_PORT"
|
||||||
|
|
||||||
|
# Benutzer-Auswahl
|
||||||
|
USER_CHOICES=("alf" "root" "oberkoetter" "Benutzer manuell eingeben")
|
||||||
|
SSH_USER=$(gum choose --header "SSH-Benutzer wählen" "${USER_CHOICES[@]}")
|
||||||
|
if [[ "$SSH_USER" == "Benutzer manuell eingeben" ]]; then
|
||||||
|
SSH_USER=$(gum input --placeholder "SSH Benutzername")
|
||||||
|
fi
|
||||||
|
log_info "Verwendeter Benutzer: $SSH_USER"
|
||||||
|
|
||||||
|
# Gültigkeit wählen
|
||||||
|
VALIDITY_OPTIONS=("300" "600" "1800" "3600") # Sekunden
|
||||||
|
VALIDITY=$(gum choose --header "Gültigkeitsdauer des Zertifikats wählen (Sekunden)" "${VALIDITY_OPTIONS[@]}")
|
||||||
|
log_info "Zertifikatsgültigkeit: $VALIDITY Sekunden"
|
||||||
|
|
||||||
# Schlüssel vorbereiten
|
# Schlüssel vorbereiten
|
||||||
mkdir -p "$KEY_DIR"
|
mkdir -p "$KEY_DIR"
|
||||||
cd "$KEY_DIR"
|
cd "$KEY_DIR"
|
||||||
|
|||||||
Reference in New Issue
Block a user