151 lines
4.4 KiB
Markdown
151 lines
4.4 KiB
Markdown
# esn-support-bash-snippets
|
||
|
||
Sammel-Repository für Bash-Skripte des **easyname Support-Teams**.
|
||
Hier sammeln wir kleine Helfer für Log-Analysen, Automatisierungen und typische Support-Fälle.
|
||
|
||
## Inhaltsverzeichnis
|
||
|
||
- [Übersicht](#übersicht)
|
||
- [Bash-Profile](#bash-profile)
|
||
- [Connect Tools](#connect-tools)
|
||
- [Legacy Snippets](#legacy-snippets)
|
||
- [WH20 Snippets](#wh20-snippets)
|
||
- [Installation](#installation)
|
||
- [How-To: Neues Skript anlegen](#how-to-neues-skript-anlegen)
|
||
- [Lizenz / Sichtbarkeit](#lizenz--sichtbarkeit)
|
||
|
||
|
||
|
||
## Übersicht
|
||
|
||
Die Skripte sind nach Kategorie getrennt:
|
||
|
||
- [**Bashprofiles**](./bashprofiles/README.md) – Optimierte Bash-Konfigurationen
|
||
- [**Legacy**](./legacy/README.md) – Snippets für Legacy-Umgebungen
|
||
- [**WH20**](./wh20/README.md) – Snippets für WH20-Umgebungen
|
||
|
||
|
||
## Bash-Profile
|
||
|
||
Optimierte Bash-Konfigurationen für verschiedene Support-Umgebungen:
|
||
|
||
- [`pl`](./bashprofiles/pl)
|
||
→ [Dokumentation & Beispiele](./bashprofiles/README.md)
|
||
Basis-Profil mit erweiterter History, farbigem Prompt und modularer Struktur
|
||
|
||
## Legacy Snippets
|
||
|
||
- [`checkms`](./legacy/checkms)
|
||
Analyse von Microsoft-spezifischen SMTP Fehlercodes (S3150, S775, S7771…) in den Exim-Logs.
|
||
|
||
- [`go`](./legacy/go)
|
||
SSH-Shortcuts mit Kerberos-Auth für Web-, MX-, Logger- und Support-Server
|
||
|
||
- [`pincMails`](./legacy/pincMails)
|
||
Sucht nach versendeten PINC Mails einer bestimmten Kundennummer und kopiert diese in einen lokalen Unterordner
|
||
|
||
## WH20 Snippets
|
||
|
||
- [`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.
|
||
|
||
## Installation
|
||
|
||
Nach dem Klonen des Repositories steht ein interaktives Installationsscript zur Verfügung:
|
||
|
||
```bash
|
||
# Repository klonen
|
||
git clone http://vps.dominikus.one:3000/ljp/esn-support-bash-snippets.git
|
||
cd esn-support-bash-snippets
|
||
|
||
# Installation testen (empfohlen)
|
||
./install.sh --dry-run
|
||
|
||
# Installationsscript ausführen
|
||
./install.sh
|
||
|
||
# Hilfe anzeigen
|
||
./install.sh --help
|
||
```
|
||
|
||
**Features des Installers:**
|
||
- **Dry-Run Modus**: `--dry-run` testet Installation ohne Dateiveränderungen
|
||
- **Interaktive Auswahl**: Kategorien und einzelne Tools wählbar
|
||
- **Automatische Backups**: Vorhandene Dateien werden gesichert
|
||
- **Symlink-Management**: Tools werden in ~/bin verlinkt
|
||
- **LUSER-Setup**: Automatische Konfiguration für go-Tool
|
||
- **Modular erweiterbar**: Neue Tools einfach hinzufügbar
|
||
|
||
**Verfügbare Kategorien:**
|
||
- **Bash-Profile**: .bashrc Optimierungen und modulare Konfiguration
|
||
- **Connect Tools**: SSH-Shortcuts (go-Tool) mit Kerberos-Setup
|
||
- **Legacy Tools**: checkms, quicknav für Legacy-Infrastruktur
|
||
- **WH20 Tools**: Platzhalter für zukünftige WH20-Tools
|
||
|
||
|
||
|
||
## How-To: Neues Skript anlegen
|
||
|
||
Um ein neues Bash-Skript in dieses Repository aufzunehmen, bitte folgende Schritte:
|
||
|
||
1. **Ordnerstruktur anlegen**
|
||
Je nach Kategorie (`bashprofiles`, `connect`, `legacy` oder `wh20`) einen Unterordner erstellen:
|
||
```
|
||
bashprofiles/<username>/
|
||
connect/<scriptname>/
|
||
legacy/<scriptname>/
|
||
wh20/<scriptname>/
|
||
```
|
||
|
||
2. **Skript hinzufügen**
|
||
Das eigentliche Skript im neuen Ordner ablegen:
|
||
```
|
||
legacy/<scriptname>/<scriptname>
|
||
```
|
||
oder
|
||
```
|
||
wh20/<scriptname>/<scriptname>
|
||
```
|
||
und ausführbar machen:
|
||
```bash
|
||
chmod +x legacy/<scriptname>/<scriptname>
|
||
chmod +x wh20/<scriptname>/<scriptname>
|
||
```
|
||
|
||
3. **README.md erstellen**
|
||
Als Basis das Template verwenden:
|
||
[README_template_script.md](./README_template.md)
|
||
→ kopieren, anpassen und ins Skript-Verzeichnis legen:
|
||
```
|
||
legacy/<scriptname>/README.md
|
||
```
|
||
oder
|
||
```
|
||
wh20/<scriptname>/README.md
|
||
```
|
||
|
||
4. **Übersicht aktualisieren**
|
||
Das Skript in die Übersicht der passenden Kategorie-README eintragen:
|
||
- [`bashprofiles/README.md`](./bashprofiles/README.md)
|
||
- [`connect/README.md`](./connect/README.md)
|
||
- [`legacy/README.md`](./legacy/README.md)
|
||
- [`wh20/README.md`](./wh20/README.md)
|
||
|
||
5. **Install-Script erweitern**
|
||
Neue Tools zum `install.sh` hinzufügen für automatische Installation
|
||
|
||
6. **Commit & Push**
|
||
Änderungen ins Repo übernehmen:
|
||
```bash
|
||
git add .
|
||
git commit -m "Add <scriptname> to <category>"
|
||
git push
|
||
```
|
||
|
||
|
||
|
||
## Lizenz / Sichtbarkeit
|
||
|
||
> Dieses Repository ist **intern** für easyname Support.
|
||
> Falls eine Freigabe nach extern geplant ist, bitte vorab mit Teamleitung abklären.
|