Connect-Tools Kategorie und Dokumentation hinzugefügt
- Neue Connect-Kategorie für SSH-Verbindungstools - go.sh SSH-Shortcut Tool vollständig dokumentiert - Umfassende .gitignore mit rekursiven Mustern - README-Updates für bessere Navigation Die Connect-Tools vereinfachen SSH-Verbindungen zu easyname-Servern mit Kerberos-Auth und unterstützen Web-, MX-, Logger- und Support-Server. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+71
@@ -0,0 +1,71 @@
|
|||||||
|
# Bash-spezifische temporäre Dateien (recursive)
|
||||||
|
**/*.tmp
|
||||||
|
**/*.swp
|
||||||
|
**/*.swo
|
||||||
|
**/*~
|
||||||
|
|
||||||
|
# Logs (recursive)
|
||||||
|
**/*.log
|
||||||
|
**/*.log.*
|
||||||
|
|
||||||
|
# Backup-Dateien (recursive)
|
||||||
|
**/*.bak
|
||||||
|
**/*.backup
|
||||||
|
**/*.orig
|
||||||
|
|
||||||
|
# OS-spezifische Dateien (recursive)
|
||||||
|
**/.DS_Store
|
||||||
|
**/.DS_Store?
|
||||||
|
**/._*
|
||||||
|
**/.Spotlight-V100
|
||||||
|
**/.Trashes
|
||||||
|
**/ehthumbs.db
|
||||||
|
**/Thumbs.db
|
||||||
|
|
||||||
|
# Editor-spezifische Dateien (recursive)
|
||||||
|
**/.vscode/
|
||||||
|
**/.idea/
|
||||||
|
**/*.sublime-*
|
||||||
|
|
||||||
|
# Konfigurationsdateien mit sensiblen Daten (recursive)
|
||||||
|
**/config/
|
||||||
|
**/.config/
|
||||||
|
**/*.conf
|
||||||
|
**/*.config
|
||||||
|
|
||||||
|
# SSH Keys und Credentials (recursive)
|
||||||
|
**/id_rsa*
|
||||||
|
**/id_ed25519*
|
||||||
|
**/*.pem
|
||||||
|
**/*.key
|
||||||
|
**/*_key
|
||||||
|
|
||||||
|
# Temporary directories (recursive)
|
||||||
|
**/tmp/
|
||||||
|
**/temp/
|
||||||
|
**/cache/
|
||||||
|
|
||||||
|
# User-spezifische Dateien
|
||||||
|
userprofiles/*/
|
||||||
|
!userprofiles/pl/
|
||||||
|
|
||||||
|
# Checkms Konfigurationen (können sensible Daten enthalten)
|
||||||
|
**/checkms.conf
|
||||||
|
|
||||||
|
# Test-Ausgaben (recursive)
|
||||||
|
**/test_output/
|
||||||
|
**/test_results/
|
||||||
|
|
||||||
|
# Runtime-Dateien
|
||||||
|
**/*.pid
|
||||||
|
**/*.sock
|
||||||
|
|
||||||
|
# Compressed files (meist temporär)
|
||||||
|
**/*.tar.gz
|
||||||
|
**/*.zip
|
||||||
|
**/*.7z
|
||||||
|
**/archive.*
|
||||||
|
|
||||||
|
# Claude Code spezifische Dateien
|
||||||
|
CLAUDE.md
|
||||||
|
.claude/
|
||||||
@@ -8,6 +8,7 @@ Hier sammeln wir kleine Helfer für Log-Analysen, Automatisierungen und typische
|
|||||||
## Inhaltsverzeichnis
|
## Inhaltsverzeichnis
|
||||||
|
|
||||||
- [Übersicht](#übersicht)
|
- [Übersicht](#übersicht)
|
||||||
|
- [Connect Tools](#connect-tools)
|
||||||
- [Legacy Snippets](#legacy-snippets)
|
- [Legacy Snippets](#legacy-snippets)
|
||||||
- [WH20 Snippets](#wh20-snippets)
|
- [WH20 Snippets](#wh20-snippets)
|
||||||
- [How-To: Neues Skript anlegen](#how-to-neues-skript-anlegen)
|
- [How-To: Neues Skript anlegen](#how-to-neues-skript-anlegen)
|
||||||
@@ -17,13 +18,24 @@ Hier sammeln wir kleine Helfer für Log-Analysen, Automatisierungen und typische
|
|||||||
|
|
||||||
## Übersicht
|
## Übersicht
|
||||||
|
|
||||||
Die Skripte sind nach Plattform getrennt:
|
Die Skripte sind nach Kategorie getrennt:
|
||||||
|
|
||||||
|
- [**Connect**](./connect/README.md) – SSH-Verbindungstools und Shortcuts
|
||||||
- [**Legacy**](./legacy/README.md) – Snippets für Legacy-Umgebungen
|
- [**Legacy**](./legacy/README.md) – Snippets für Legacy-Umgebungen
|
||||||
- [**WH20**](./wh20/README.md) – Snippets für WH20-Umgebungen
|
- [**WH20**](./wh20/README.md) – Snippets für WH20-Umgebungen
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Connect Tools
|
||||||
|
|
||||||
|
Verbindungstools für schnellen Zugriff auf easyname-Server:
|
||||||
|
|
||||||
|
- [`go`](./connect/go)
|
||||||
|
→ [Dokumentation & Beispiele](./connect/go/README.md)
|
||||||
|
SSH-Shortcuts mit Kerberos-Auth für Web-, MX-, Logger- und Support-Server
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Legacy Snippets
|
## Legacy Snippets
|
||||||
|
|
||||||
Aktuell enthalten:
|
Aktuell enthalten:
|
||||||
@@ -48,8 +60,9 @@ Weitere Snippets für Legacy kommen hier dazu.
|
|||||||
Um ein neues Bash-Skript in dieses Repository aufzunehmen, bitte folgende Schritte:
|
Um ein neues Bash-Skript in dieses Repository aufzunehmen, bitte folgende Schritte:
|
||||||
|
|
||||||
1. **Ordnerstruktur anlegen**
|
1. **Ordnerstruktur anlegen**
|
||||||
Je nach Umgebung (`legacy` oder `wh20`) einen Unterordner erstellen:
|
Je nach Kategorie (`connect`, `legacy` oder `wh20`) einen Unterordner erstellen:
|
||||||
```
|
```
|
||||||
|
connect/<scriptname>/
|
||||||
legacy/<scriptname>/
|
legacy/<scriptname>/
|
||||||
wh20/<scriptname>/
|
wh20/<scriptname>/
|
||||||
```
|
```
|
||||||
@@ -82,7 +95,8 @@ Um ein neues Bash-Skript in dieses Repository aufzunehmen, bitte folgende Schrit
|
|||||||
```
|
```
|
||||||
|
|
||||||
4. **Übersicht aktualisieren**
|
4. **Übersicht aktualisieren**
|
||||||
Das Skript in die Übersicht der passenden Plattform-README eintragen:
|
Das Skript in die Übersicht der passenden Kategorie-README eintragen:
|
||||||
|
- [`connect/README.md`](./connect/README.md)
|
||||||
- [`legacy/README.md`](./legacy/README.md)
|
- [`legacy/README.md`](./legacy/README.md)
|
||||||
- [`wh20/README.md`](./wh20/README.md)
|
- [`wh20/README.md`](./wh20/README.md)
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,93 @@
|
|||||||
|
# Connect Tools
|
||||||
|
|
||||||
|
SSH-Verbindungstools und Shortcuts für den schnellen Zugriff auf easyname-Infrastruktur.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Inhaltsverzeichnis
|
||||||
|
|
||||||
|
- [Übersicht](#übersicht)
|
||||||
|
- [Enthaltene Tools](#enthaltene-tools)
|
||||||
|
- [Voraussetzungen](#voraussetzungen)
|
||||||
|
- [Lizenz / Sichtbarkeit](#lizenz--sichtbarkeit)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Übersicht
|
||||||
|
|
||||||
|
Die Connect-Tools vereinfachen den Zugriff auf verschiedene easyname-Server durch intelligente SSH-Shortcuts mit Kerberos-Authentifizierung. Sie reduzieren wiederkehrende Eingaben und ermöglichen schnelle Verbindungen zu Web-, Mail-, Logger- und Support-Servern.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Enthaltene Tools
|
||||||
|
|
||||||
|
### [`go`](./go)
|
||||||
|
SSH-Shortcut-Tool für schnelle Verbindungen zu easyname-Servern.
|
||||||
|
|
||||||
|
- [Dokumentation & Beispiele](./go/README.md)
|
||||||
|
|
||||||
|
**Features:**
|
||||||
|
- Kerberos-Authentifizierung (`go kinit`)
|
||||||
|
- Web-Server Zugriff mit optionalem easyuser-Wechsel (`go web 42 e110604`)
|
||||||
|
- Mail-Server Zugriff (`go mx 12`)
|
||||||
|
- Logger-Server Zugriff (`go logger`)
|
||||||
|
- Support-Server Zugriff (`go support`)
|
||||||
|
- Remote-Command Ausführung mit `--` Separator
|
||||||
|
- Unterstützung für Here-Documents und Piping
|
||||||
|
|
||||||
|
**Quick Examples:**
|
||||||
|
```bash
|
||||||
|
# Kerberos-Auth
|
||||||
|
go kinit
|
||||||
|
|
||||||
|
# Web-Server mit easyuser
|
||||||
|
go web 42 e110604
|
||||||
|
|
||||||
|
# Remote-Command auf MX-Server
|
||||||
|
go mx 12 -- mailq | head -5
|
||||||
|
|
||||||
|
# Logs auf Logger durchsuchen
|
||||||
|
go logger -- grep "error" /var/log/syslog
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Voraussetzungen
|
||||||
|
|
||||||
|
### Generelle Anforderungen
|
||||||
|
- **Kerberos-Setup**: Funktionierende Kerberos-Konfiguration
|
||||||
|
- **SSH-Zugriff**: Berechtigungen für easyname-Infrastruktur
|
||||||
|
- **LUSER Variable**: Muss in Environment gesetzt sein
|
||||||
|
|
||||||
|
### Setup-Anleitung
|
||||||
|
1. LUSER in `~/.bashrc` oder `~/.bash_env` setzen:
|
||||||
|
```bash
|
||||||
|
export LUSER="deinusername"
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Kerberos-Ticket erstellen:
|
||||||
|
```bash
|
||||||
|
kinit deinusername@NESSUS.AT
|
||||||
|
# oder mit go-Tool:
|
||||||
|
go kinit
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Tool in PATH hinzufügen oder Alias erstellen:
|
||||||
|
```bash
|
||||||
|
# Option 1: Alias
|
||||||
|
alias go="/pfad/zu/connect/go/go.sh"
|
||||||
|
|
||||||
|
# Option 2: Symlink
|
||||||
|
ln -s /pfad/zu/connect/go/go.sh ~/bin/go
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Lizenz / Sichtbarkeit
|
||||||
|
|
||||||
|
> Dieses Repository ist **intern** für easyname Support.
|
||||||
|
> Falls eine Freigabe nach extern geplant ist, bitte vorab mit Teamleitung abklären.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Diese Tools wurden mit Hilfe von Claude Code erstellt.*
|
||||||
@@ -0,0 +1,150 @@
|
|||||||
|
# go - SSH-Shortcuts für easyname Server
|
||||||
|
|
||||||
|
Bash-Skript für schnelle SSH-Verbindungen zu easyname-Servern mit Kerberos-Authentifizierung.
|
||||||
|
|
||||||
|
## Voraussetzungen
|
||||||
|
|
||||||
|
- **LUSER** Umgebungsvariable muss gesetzt sein (dein Kerberos-Username)
|
||||||
|
- Kerberos-Authentifizierung konfiguriert
|
||||||
|
- SSH-Zugriff auf easyname-Infrastruktur
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
1. **LUSER Variable setzen** (in `~/.bashrc` oder `~/.bash_env`):
|
||||||
|
```bash
|
||||||
|
export LUSER="deinusername"
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Skript ausführbar machen**:
|
||||||
|
```bash
|
||||||
|
chmod +x go.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Optional: In PATH hinzufügen** oder Alias erstellen:
|
||||||
|
```bash
|
||||||
|
# Alias in ~/.bashrc
|
||||||
|
alias go="/pfad/zu/go.sh"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Verwendung
|
||||||
|
|
||||||
|
### Kerberos-Authentifizierung
|
||||||
|
```bash
|
||||||
|
go kinit # Authentifiziert $LUSER@NESSUS.AT
|
||||||
|
go k # Kurzform
|
||||||
|
```
|
||||||
|
|
||||||
|
### Web-Server Verbindungen
|
||||||
|
```bash
|
||||||
|
go web 42 # Verbindet zu web42.in.easyname.com
|
||||||
|
go w 42 # Kurzform
|
||||||
|
|
||||||
|
go web 42 e110604 # Verbindet und wechselt zu easyuser e110604
|
||||||
|
go w 42 e110604 # Kurzform mit easyuser
|
||||||
|
```
|
||||||
|
|
||||||
|
### Mail-Server Verbindungen
|
||||||
|
```bash
|
||||||
|
go mx 12 # Verbindet zu mx12.in.easyname.com
|
||||||
|
go m 12 # Kurzform
|
||||||
|
```
|
||||||
|
|
||||||
|
### Logger-Server
|
||||||
|
```bash
|
||||||
|
go logger # Verbindet zu logger.in.nessus.at
|
||||||
|
go l # Kurzform
|
||||||
|
```
|
||||||
|
|
||||||
|
### Support-Server
|
||||||
|
```bash
|
||||||
|
go support # Verbindet zu support.in.easyname.com
|
||||||
|
go s # Kurzform
|
||||||
|
```
|
||||||
|
|
||||||
|
## Remote-Befehle ausführen
|
||||||
|
|
||||||
|
Mit `--` können Remote-Befehle direkt ausgeführt werden:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Hostname und Uptime auf mx12 anzeigen
|
||||||
|
go mx 12 -- bash -lc 'hostname; uptime'
|
||||||
|
|
||||||
|
# Logs auf logger durchsuchen
|
||||||
|
go logger -- grep "error" /var/log/syslog
|
||||||
|
|
||||||
|
# Here-Doc an Remote-Server senden
|
||||||
|
go logger -- bash -s <<'EOF'
|
||||||
|
echo "Mehrere Befehle"
|
||||||
|
date
|
||||||
|
hostname
|
||||||
|
EOF
|
||||||
|
```
|
||||||
|
|
||||||
|
## Technische Details
|
||||||
|
|
||||||
|
### Verbindungsverhalten
|
||||||
|
|
||||||
|
- **Mit easyuser**: Interaktive TTY-Session mit `-qtt` (für `easyuser` Wechsel)
|
||||||
|
- **Ohne easyuser**: Non-interaktive Session, ideal für Scripting
|
||||||
|
- **Remote-Commands**: Werden direkt an SSH durchgereicht
|
||||||
|
|
||||||
|
### Server-Mapping
|
||||||
|
|
||||||
|
| Kommando | Server |
|
||||||
|
|----------|--------|
|
||||||
|
| `web<NR>` | `web<NR>.in.easyname.com` |
|
||||||
|
| `mx<NR>` | `mx<NR>.in.easyname.com` |
|
||||||
|
| `logger` | `logger.in.nessus.at` |
|
||||||
|
| `support` | `support.in.easyname.com` |
|
||||||
|
|
||||||
|
### Exit-Codes
|
||||||
|
|
||||||
|
Das Skript gibt den Exit-Code des SSH-Befehls direkt weiter, was es ideal für Scripting macht.
|
||||||
|
|
||||||
|
## Beispiele für fortgeschrittene Nutzung
|
||||||
|
|
||||||
|
### Logs von mehreren Servern sammeln
|
||||||
|
```bash
|
||||||
|
for i in {1..5}; do
|
||||||
|
echo "=== Web$i ==="
|
||||||
|
go web $i -- tail -n 5 /var/log/apache2/error.log
|
||||||
|
done
|
||||||
|
```
|
||||||
|
|
||||||
|
### Parallel auf mehreren MX-Servern prüfen
|
||||||
|
```bash
|
||||||
|
for mx in 10 11 12; do
|
||||||
|
go mx $mx -- mailq | head -5 &
|
||||||
|
done
|
||||||
|
wait
|
||||||
|
```
|
||||||
|
|
||||||
|
### Mit checkms kombinieren
|
||||||
|
```bash
|
||||||
|
# Wenn go als Befehl verfügbar ist, nutzt checkms es automatisch
|
||||||
|
checkms --minutes 30
|
||||||
|
```
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
### LUSER nicht gesetzt
|
||||||
|
```
|
||||||
|
Fehler: Bitte LUSER setzen!
|
||||||
|
```
|
||||||
|
**Lösung**: `export LUSER="deinusername"` in ~/.bashrc hinzufügen
|
||||||
|
|
||||||
|
### Kerberos-Ticket abgelaufen
|
||||||
|
```
|
||||||
|
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
|
||||||
|
```
|
||||||
|
**Lösung**: `go kinit` ausführen
|
||||||
|
|
||||||
|
### Server-Nummer vergessen
|
||||||
|
```
|
||||||
|
Fehler: 'go web' benötigt <NR> [EUSER].
|
||||||
|
```
|
||||||
|
**Lösung**: Server-Nummer angeben, z.B. `go web 42`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Dieses Skript wurde mit Hilfe von Claude Code erstellt.*
|
||||||
Reference in New Issue
Block a user