added wh20 quick ssh connect script #6
@@ -52,6 +52,8 @@ Optimierte Bash-Konfigurationen für verschiedene Support-Umgebungen:
|
|||||||
|
|
||||||
- [`plesk`](./wh20/plesk)
|
- [`plesk`](./wh20/plesk)
|
||||||
Dieses Skript stellt eine SSH-Verbindung zu einem angegebenen Webserver her und generiert so einen einmaligen Login-Link für das Plesk Admin Panel des gewünschten Servers.
|
Dieses Skript stellt eine SSH-Verbindung zu einem angegebenen Webserver her und generiert so einen einmaligen Login-Link für das Plesk Admin Panel des gewünschten Servers.
|
||||||
|
- [`wh20`](./wh20)
|
||||||
|
Dieses Skript verbindet zum angegbenen Webserver via SSH
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,9 @@ Die Dokumentationen werden in Unterordnern zu den jeweiligen Skripten gepflegt.
|
|||||||
### [`plesk`](./plesk)
|
### [`plesk`](./plesk)
|
||||||
Dieses Skript stellt eine SSH-Verbindung zu einem angegebenen Webserver her und generiert so einen einmaligen Login-Link für das Plesk Admin Panel des gewünschten Servers.
|
Dieses Skript stellt eine SSH-Verbindung zu einem angegebenen Webserver her und generiert so einen einmaligen Login-Link für das Plesk Admin Panel des gewünschten Servers.
|
||||||
|
|
||||||
|
### [`wh20`](./wh20)
|
||||||
|
Dieses Skript verbindet zum angegbenen Webserver via SSH
|
||||||
|
|
||||||
- [Dokumentation & Beispiele](./plesk/README.md)
|
- [Dokumentation & Beispiele](./plesk/README.md)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,107 @@
|
|||||||
|
# wh20 - SSH-Shortcuts für easyname WH20 Webserver
|
||||||
|
|
||||||
|
## Funktion
|
||||||
|
|
||||||
|
Dieses Skript stellt eine SSH-Verbindung zu einem angegebenen WH20 Webserver her. Optional kann über den Parameter `--tenant` die Domain angepasst werden, um auf Server in verschiedenen Tenant-Umgebungen zuzugreifen.
|
||||||
|
|
||||||
|
## Voraussetzungen
|
||||||
|
|
||||||
|
- SSH-Zugriff auf den Zielserver
|
||||||
|
- Der Benutzername muss als Umgebungsvariable `WHUSER` gesetzt sein
|
||||||
|
- Das Skript muss ausführbar sein (`chmod +x wh20.sh`)
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
1. **WHUSER Variable setzen** (in `~/.bashrc` oder `~/.bash_env`):
|
||||||
|
```bash
|
||||||
|
export WHUSER="deinusername"
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Installation über Installer**:
|
||||||
|
```bash
|
||||||
|
# Im Repository-Hauptverzeichnis
|
||||||
|
./install.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
## Verwendung
|
||||||
|
|
||||||
|
### Standard-Verbindung (easyname.systems)
|
||||||
|
```bash
|
||||||
|
wh20 web15
|
||||||
|
```
|
||||||
|
→ Verbindet zu `web15.wh20.easyname.systems`
|
||||||
|
|
||||||
|
### Mit Tenant adino
|
||||||
|
```bash
|
||||||
|
wh20 web15 --tenant adino
|
||||||
|
```
|
||||||
|
→ Verbindet zu `web15.adino.at`
|
||||||
|
|
||||||
|
### Mit Tenant dona
|
||||||
|
```bash
|
||||||
|
wh20 web15 --tenant dona
|
||||||
|
```
|
||||||
|
→ Verbindet zu `web15.inname.net`
|
||||||
|
|
||||||
|
## Syntax
|
||||||
|
|
||||||
|
```bash
|
||||||
|
wh20 <webserver> [--tenant adino|dona]
|
||||||
|
```
|
||||||
|
|
||||||
|
### Parameter
|
||||||
|
|
||||||
|
- `<webserver>`: Name des Webservers (z.B. `web15`, `srv272`, `ws12`)
|
||||||
|
- `--tenant`: Optional. Bestimmt die Domain-Endung:
|
||||||
|
- `adino` → `<webserver>.adino.at`
|
||||||
|
- `dona` → `<webserver>.inname.net`
|
||||||
|
- Ohne Angabe → `<webserver>.wh20.easyname.systems`
|
||||||
|
|
||||||
|
## Domain-Mapping
|
||||||
|
|
||||||
|
| Tenant | Domain-Pattern |
|
||||||
|
|--------|----------------|
|
||||||
|
| (kein) | `<webserver>.wh20.easyname.systems` |
|
||||||
|
| `adino` | `<webserver>.adino.at` |
|
||||||
|
| `dona` | `<webserver>.inname.net` |
|
||||||
|
|
||||||
|
## Beispiele
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Standard WH20 Server
|
||||||
|
wh20 web15
|
||||||
|
wh20 srv272
|
||||||
|
|
||||||
|
# Adino Tenant
|
||||||
|
wh20 web15 --tenant adino
|
||||||
|
wh20 ws12 --tenant adino
|
||||||
|
|
||||||
|
# Dona Tenant
|
||||||
|
wh20 web15 --tenant dona
|
||||||
|
wh20 srv272 --tenant dona
|
||||||
|
```
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
### WHUSER nicht gesetzt
|
||||||
|
```
|
||||||
|
Fehler: Bitte WHUSER setzen!
|
||||||
|
```
|
||||||
|
**Lösung**: `export WHUSER="deinusername"` in ~/.bashrc hinzufügen
|
||||||
|
|
||||||
|
### Unbekannter Tenant
|
||||||
|
```
|
||||||
|
Unbekannter Tenant: <tenant>
|
||||||
|
```
|
||||||
|
**Lösung**: Nur `adino` oder `dona` als Tenant-Wert verwenden
|
||||||
|
|
||||||
|
### Webserver-Name fehlt
|
||||||
|
```
|
||||||
|
Usage: wh20 <webserver> [--tenant adino|dona]
|
||||||
|
```
|
||||||
|
**Lösung**: Webserver-Namen als erstes Argument angeben
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Maintainer: ado*
|
||||||
|
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# wh20 - SSH-Shortcuts für easyname WH20 Webserver
|
||||||
|
# Maintainer: ado
|
||||||
|
|
||||||
|
servername=""
|
||||||
|
tenant=""
|
||||||
|
|
||||||
|
while [[ $# -gt 0 ]]; do
|
||||||
|
case "$1" in
|
||||||
|
--tenant)
|
||||||
|
tenant="$2"
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
servername="$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ -z "$servername" ]; then
|
||||||
|
echo "Usage: $0 <webserver> [--tenant adino|dona]"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Set domain based on tenant
|
||||||
|
case "$tenant" in
|
||||||
|
adino)
|
||||||
|
fqdn="$servername.adino.at"
|
||||||
|
;;
|
||||||
|
dona)
|
||||||
|
fqdn="$servername.inname.net"
|
||||||
|
;;
|
||||||
|
"")
|
||||||
|
fqdn="$servername.wh20.easyname.systems"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Unbekannter Tenant: $tenant"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Define the username
|
||||||
|
username="${WHUSER:?Bitte WHUSER setzen!}" # Wenn WHUSER als Umgebungsvariable gesetzt ist, wird dieser verwendet. Sonst Username eintragen.
|
||||||
|
|
||||||
|
# Open an SSH connection
|
||||||
|
exec ssh $username@$fqdn "$@"
|
||||||
Reference in New Issue
Block a user