From a1046bda7918e159bd0ccbe75a6e5059eaa8e1a5 Mon Sep 17 00:00:00 2001 From: Patrick Eigner-Pausz Date: Tue, 14 Apr 2026 14:04:35 +0200 Subject: [PATCH 1/4] Added Spamcheck, adspam and donaspam-scritps for wh20 --- README.md | 7 +++- wh20/README.md | 13 +++++- wh20/adspam/README.md | 64 ++++++++++++++++++++++++++++++ wh20/adspam/adspam.sh | 8 ++++ wh20/donaspam/README.md | 79 +++++++++++++++++++++++++++++++++++++ wh20/donaspam/donaspam.sh | 8 ++++ wh20/spamcheck/README.md | 58 +++++++++++++++++++++++++++ wh20/spamcheck/spamcheck.sh | 13 ++++++ 8 files changed, 248 insertions(+), 2 deletions(-) create mode 100644 wh20/adspam/README.md create mode 100644 wh20/adspam/adspam.sh create mode 100644 wh20/donaspam/README.md create mode 100644 wh20/donaspam/donaspam.sh create mode 100644 wh20/spamcheck/README.md create mode 100644 wh20/spamcheck/spamcheck.sh diff --git a/README.md b/README.md index e4ed035..80ef9d9 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,12 @@ Optimierte Bash-Konfigurationen für verschiedene Support-Umgebungen: 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 - +- [`adspam`](./adspam) + Dieses Skript ermöglicht die Prüfung auf geläufige MS365- und Spamhaus-Fehlermeldungen auf Adino-Servern direkt von der Connect aus. +- [`donaspam`](./donaspam) + Dieses Skript ermöglicht die Prüfung auf geläufige MS365- und Spamhaus-Fehlermeldungen auf inname-Servern direkt von der Connect aus. +- [`spamcheck`](./spamcheck) + Dieses Skript ermöglicht die Prüfung auf geläufige MS365- und Spamhaus-Fehlermeldungen auf einem Plesk-Server. --- ## Quick Start diff --git a/wh20/README.md b/wh20/README.md index 242d6e9..a7d16f5 100644 --- a/wh20/README.md +++ b/wh20/README.md @@ -20,12 +20,23 @@ Die Dokumentationen werden in Unterordnern zu den jeweiligen Skripten gepflegt. ### [`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. +- [Dokumentation & Beispiele](./plesk/README.md) ### [`wh20`](./wh20) Dieses Skript verbindet zum angegbenen Webserver via SSH +- [Dokumentation & Beispiele](./wh20/README.md) -- [Dokumentation & Beispiele](./plesk/README.md) +### [`spamcheck`](./spamcheck) +Dieses Skript ermöglicht den schnellen Check nach MS365-Fehlercodes, sowie für Spamhaus-Blockmeldungen. +- [Dokumentation & Beispiele](./spamcheck/README.md) +### [`adspam`](./adspam) +Dieses Skript ermöglicht den schnellen Check nach MS365-Fehlercodes, sowie für Spamhaus-Blockmeldungen auf Adino-Server direkt von der Connect aus. +- [Dokumentation & Beispiele](./adspam/README.md) + +### [`donaspam`](./donaspam) +Dieses Skript ermöglicht den schnellen Check nach MS365-Fehlercodes, sowie für Spamhaus-Blockmeldungen auf DONA-Server direkt von der Connect aus. +- [Dokumentation & Beispiele](./donaspam/README.md) ## Lizenz / Sichtbarkeit diff --git a/wh20/adspam/README.md b/wh20/adspam/README.md new file mode 100644 index 0000000..7bb9188 --- /dev/null +++ b/wh20/adspam/README.md @@ -0,0 +1,64 @@ +# adspam - schneller Spamcheck für MS365 und Spamhaus auf Adino-Server + +## Funktion + +Dieses Skript führt am jeweiligen adino-Host ein grep für geläufige MS365-Fehlercodes sowie Spamhaus auf /var/log/maillog durch und gibt die Anzahl der Treffer für dieses an. +Sofern keine Ergebnisse für den jeweiligen Tag gefunden werden, werden nur die Beginn- und Endzeile des Checks ausgegeben. + +## Voraussetzungen + +- SSH-Zugriff auf den Zielserver +- Das [`spamcheck`](../spamcheck/spamcheck.sh)-Skript muss auf den Zielservern installiert und ausführbar sein. +- Das [`adspam`](./adspam.sh)-Skript ist korrekt auf der connect installiert und ausführbar. + +## Installation + +```bash +cd +mkdir bin && cd bin +vi adspam +chmod +x adspam +``` + +## Verwendung + +```bash +USER@connect-lej ~ $ adspam +=== Todays Spamcheck on Mo 13. Apr 13:59:27 CEST 2026=== + +=== srv244.adino.at Spamcheck === +=== srv244.adino.at Spamcheck done === +=== srv251.adino.at Spamcheck === +=== srv251.adino.at Spamcheck done === +=== srv252.adino.at Spamcheck === +=== srv252.adino.at Spamcheck done === +=== srv268.adino.at Spamcheck === +=== srv268.adino.at Spamcheck done === +=== srv272.adino.at Spamcheck === +=== srv272.adino.at Spamcheck done === +``` + +## Syntax + +```bash +adspam +``` + +## Beispiele + +```bash +# Von der Connect aus abgesetzt. +adspam +``` + +## Troubleshooting + +# zu hohe Anzahl an S3150 +Am jeweiligen adino-Webserver prüfen durch gezieltes grep nach `S3150`, ob es sich hierbei um einen anderen String handelt, da Plesk leider auch den String verwendet. --> +```bash +sudo grep -F 'S3150' /var/log/maillog +``` + +--- + +*Maintainer: peignerpausz* \ No newline at end of file diff --git a/wh20/adspam/adspam.sh b/wh20/adspam/adspam.sh new file mode 100644 index 0000000..3d74919 --- /dev/null +++ b/wh20/adspam/adspam.sh @@ -0,0 +1,8 @@ +#! /usr/bin/env bash +# Automatisierter Spamcheck für MS365 error-codes und Spamhaus rejections auf Adino-Server +# Maintainer: peignerpausz + +printf '=== Todays Spamcheck on %s=== \n \n' "$(date)" +for a in 244 251 252 268 272 + do ssh srv$a.adino.at -- bash -lc '~/bin/spamcheck' +done \ No newline at end of file diff --git a/wh20/donaspam/README.md b/wh20/donaspam/README.md new file mode 100644 index 0000000..35f1dd9 --- /dev/null +++ b/wh20/donaspam/README.md @@ -0,0 +1,79 @@ +# adspam - schneller Spamcheck für MS365 und Spamhaus auf inname-Server + +## Funktion + +Dieses Skript führt am jeweiligen inname-Host ein grep für geläufige MS365-Fehlercodes sowie Spamhaus auf /var/log/maillog durch und gibt die Anzahl der Treffer für dieses an. +Sofern keine Ergebnisse für den jeweiligen Tag gefunden werden, werden nur die Beginn- und Endzeile des Checks ausgegeben. + +## Voraussetzungen + +- SSH-Zugriff auf den Zielserver +- Das [`spamcheck`](../spamcheck/spamcheck.sh)-Skript muss auf den Zielservern installiert und ausführbar sein. +- Das [`adspam`](./donaspam.sh)-Skript ist korrekt auf der connect installiert und ausführbar. + +## Installation + +```bash +cd +mkdir bin && cd bin ## nur wenn der Folder nicht bereits vorhanden ist +vi donaspam +chmod +x donaspam +``` + +## Verwendung + +```bash +USER1@connect-lej ~ $ donaspam +=== Todays Spamcheck on Mo 13. Apr 14:02:58 CEST 2026 === + +=== ws20.inname.net Spamcheck === +|=> Anzahl Spamhaus: 1 +=== ws20.inname.net Spamcheck done=== +=== ws21.inname.net Spamcheck === +=== ws21.inname.net Spamcheck done === +=== ws22.inname.net Spamcheck === +=== ws22.inname.net Spamcheck done === +=== ws23.inname.net Spamcheck === +=== ws23.inname.net Spamcheck done === +=== ws24.inname.net Spamcheck === +|=> Anzahl S775: 4 +=== ws24.inname.net Spamcheck done === +=== ws25.inname.net Spamcheck === +=== ws25.inname.net Spamcheck done === +=== ws26.inname.net Spamcheck === +=== ws26.inname.net Spamcheck done === +=== ws27.inname.net Spamcheck === +=== ws27.inname.net Spamcheck done === +=== ws28.inname.net Spamcheck === +|=> Anzahl S775: 5 +=== ws28.inname.net Spamcheck done === +=== ws29.inname.net Spamcheck === +=== ws29.inname.net Spamcheck done === +=== ws30.inname.net Spamcheck === +=== ws30.inname.net Spamcheck done === +``` + +## Syntax + +```bash +donaspam +``` + +## Beispiele + +```bash +# Von der Connect aus abgesetzt. +donaspam +``` + +## Troubleshooting + +# zu hohe Anzahl an S3150 +Am jeweiligen inname-Webserver prüfen durch gezieltes grep nach `S3150`, ob es sich hierbei um einen anderen String handelt, da Plesk leider auch den String verwendet. --> +```bash +sudo grep -F 'S3150' /var/log/maillog +``` + +--- + +*Maintainer: peignerpausz* \ No newline at end of file diff --git a/wh20/donaspam/donaspam.sh b/wh20/donaspam/donaspam.sh new file mode 100644 index 0000000..358d707 --- /dev/null +++ b/wh20/donaspam/donaspam.sh @@ -0,0 +1,8 @@ +#! /usr/bin/env bash +# Automatisierter Spamcheck für MS365 error-codes und Spamhaus rejections auf inname-Server +# Maintainer: peignerpausz + +printf '=== Todays Spamcheck on %s=== \n \n' "$(date)" +for a in {20..30} + do ssh ws$a.inname.net -- bash -lc '~/bin/spamcheck' +done \ No newline at end of file diff --git a/wh20/spamcheck/README.md b/wh20/spamcheck/README.md new file mode 100644 index 0000000..ef59fb5 --- /dev/null +++ b/wh20/spamcheck/README.md @@ -0,0 +1,58 @@ +# spamcheck - schneller Spamcheck für MS365 und Spamhaus + +## Funktion + +Dieses Skript führt am jeweiligen Plesk-Host ein grep für geläufige MS365-Fehlercodes sowie Spamhaus auf /var/log/maillog durch und gibt die Anzahl der Treffer für dieses an. + +## Voraussetzungen + +- SSH-Zugriff auf den Zielserver +- Das Skript muss am Zielserver unter `$HOME/bin` oder `$HOME/spamcheck.sh` abgelegt werden. +- Das Skript muss ausführbar sein (`chmod +x spamcheck` oder `chmod +x spamcheck.sh`) + +## Installation + +tba. + +## Verwendung + +```bash +spamcheck +Anzahl S3150: 0 +Anzahl S775: 0 +Anzahl S7771: 0 +Anzahl S7772: 0 +Anzahl S7773: 0 +Anzahl S7774: 0 +Anzahl S7775: 0 +Anzahl S7776: 0 +Anzahl S7777: 0 +Anzahl S7778: 0 +Anzahl S7779: 0 +Anzahl Spamhaus: 0 +``` + +## Syntax + +```bash +spamcheck +``` + +## Beispiele + +```bash +# random Plesk-Server +spamcheck +``` + +## Troubleshooting + +# zu hohe Anzahl an S3150 +Prüfen durch gezieltes grep nach `S3150`, ob es sich hierbei um einen anderen String handelt. --> +```bash +sudo grep -F 'S3150' /var/log/maillog +``` + +--- + +*Maintainer: peignerpausz* \ No newline at end of file diff --git a/wh20/spamcheck/spamcheck.sh b/wh20/spamcheck/spamcheck.sh new file mode 100644 index 0000000..5948e6d --- /dev/null +++ b/wh20/spamcheck/spamcheck.sh @@ -0,0 +1,13 @@ +#! /usr/bin/env bash +# Spamcheck für MS365 error-codes und Spamhaus rejections +# Maintainer: peignerpausz + +printf '=== %s Spamcheck === \n' "$(hostname)" +for a in S3150 S775 S7771 S7772 S7773 S7774 S7775 S7776 S7777 S7778 S7779 Spamhaus +do + count=$(sudo grep -c "\($a\)" /var/log/maillog 2>/dev/null) + if [ "$count" -gt 0 ]; then + printf "|=> Anzahl %s: %s\n" "$a" "$count" + fi +done +printf '=== %s Spamcheck done === \n' "$(hostname)" \ No newline at end of file -- 2.54.0 From de44af64b4d91e5a0e44ef05b086d761f16156ae Mon Sep 17 00:00:00 2001 From: peignerpausz Date: Wed, 15 Apr 2026 13:31:27 +0200 Subject: [PATCH 2/4] Improved spamcheck and thereby donaspam and adspam --- wh20/adspam/README.md | 26 +++++++++--------- wh20/donaspam/README.md | 53 +++++++++++++++++-------------------- wh20/spamcheck/README.md | 20 +++++--------- wh20/spamcheck/spamcheck.sh | 11 ++++++-- 4 files changed, 54 insertions(+), 56 deletions(-) diff --git a/wh20/adspam/README.md b/wh20/adspam/README.md index 7bb9188..929764c 100644 --- a/wh20/adspam/README.md +++ b/wh20/adspam/README.md @@ -24,18 +24,6 @@ chmod +x adspam ```bash USER@connect-lej ~ $ adspam -=== Todays Spamcheck on Mo 13. Apr 13:59:27 CEST 2026=== - -=== srv244.adino.at Spamcheck === -=== srv244.adino.at Spamcheck done === -=== srv251.adino.at Spamcheck === -=== srv251.adino.at Spamcheck done === -=== srv252.adino.at Spamcheck === -=== srv252.adino.at Spamcheck done === -=== srv268.adino.at Spamcheck === -=== srv268.adino.at Spamcheck done === -=== srv272.adino.at Spamcheck === -=== srv272.adino.at Spamcheck done === ``` ## Syntax @@ -48,7 +36,19 @@ adspam ```bash # Von der Connect aus abgesetzt. -adspam +USER@connect-lej ~ $ adspam +=== Todays Spamcheck on Wed Apr 15 13:13:22 CEST 2026 === + +=== srv244.adino.at Spamcheck === +✅ All systems green. +=== srv251.adino.at Spamcheck === +✅ All systems green. +=== srv252.adino.at Spamcheck === +✅ All systems green. +=== srv268.adino.at Spamcheck === +✅ All systems green. +=== srv272.adino.at Spamcheck === +✅ All systems green. ``` ## Troubleshooting diff --git a/wh20/donaspam/README.md b/wh20/donaspam/README.md index 35f1dd9..b2dae3a 100644 --- a/wh20/donaspam/README.md +++ b/wh20/donaspam/README.md @@ -24,33 +24,6 @@ chmod +x donaspam ```bash USER1@connect-lej ~ $ donaspam -=== Todays Spamcheck on Mo 13. Apr 14:02:58 CEST 2026 === - -=== ws20.inname.net Spamcheck === -|=> Anzahl Spamhaus: 1 -=== ws20.inname.net Spamcheck done=== -=== ws21.inname.net Spamcheck === -=== ws21.inname.net Spamcheck done === -=== ws22.inname.net Spamcheck === -=== ws22.inname.net Spamcheck done === -=== ws23.inname.net Spamcheck === -=== ws23.inname.net Spamcheck done === -=== ws24.inname.net Spamcheck === -|=> Anzahl S775: 4 -=== ws24.inname.net Spamcheck done === -=== ws25.inname.net Spamcheck === -=== ws25.inname.net Spamcheck done === -=== ws26.inname.net Spamcheck === -=== ws26.inname.net Spamcheck done === -=== ws27.inname.net Spamcheck === -=== ws27.inname.net Spamcheck done === -=== ws28.inname.net Spamcheck === -|=> Anzahl S775: 5 -=== ws28.inname.net Spamcheck done === -=== ws29.inname.net Spamcheck === -=== ws29.inname.net Spamcheck done === -=== ws30.inname.net Spamcheck === -=== ws30.inname.net Spamcheck done === ``` ## Syntax @@ -63,7 +36,31 @@ donaspam ```bash # Von der Connect aus abgesetzt. -donaspam +USER@connect-lej ~ $ donaspam +=== Todays Spamcheck on Wed Apr 15 13:23:04 CEST 2026 === + +=== ws20.inname.net Spamcheck === +✅ All systems green. +=== ws21.inname.net Spamcheck === +✅ All systems green. +=== ws22.inname.net Spamcheck === +✅ All systems green. +=== ws23.inname.net Spamcheck === +✅ All systems green. +=== ws24.inname.net Spamcheck === +✅ All systems green. +=== ws25.inname.net Spamcheck === +✅ All systems green. +=== ws26.inname.net Spamcheck === +❌ Anzahl S3150: 24 +=== ws27.inname.net Spamcheck === +✅ All systems green. +=== ws28.inname.net Spamcheck === +❌ Anzahl S775: 5 +=== ws29.inname.net Spamcheck === +✅ All systems green. +=== ws30.inname.net Spamcheck === +✅ All systems green. ``` ## Troubleshooting diff --git a/wh20/spamcheck/README.md b/wh20/spamcheck/README.md index ef59fb5..9c38edf 100644 --- a/wh20/spamcheck/README.md +++ b/wh20/spamcheck/README.md @@ -18,18 +18,6 @@ tba. ```bash spamcheck -Anzahl S3150: 0 -Anzahl S775: 0 -Anzahl S7771: 0 -Anzahl S7772: 0 -Anzahl S7773: 0 -Anzahl S7774: 0 -Anzahl S7775: 0 -Anzahl S7776: 0 -Anzahl S7777: 0 -Anzahl S7778: 0 -Anzahl S7779: 0 -Anzahl Spamhaus: 0 ``` ## Syntax @@ -42,7 +30,13 @@ spamcheck ```bash # random Plesk-Server -spamcheck +eign01_easyname.at@ws25 ~ $ spamcheck +=== ws25.inname.net Spamcheck === +✅ All systems green. + +eign01_easyname.at@ws26 ~ $ spamcheck +=== ws26.inname.net Spamcheck === +❌ Anzahl S3150: 24 ``` ## Troubleshooting diff --git a/wh20/spamcheck/spamcheck.sh b/wh20/spamcheck/spamcheck.sh index 5948e6d..83e99c4 100644 --- a/wh20/spamcheck/spamcheck.sh +++ b/wh20/spamcheck/spamcheck.sh @@ -3,11 +3,18 @@ # Maintainer: peignerpausz printf '=== %s Spamcheck === \n' "$(hostname)" +found_errors=0 for a in S3150 S775 S7771 S7772 S7773 S7774 S7775 S7776 S7777 S7778 S7779 Spamhaus do count=$(sudo grep -c "\($a\)" /var/log/maillog 2>/dev/null) + count=${count//$'\r'/} + count=${count//[^0-9]/} + count=${count:-0} if [ "$count" -gt 0 ]; then - printf "|=> Anzahl %s: %s\n" "$a" "$count" + printf "❌ Anzahl %s: %s\n" "$a" "$count" + found_errors=1 fi done -printf '=== %s Spamcheck done === \n' "$(hostname)" \ No newline at end of file +if [ "$found_errors" -eq 0 ]; then + printf "✅ All systems green.\n" +fi \ No newline at end of file -- 2.54.0 From e9f493bc636764ddeef6547d810864cbbc97f577 Mon Sep 17 00:00:00 2001 From: peignerpausz Date: Wed, 15 Apr 2026 17:10:47 +0200 Subject: [PATCH 3/4] Improved spamcheck with eyecatching emojis and thereby improving visability for adspam and donaspam --- wh20/donaspam/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wh20/donaspam/README.md b/wh20/donaspam/README.md index b2dae3a..ce4caad 100644 --- a/wh20/donaspam/README.md +++ b/wh20/donaspam/README.md @@ -9,7 +9,7 @@ Sofern keine Ergebnisse für den jeweiligen Tag gefunden werden, werden nur die - SSH-Zugriff auf den Zielserver - Das [`spamcheck`](../spamcheck/spamcheck.sh)-Skript muss auf den Zielservern installiert und ausführbar sein. -- Das [`adspam`](./donaspam.sh)-Skript ist korrekt auf der connect installiert und ausführbar. +- Das [`donaspam`](./donaspam.sh)-Skript ist korrekt auf der connect installiert und ausführbar. ## Installation -- 2.54.0 From 99a712ffa4a3b06fe57715d24f7ce4ebe633b898 Mon Sep 17 00:00:00 2001 From: peignerpausz Date: Fri, 17 Apr 2026 13:25:22 +0200 Subject: [PATCH 4/4] Added damagereport, improved adspam and donaspam and a Serverliste for internal refrence. And memes ofc. --- legacy/checkms/checkms.sh | 1 + legacy/go/go.sh | 2 +- wh20/adspam/adspam.sh | 5 +- wh20/damagereport/README.md | 144 ++++++++++++++++++++++++++++ wh20/damagereport/damagereport.sh | 26 +++++ wh20/damagereport/serverliste.md | 47 +++++++++ wh20/domainchecker/README.md | 83 ++++++++++++++++ wh20/domainchecker/domainchecker.sh | 8 ++ wh20/donaspam/donaspam.sh | 2 +- wh20/spamcheck/spamcheck.sh | 2 +- 10 files changed, 315 insertions(+), 5 deletions(-) create mode 100644 wh20/damagereport/README.md create mode 100644 wh20/damagereport/damagereport.sh create mode 100644 wh20/damagereport/serverliste.md create mode 100644 wh20/domainchecker/README.md create mode 100644 wh20/domainchecker/domainchecker.sh diff --git a/legacy/checkms/checkms.sh b/legacy/checkms/checkms.sh index e61357c..c55a579 100755 --- a/legacy/checkms/checkms.sh +++ b/legacy/checkms/checkms.sh @@ -213,6 +213,7 @@ $REMOTE bash -s </esn-support-bash-snippets.git + cd esn-support-bash-snippets/wh20/damagereport.sh + chmod +x damagereport.sh + ``` + +2. Abhängigkeiten installieren: + - [`checkms`](../../legacy/checkms/checkms.sh) + - [`adspam`](../adspam/adspam.sh) + - [`donaspam`](../donaspam/donaspam.sh) + - [`spamcheck`](../spamcheck/spamcheck.sh) --> muss auf jedem zu prüfenden Server unter `~/bin/spamcheck` hinterlegt sein. Siehe [Serverliste](./serverliste.md) + +--- + +## Nutzung + +### Standardaufruf +```bash +./damagereport.sh +``` + +### Beispiele +```bash +./damagereport.sh +./damagereport.sh 2025-09-08 # Variable Logabfrage muss erst in adspam, donaspam und spamcheck implementiert werden +``` + +--- + +## Optionen + +```bash +Usage: ./damagereport.sh [OPTIONS] + +--help Zeigt diese Hilfe +--option Beispieloption +YYYY-MM-DD Beispiel für Datumsargument +``` + +--- + +## Beispielausgabe + +```bash +eign01@connect-lej ~ $ damagereport +Bridge, give me Fri Apr 17 12:49:51 CEST 2026 damagereport! +🚨 Initiating damagereport for mailservices! + +Starte checkms fuer 2026-04-17 +Analysiere 2026-04-17.log + +COUNT IP CODE +----- ---------------- ------ + +⚠️ Initiating Spamcheck for adino-servrs ⚠️ + 🚀 srv212.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv237.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv244.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv251.adino.at Spamcheck 🛠️ +❌ Anzahl S7772: 6 +🚀 srv252.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv268.adino.at Spamcheck 🛠️ +❌ Anzahl S7772: 6 +🚀 srv272.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv279.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv280.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv285.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv307.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv327.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv353.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv358.adino.at Spamcheck 🛠️ +✅ All systems green. +🚀 srv395.adino.at Spamcheck 🛠️ +✅ All systems green. +⚠️ Initiating spamcheck on inname-servers + +=== ws20.inname.net Spamcheck === +✅ All systems green. +=== ws21.inname.net Spamcheck === +✅ All systems green. +=== ws22.inname.net Spamcheck === +✅ All systems green. +=== ws23.inname.net Spamcheck === +✅ All systems green. +=== ws24.inname.net Spamcheck === +✅ All systems green. +=== ws25.inname.net Spamcheck === +✅ All systems green. +=== ws26.inname.net Spamcheck === +✅ All systems green. +=== ws27.inname.net Spamcheck === +❌ Anzahl S3150: 5 +=== ws28.inname.net Spamcheck === +✅ All systems green. +=== ws29.inname.net Spamcheck === +✅ All systems green. +=== ws30.inname.net Spamcheck === +✅ All systems green. + +``` + +--- + +## Setup-Hinweise + +Falls notwendig, Alias in `~/.bashrc` setzen: +```bash +alias damagereport='~/pfad/zum/repo/wh20/damagereport/damagereport.sh' +``` + +--- + +## Notes + +- Derzeit kombiniert dieses Skript wirklich nur die Standardausgaben von checkms, adspam und donaspam in einen zusammenhängenden Bericht. +- ToDos + - `spamcheck` - und damit `adspam` und `donaspam` - auch auf andere Logs als `/var/log/maillog` zugreifen lassen diff --git a/wh20/damagereport/damagereport.sh b/wh20/damagereport/damagereport.sh new file mode 100644 index 0000000..38dc754 --- /dev/null +++ b/wh20/damagereport/damagereport.sh @@ -0,0 +1,26 @@ +#! /usr/bin/env bash +# Damagereport - kombinierte Ausgabe von checkms, adspam und donaspam +# Maintainer: peignerpausz + +# --- Funktionen --- +usage() { + cat <&2; usage; exit 1 ;; + esac +done + +printf "Bridge, give me %s damagereport! \n \n" "$(date)" +printf "⚠️ Initiating damagereport for our mailservers! \n" +bash ~/bin/checkms && ~/bin/adspam && ~/bin/donaspam \ No newline at end of file diff --git a/wh20/damagereport/serverliste.md b/wh20/damagereport/serverliste.md new file mode 100644 index 0000000..c8555d2 --- /dev/null +++ b/wh20/damagereport/serverliste.md @@ -0,0 +1,47 @@ +# Serverliste + +# Legacy-Server +![The good stuff](https://media.npr.org/assets/img/2023/05/26/honest-work-meme-c7034f8bd7b11467e1bfbe14b87a5f6a14a5274b.jpg) + +- web01.in.easyname.com..web26.in.easyname.com +- web107 +- web114 +- web119 +- web501.in.easyname.com..web532.in.easyname.com + +# WH20-Server +![The not so good stuff](https://i.imgflip.com/9r6lbk.jpg) + +- web1.wh20.easyname.systems .. web25.wh20.easyname.systems + +## inname +![DONA - where servers go to die](https://thenib.com/wp-content/uploads/2019/08/this-is-not-fine-004-4f0492-1.png) +- ws20.inname.net +- ws21.inname.net +- ws22.inname.net +- ws23.inname.net +- ws24.inname.net +- ws25.inname.net +- ws26.inname.net +- ws27.inname.net +- ws28.inname.net +- ws29.inname.net +- ws30.inname.net + +## adino +![adino beim Benamsen der Server so](https://www.gifcen.com/wp-content/uploads/2022/05/kylo-ren-more-gif.gif) +- srv212.adino.at +- srv237.adino.at +- srv244.adino.at +- srv251.adino.at +- srv252.adino.at +- srv268.adino.at +- srv272.adino.at +- srv279.adino.at +- srv280.adino.at +- srv285.adino.at +- srv307.adino.at +- srv327.adino.at +- srv353.adino.at +- srv358.adino.at +- srv395.adino.at diff --git a/wh20/domainchecker/README.md b/wh20/domainchecker/README.md new file mode 100644 index 0000000..0f0311e --- /dev/null +++ b/wh20/domainchecker/README.md @@ -0,0 +1,83 @@ +# + +Kurzbeschreibung des Skripts: + + +--- + +## Features + +- Punkt 1 +- Punkt 2 +- Punkt 3 + +--- + +## Installation + +1. Repository klonen oder Skript kopieren: + ```bash + git clone /esn-support-bash-snippets.git + cd esn-support-bash-snippets// + chmod +x + ``` + +2. Abhängigkeiten (falls vorhanden) installieren: + - `jq` (optional) + - weitere Tools + +--- + +## Nutzung + +### Standardaufruf +```bash +./ +``` + +### Beispiele +```bash +./ --option foo +./ 2025-09-08 +``` + +--- + +## Optionen + +``` +Usage: ./ [OPTIONS] + +--help Zeigt diese Hilfe +--option Beispieloption +YYYY-MM-DD Beispiel für Datumsargument +``` + +--- + +## Beispielausgabe + +``` +Hier ein Beispieloutput des Skripts. +``` + +--- + +## Setup-Hinweise + +Falls notwendig, Alias in `~/.bashrc` setzen: +```bash +alias ='~/pfad/zum/repo///' +``` + +Logger-spezifisch ggf. in `~/.profile` ergänzen: +```bash +cd /var/log/easyname/$(date +%Y)/$(date +%m)/ +``` + +--- + +## Notes + +- Weitere Hinweise, Einschränkungen, Besonderheiten +- Ggf. bekannte Bugs oder ToDos diff --git a/wh20/domainchecker/domainchecker.sh b/wh20/domainchecker/domainchecker.sh new file mode 100644 index 0000000..b564403 --- /dev/null +++ b/wh20/domainchecker/domainchecker.sh @@ -0,0 +1,8 @@ +#! /usr/bin/env bash +# Domainchecker für schnelle Prüfung der MX-Records +# Maintainer: peignerpausz + +for a in domains + do domain=$(dig +short MX $a) + printf "%s MX-Records: \n⤷%s\n====\n" "$a" "$domain" +done \ No newline at end of file diff --git a/wh20/donaspam/donaspam.sh b/wh20/donaspam/donaspam.sh index 358d707..13e9b66 100644 --- a/wh20/donaspam/donaspam.sh +++ b/wh20/donaspam/donaspam.sh @@ -2,7 +2,7 @@ # Automatisierter Spamcheck für MS365 error-codes und Spamhaus rejections auf inname-Server # Maintainer: peignerpausz -printf '=== Todays Spamcheck on %s=== \n \n' "$(date)" +printf '⚠️ Initiating Spamcheck for inname-servers! ⚠️ \n \n' for a in {20..30} do ssh ws$a.inname.net -- bash -lc '~/bin/spamcheck' done \ No newline at end of file diff --git a/wh20/spamcheck/spamcheck.sh b/wh20/spamcheck/spamcheck.sh index 83e99c4..3803d85 100644 --- a/wh20/spamcheck/spamcheck.sh +++ b/wh20/spamcheck/spamcheck.sh @@ -2,7 +2,7 @@ # Spamcheck für MS365 error-codes und Spamhaus rejections # Maintainer: peignerpausz -printf '=== %s Spamcheck === \n' "$(hostname)" +printf '🚀 %s Spamcheck 🛠️ \n' "$(hostname)" found_errors=0 for a in S3150 S775 S7771 S7772 S7773 S7774 S7775 S7776 S7777 S7778 S7779 Spamhaus do -- 2.54.0