added srv diag srcipt
This commit is contained in:
103
scripts/server_diagnose.sh
Normal file
103
scripts/server_diagnose.sh
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
###############################################################################
|
||||||
|
# SERVER DIAGNOSE SCRIPT
|
||||||
|
# Version: v1.0
|
||||||
|
# Author: Stephan & ChatGPT
|
||||||
|
# Purpose: Read-only Systemdiagnose für Linux Server
|
||||||
|
# Output: server_diagnose.txt im aktuellen Verzeichnis
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
OUTFILE="server_diagnose.txt"
|
||||||
|
|
||||||
|
echo "Starte Server-Diagnose..."
|
||||||
|
echo "Output wird gespeichert in: $OUTFILE"
|
||||||
|
echo "----------------------------------------"
|
||||||
|
|
||||||
|
# Self-Test
|
||||||
|
if ! command -v uname >/dev/null 2>&1; then
|
||||||
|
echo "Fehler: uname nicht gefunden – grundlegende Tools fehlen." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
{
|
||||||
|
echo "SERVER DIAGNOSE REPORT"
|
||||||
|
echo "Erstellt am: $(date)"
|
||||||
|
echo "==========================================="
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "### SYSTEMINFO ###"
|
||||||
|
uname -a
|
||||||
|
cat /etc/os-release 2>/dev/null
|
||||||
|
echo ""
|
||||||
|
echo "Uptime:"
|
||||||
|
uptime
|
||||||
|
echo ""
|
||||||
|
echo "CPU:"
|
||||||
|
lscpu 2>/dev/null
|
||||||
|
echo ""
|
||||||
|
echo "RAM:"
|
||||||
|
free -h
|
||||||
|
echo ""
|
||||||
|
echo "Festplatten:"
|
||||||
|
df -h
|
||||||
|
echo ""
|
||||||
|
echo "Blockgeräte:"
|
||||||
|
lsblk
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "### NETZWERK ###"
|
||||||
|
ip a
|
||||||
|
echo ""
|
||||||
|
echo "Routen:"
|
||||||
|
ip r
|
||||||
|
echo ""
|
||||||
|
echo "Offene Ports:"
|
||||||
|
ss -tulpen
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "### DIENSTE ###"
|
||||||
|
echo "Aktive Services:"
|
||||||
|
systemctl --type=service --state=running
|
||||||
|
echo ""
|
||||||
|
echo "Fehlerhafte Services:"
|
||||||
|
systemctl --failed
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "### BENUTZER ###"
|
||||||
|
echo "Benutzerliste:"
|
||||||
|
cut -d: -f1 /etc/passwd
|
||||||
|
echo ""
|
||||||
|
echo "Sudo-Gruppe:"
|
||||||
|
getent group sudo || getent group wheel
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "### SSH KONFIGURATION ###"
|
||||||
|
grep -E "^(Port|PermitRootLogin|PasswordAuthentication|PubkeyAuthentication)" /etc/ssh/sshd_config
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "### DOCKER ###"
|
||||||
|
docker --version 2>/dev/null
|
||||||
|
docker ps -a 2>/dev/null
|
||||||
|
docker network ls 2>/dev/null
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "### ORDNERSTRUKTUR ###"
|
||||||
|
echo "Struktur /srv:"
|
||||||
|
ls -R /srv 2>/dev/null
|
||||||
|
echo ""
|
||||||
|
echo "Struktur /data:"
|
||||||
|
ls -R /data 2>/dev/null
|
||||||
|
echo ""
|
||||||
|
echo "Struktur /docker:"
|
||||||
|
ls -R /docker 2>/dev/null
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "### LOGS (CRITICAL) ###"
|
||||||
|
journalctl -p 3 -xb | head -n 50
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
} > "$OUTFILE"
|
||||||
|
|
||||||
|
echo "Diagnose abgeschlossen."
|
||||||
|
echo "Datei erstellt: $OUTFILE"
|
||||||
|
exit 0
|
||||||
Reference in New Issue
Block a user