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:
h0tznpl0tz
2025-09-10 12:28:09 +02:00
co-authored by Claude
parent 63b9d9b167
commit 9d2cc4dd33
4 changed files with 331 additions and 3 deletions
+93
View File
@@ -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.*
+150
View File
@@ -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.*