1. Das Script erstellen

Logge dich per SSH auf deinem VPS ein und erstelle die Datei:

BASH
nano ~/check_logs.sh

Kopiere diesen Inhalt hinein:

BASH
#!/bin/bash

# Farben für bessere Lesbarkeit
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color

echo -e "${YELLOW}=== System & Security Log Check ===${NC}"

# 1. Fail2Ban Status & Logs
echo -e "\n${GREEN}[Fail2Ban] - Letzte 5 Sperren:${NC}"
grep "Ban" /var/log/fail2ban.log | tail -n 5 || echo "Keine Einträge."

# 2. SSH / Auth Logs (Versuchte Logins)
echo -e "\n${GREEN}[Auth] - Letzte 5 Login-Versuche:${NC}"
tail -n 5 /var/log/auth.log

# 3. Nginx Error Logs (Global)
echo -e "\n${RED}[Nginx] - Letzte 5 Fehler:${NC}"
tail -n 5 /var/log/nginx/error.log

# 4. HestiaCP Panel Logs
echo -e "\n${GREEN}[HestiaCP] - Letzte Panel-Aktivitäten:${NC}"
tail -n 5 /var/log/hestia/system.log

# 5. MySQL/MariaDB Errors
echo -e "\n${RED}[MySQL/MariaDB] - Letzte Fehler:${NC}"
tail -n 5 /var/log/mysql/error.log 2>/dev/null || echo "Keine Fehler oder Datei nicht lesbar."

echo -e "\n${YELLOW}=== Ende der Übersicht ===${NC}"

2. Rechte vergeben und Ausführen

Damit du das Script starten kannst, musst du es ausführbar machen:

BASH
chmod +x ~/check_logs.sh

Jetzt kannst du es jederzeit aufrufen mit:

BASH
sudo ~/check_logs.sh

Warum das für dich jetzt nützlich ist:

  • Fail2Ban: Du siehst sofort, ob dein neuer SSH-Port (60022) angegriffen wird.

  • Nginx: Wenn Joomla mal nicht lädt (z. B. wegen PHP-Fehlern), siehst du hier sofort den Grund.

  • Hestia: Du siehst, ob Hintergrundaufgaben (Cronjobs) oder Datenbank-Aktionen sauber durchgelaufen sind.

Profi-Tipp für Obsidian:

Du kannst dir in deinem Setup-Guide in Obsidian einen Alias in deiner .bashrc anlegen, damit du nur noch logs tippen musst:

  1. nano ~/.zshrc

  2. Am Ende einfügen: alias logs='sudo ~/check_logs.sh'

  3. source ~/.zshrc