Skip to main content

1.5 Arbeitshypothesen bilden und Prüfungen priorisieren

Nachdem Störung, Umfang, Zeitpunkt, Änderungen und Ausgangszustand dokumentiert wurden, beginnt die gezielte Ursachensuche.

Dabei gilt:

Nicht die erste plausible Erklärung beheben, sondern mehrere mögliche Ursachen aufstellen und mit geeigneten Tests unterscheiden.

Eine Arbeitshypothese ist eine vorläufige, überprüfbare Erklärung für das beobachtete Fehlerbild. Sie ist noch keine bestätigte Ursache.


Ziel dieser Seite

Nach diesem Arbeitsschritt sollten:

  • gesicherte Fakten von Vermutungen getrennt sein,
  • mehrere technisch plausible Ursachen vorliegen,
  • widersprechende Beobachtungen berücksichtigt sein,
  • für jede wichtige Hypothese ein geeigneter Test definiert sein,
  • erwartete Testergebnisse vorher festgelegt sein,
  • ungefährliche und aussagekräftige Tests priorisiert sein,
  • Testergebnisse nachvollziehbar dokumentiert werden.

1. Kennzeichnung der Befehle

KennzeichnungBedeutung
[RO]Read-only: liest Informationen aus
[TEST]Führt eine aktive Prüfung aus, beispielsweise eine DNS- oder TCP-Anfrage
[FILE]Erstellt oder überschreibt eine Datei
[PRIV]Benötigt möglicherweise Administrator- oder Root-Rechte
[CHANGE]Verändert eine Konfiguration oder einen Betriebszustand
[SENSITIV]Ausgabe kann vertrauliche Daten enthalten

Ein [TEST] verändert normalerweise keine Konfiguration, erzeugt aber Netzwerkverkehr und möglicherweise Protokolleinträge. Wiederholte Anmeldeversuche können beispielsweise ein Benutzerkonto sperren.


2. Fakten, Vermutungen und Ursachen unterscheiden

BegriffBedeutungBeispiel
SymptomSichtbare Auswirkung der StörungWebseite ist nicht erreichbar
FaktDurch Messung oder Beleg bestätigte InformationTCP-Port 443 ist von Client A nicht erreichbar
VermutungNicht ausreichend begründete Annahme„Bestimmt ist die Firewall schuld“
HypotheseÜberprüfbare mögliche ErklärungEine Firewall-Regel blockiert VLAN 30 zu TCP 443
VorhersageErwartetes Ergebnis, wenn die Hypothese stimmtClients aus VLAN 40 funktionieren, VLAN 30 nicht
TestGezielte Prüfung der VorhersagePorttest aus beiden VLANs
UrsacheDurch Belege und Gegenproben bestätigte ErklärungACL blockiert VLAN 30 zu TCP 443
MaßnahmeVeränderung zur Beseitigung der UrsacheKorrektur der freigegebenen ACL-Regel

Wichtig

„Nach dem Neustart funktionierte es wieder“ ist zunächst nur ein Ergebnis. Daraus folgt noch nicht, warum der Fehler auftrat.

Mögliche Erklärungen wären beispielsweise:

  • blockierter Prozess wurde beendet,
  • Speicherleck wurde vorübergehend beseitigt,
  • Netzwerkverbindung wurde neu aufgebaut,
  • temporärer Cache wurde geleert,
  • Konfiguration wurde beim Start neu geladen,
  • abhängiger Dienst wurde in anderer Reihenfolge gestartet.

3. Eine präzise Problembeschreibung erstellen

Eine brauchbare Hypothese benötigt eine präzise Problembeschreibung.

Ungeeignet

Das Netzwerk funktioniert nicht.

Besser

Seit ungefähr 14:35 Uhr können Windows-Clients aus VLAN 30 den Server server.example über TCP 443 nicht erreichen. DNS liefert die erwartete IP-Adresse. Clients aus VLAN 40 erreichen denselben Port weiterhin.

Eine gute Problembeschreibung enthält:

  • betroffene Funktion,
  • betroffene Benutzer oder Geräte,
  • nicht betroffene Benutzer oder Geräte,
  • Quellnetz oder Standort,
  • Zielsystem,
  • Protokoll und Port,
  • Beginn der Störung,
  • letzte bekannte Funktion,
  • Fehlermeldung,
  • bereits bestätigte Fakten,
  • letzte relevante Änderungen.

4. Aufbau einer überprüfbaren Hypothese

Eine gute Arbeitshypothese kann nach diesem Muster formuliert werden:

Wenn <vermutete Ursache> vorliegt, dann müsste <beobachtbares Ergebnis> auftreten, weil <technischer Zusammenhang>. Das prüfen wir mit <Test>. Widerlegt wäre die Hypothese durch <Gegenergebnis>.

Beispiel

Wenn eine Firewall-Regel den Verkehr aus VLAN 30 blockiert, dann müsste der TCP-Port 443 aus VLAN 30 nicht erreichbar sein, während derselbe Port aus einem freigegebenen VLAN erreichbar ist. Widerlegt wäre die Hypothese, wenn die Verbindung aus beiden VLANs identisch fehlschlägt oder die Pakete nachweislich bis zum Server gelangen.


5. Schlechte und gute Hypothesen

Schlechte FormulierungProblemBessere Formulierung
Die Firewall ist kaputtZu allgemein und nicht überprüfbarEine Firewall-Regel blockiert TCP 443 aus VLAN 30
Windows macht ProblemeKein konkreter MechanismusDer Windows-DNS-Client verwendet einen veralteten Cacheeintrag
Der Server ist down„Down“ ist nicht definiertDer Webdienst lauscht nicht auf TCP 443
Es liegt am BenutzerKeine technische ErklärungDem Benutzer fehlt die erforderliche Anwendungsrolle
Das Update war schuldNur zeitliche KorrelationUpdate KB… hat den verwendeten Treiber ersetzt
DNS geht nichtNicht eingegrenztDer Client fragt einen nicht erreichbaren DNS-Server ab
Das Zertifikat ist falschZu ungenauDer aufgerufene Hostname fehlt im Subject Alternative Name
Das Netzwerk ist langsamKeine MessgrößeZwischen Client und Server treten Paketverluste auf

6. Mögliche Fehlerbereiche systematisch durchgehen

Für eine erste Hypothesenliste können folgende Bereiche verwendet werden:

FehlerbereichTypische Ursachen
BenutzerBedienfehler, falsche Eingabe, fehlende Berechtigung
BenutzerkontoSperrung, Ablauf, Gruppenmitgliedschaft, MFA
Client-HardwareNetzwerkkarte, Datenträger, Arbeitsspeicher
Client-BetriebssystemUpdate, Treiber, lokaler Dienst, Richtlinie
Client-KonfigurationIP, DNS, Proxy, Zertifikat, Firewall
AnwendungAbsturz, Cache, Version, Konfiguration
NamensauflösungDNS-Server, Eintrag, Suchdomäne, Cache
NetzwerkzugangWLAN, Switchport, VLAN, NAC, Port-Security
NetzwerkpfadRouting, ACL, Firewall, NAT, MTU
ZielserverDienst, Ressourcen, Betriebssystem, Listener
AuthentifizierungKerberos, LDAP, RADIUS, Zertifikat, Token
AutorisierungRolle, Gruppe, ACL, Dateiberechtigung
Abhängiger DienstDatenbank, DNS, Storage, API, Queue
SicherheitskomponenteEDR, Antivirus, Proxy, Webfilter
AutomatisierungSkript, GPO, Deployment, geplanter Job
VirtualisierungRessourcen, virtuelles Netzwerk, Storage
Cloud oder ProviderPlattformstörung, Richtlinie, Service Health
Letzte ÄnderungUpdate, Migration, Konfiguration, Zertifikat

Nicht jeder Bereich muss ausführlich geprüft werden. Die Eingrenzung aus den vorherigen Seiten bestimmt, welche Bereiche plausibel sind.


7. Hypothesen aus dem Fehlerumfang ableiten

BeobachtungZu priorisierende Hypothesen
Nur ein Benutzer betroffenKonto, Berechtigung, Profil, Rolle
Alle Benutzer eines Clients betroffenClient, Betriebssystem, lokale Konfiguration
Ein Benutzer auf allen Clients betroffenIdentität, Konto, Berechtigung
Nur ein Standort betroffenWAN, Firewall, DNS, Provider, Standortnetz
Nur ein VLAN betroffenRouting, ACL, DHCP, VLAN-Zuordnung
Alle Clients betroffenServer, zentraler Dienst, gemeinsame Abhängigkeit
Nur ein Server betroffenDienst, Betriebssystem, Ressourcen, Serverkonfiguration
Nur ein Browser betroffenBrowserprofil, Proxy, Zertifikat, Erweiterung
Zugriff per IP funktioniert, per Name nichtDNS, Hosts-Datei, Suchdomäne
Port erreichbar, Anwendung funktioniert nichtProtokoll, Authentifizierung, Anwendung
Anwendung lokal erreichbar, remote nichtListener-Bindung, Firewall, Routing
Fehler nur zu bestimmten Zeitengeplanter Job, Last, Lease, Token, Zertifikat
Fehler nach UpdateKompatibilität, Treiber, Richtlinie, Neustart
Fehler verschwindet nach NeustartProzesszustand, Cache, Ressourcenleck
Neue Geräte betroffenDHCP, NAC, Zertifikat, Provisionierung
Alte Geräte betroffen, neue funktionierenveraltete Konfiguration oder Software

8. Belege für und gegen eine Hypothese sammeln

Eine professionelle Hypothese enthält nicht nur unterstützende Hinweise. Es müssen auch widersprechende Beobachtungen gesucht werden.

HypotheseUnterstützende HinweiseWidersprechende Hinweise
DNS-ProblemName wird nicht aufgelöstDirekte DNS-Abfrage liefert korrekte Adresse
Serverdienst ausgefallenPort ist von allen Clients geschlossenDienst lauscht und andere Clients funktionieren
Benutzerberechtigung fehltNur ein Benutzer betroffenDerselbe Benutzer funktioniert auf anderem Client
Lokale Firewall blockiertNur ein Client betroffenVerbindung scheitert auch von anderen Clients
VLAN-ACL blockiertNur ein VLAN betroffenPakete erreichen nachweislich den Server
Zertifikat abgelaufenTLS-Fehler und Ablaufdatum überschrittenZertifikat ist gültig und Hostname stimmt
Datenträger vollFreier Speicher ist nahezu nullAusreichend Speicher und keine I/O-Fehler
Update verursacht FehlerFehler beginnt direkt nach UpdateIdentisch aktualisierte Systeme funktionieren

Eine Hypothese sollte herabgestuft werden, wenn mehrere gesicherte Fakten ihr widersprechen.


9. Prüfungen sinnvoll priorisieren

Nicht automatisch die wahrscheinlichste Hypothese wird zuerst geprüft. Sinnvoll ist zunächst ein Test, der mit geringem Risiko möglichst viele Hypothesen unterscheidet.

Priorisierungskriterien

KriteriumFrage
WahrscheinlichkeitPasst die Hypothese zum Fehlerbild?
InformationsgewinnWie viele Ursachen kann der Test unterscheiden?
SicherheitKann der Test Datenverlust oder Ausfall verursachen?
AufwandWie viel Zeit und Vorbereitung benötigt der Test?
ReproduzierbarkeitKann der Test zuverlässig wiederholt werden?
ReversibilitätLässt sich eine Veränderung sicher zurücknehmen?
ReichweiteBetrifft der Test einen Client oder die Produktion?
BeweislageGibt es bereits unterstützende oder widersprechende Fakten?

10. Prioritätsklassen

PrioritätBedeutungBeispiele
P1Sicher, schnell und hoher InformationsgewinnStatus, Logs, DNS-, TCP- und Vergleichstest
P2Gezielte Prüfung mit begrenztem AufwandTestkonto, anderer Client, isolierte Konfiguration
P3Potenziell störende oder aufwendige PrüfungDienstneustart, Failover, Rollback
P4Unwahrscheinlich, widersprochen oder unverhältnismäßiggroßflächige Änderung ohne ausreichende Belege

Sinnvolle Reihenfolge

  1. passive Zustandsabfrage,
  2. Vergleich mit funktionierendem System,
  3. gezielte Netzwerk- oder Anwendungstests,
  4. Test in isolierter Umgebung,
  5. reversible Änderung,
  6. Dienstneustart oder Failover,
  7. Konfigurationsrollback,
  8. weitreichende Änderung oder Produktionsunterbrechung.

11. Tests müssen Hypothesen unterscheiden

Ein Test ist besonders nützlich, wenn unterschiedliche Hypothesen unterschiedliche Ergebnisse erwarten lassen.

Wenig aussagekräftiger Test

Der Benutzer soll es noch einmal versuchen.

Dieser Test zeigt lediglich, ob der Fehler weiterhin auftritt.

Aussagekräftiger Test

Derselbe Benutzer testet dieselbe Funktion auf einem funktionierenden Vergleichsclient.

Mögliche Interpretation:

ErgebnisSchlussfolgerung
Benutzer funktioniert auf VergleichsclientClientbezogene Ursache wahrscheinlicher
Benutzer funktioniert auch dort nichtKonto oder Berechtigung wahrscheinlicher
Andere Benutzer funktionieren auf betroffenem ClientBenutzerbezogene Ursache wahrscheinlicher
Kein Benutzer funktioniert auf betroffenem ClientClient- oder Netzwerkursache wahrscheinlicher

12. Vor dem Test das erwartete Ergebnis festlegen

Vor jedem Test sollte dokumentiert werden:

  • welche Hypothese geprüft wird,
  • welcher Befehl oder Ablauf verwendet wird,
  • welches Ergebnis die Hypothese unterstützt,
  • welches Ergebnis sie widerlegt,
  • welche Ergebnisse uneindeutig wären,
  • ob der Test Veränderungen oder Risiken verursacht,
  • wie der Ausgangszustand wiederhergestellt wird.

Testvorlage

FeldEintrag
Hypothese
Technische Begründung
Test
Erwartetes Ergebnis
Widerlegendes Ergebnis
Risiko
Rückfallmöglichkeit
Tatsächliches Ergebnis
BewertungBestätigt / Gestützt / Unklar / Widerlegt
Nächster Schritt

13. Grundlegender Netzwerk- und Diensttest

Als Beispiel wird ein Webdienst verwendet:

  • Hostname: server.example
  • Port: 443
  • Protokoll: HTTPS

server.example ist ein reservierter Beispieldomainname und muss durch das tatsächliche Ziel ersetzt werden.


14. Stufe 1 – Namensauflösung prüfen

Windows

[TEST] Resolve-DnsName server.example

Bestimmten DNS-Server abfragen

[TEST] Resolve-DnsName server.example -Server <DNS-Server-IP>

Alternative

[TEST] nslookup server.example


Linux

[TEST] getent ahosts server.example

[TEST] dig server.example

Kurze Ausgabe

[TEST] dig +short server.example

Bestimmten DNS-Server abfragen

[TEST] dig @<DNS-Server-IP> server.example


macOS

[TEST] dscacheutil -q host -a name server.example

[TEST] dig server.example

Kurze Ausgabe

[TEST] dig +short server.example

Bestimmten DNS-Server abfragen

[TEST] dig @<DNS-Server-IP> server.example


Interpretation der DNS-Prüfung

ErgebnisMögliche Bedeutung
Keine Adresse wird geliefertDNS-Eintrag, DNS-Server oder Resolverproblem
Falsche IP-Adresseveralteter Eintrag, falsche Zone, Cache oder Split-DNS
Unterschiedliche Clients erhalten unterschiedliche IPsSplit-DNS, Load Balancing, Cache oder andere Resolver
Bestimmter DNS-Server antwortet korrekt, Standardabfrage nichtClient verwendet falschen oder nicht erreichbaren DNS-Server
Name wird korrekt aufgelöstDNS-Grundfunktion wahrscheinlich vorhanden
Auflösung dauert sehr langeDNS-Server, Weiterleitung, Netzwerk oder Suchdomäne prüfen

Eine erfolgreiche DNS-Abfrage beweist noch nicht, dass der Zielservice erreichbar ist.


15. Stufe 2 – IP-Erreichbarkeit mit ICMP prüfen

Windows

[TEST] ping -n 4 <IP-Adresse>

Linux

[TEST] ping -c 4 <IP-Adresse>

macOS

[TEST] ping -c 4 <IP-Adresse>

Interpretation

ErgebnisBedeutung
Antworten werden empfangenIP-Kommunikation per ICMP funktioniert
Keine AntwortHost, Route, Firewall oder ICMP-Filterung möglich
Hohe LatenzNetzlast, WAN-Strecke, WLAN oder Zielauslastung möglich
Paketverlustinstabile Verbindung, Überlastung oder physisches Problem möglich
„Destination unreachable“Route, Gateway oder Zielnetz nicht erreichbar
Ping per IP funktioniert, per Name nichtNamensauflösung priorisieren

Ein fehlgeschlagener Ping beweist nicht, dass der Server ausgefallen ist. ICMP kann blockiert sein, während der eigentliche TCP-Dienst funktioniert.


16. Stufe 3 – Zielport prüfen

Windows

[TEST] Test-NetConnection server.example -Port 443 -InformationLevel Detailed

Wichtige Felder:

  • RemoteAddress
  • RemotePort
  • InterfaceAlias
  • SourceAddress
  • TcpTestSucceeded

Nur Ergebnis ausgeben

[TEST] Test-NetConnection server.example -Port 443 -InformationLevel Quiet


Linux

[TEST] nc -vz -w 3 server.example 443


macOS

[TEST] nc -vz -w 3 server.example 443

nc kann je nach Linux-Installation fehlen und muss gegebenenfalls als freigegebenes Paket installiert werden.


Interpretation des Porttests

ErgebnisMögliche Bedeutung
TCP-Verbindung erfolgreichNetzwerkpfad und TCP-Listener grundsätzlich erreichbar
Verbindung abgelehntZiel erreichbar, aber kein Listener oder aktive Ablehnung
ZeitüberschreitungPaketfilter, Route, Überlastung oder nicht antwortendes Ziel
Name kann nicht aufgelöst werdenDNS zuerst untersuchen
Nur ein Client scheitertClient, lokales Netzwerk oder lokale Firewall
Nur ein VLAN scheitertACL, Firewall, Routing oder VLAN-Konfiguration
Alle Clients scheiternDienst, Server, zentrale Firewall oder gemeinsame Abhängigkeit

Ein erfolgreicher TCP-Test beweist nur den Verbindungsaufbau zum Port. Er bestätigt noch nicht, dass Anmeldung, Anwendung oder Datenbank funktionieren.


17. Stufe 4 – Anwendungsebene prüfen

Windows

[TEST] curl.exe -v -o NUL https://server.example/

Linux

[TEST] curl -v -o /dev/null https://server.example/

macOS

[TEST] curl -v -o /dev/null https://server.example/

Die Option -v zeigt unter anderem:

  • aufgelöste IP-Adresse,
  • TCP-Verbindungsaufbau,
  • TLS-Aushandlung,
  • Zertifikatsprüfung,
  • gesendete HTTP-Anfrage,
  • empfangenen HTTP-Status.

Beim ersten Test sollte nicht -k beziehungsweise --insecure verwendet werden. Diese Option deaktiviert die Zertifikatsprüfung und kann genau den Fehler verbergen, der untersucht werden soll.


18. HTTP-Ergebnisse interpretieren

ErgebnisInterpretation
200 OKAnfrage wurde erfolgreich verarbeitet
301 oder 302Weiterleitung; Ziel des Location-Headers prüfen
401 UnauthorizedDienst erreichbar, Authentifizierung erforderlich oder fehlgeschlagen
403 ForbiddenDienst erreichbar, Zugriff wird verweigert
404 Not FoundDienst erreichbar, Ressource oder Pfad nicht gefunden
408 Request TimeoutAnfrage wurde nicht rechtzeitig verarbeitet
429 Too Many RequestsRate Limit oder zu viele Anfragen
500 Internal Server Errorserverseitiger Anwendungsfehler
502 Bad GatewayProxy oder Gateway erhält ungültige Backend-Antwort
503 Service UnavailableDienst oder Backend nicht verfügbar
504 Gateway TimeoutProxy oder Gateway wartet vergeblich auf Backend
TLS-ZertifikatsfehlerZertifikat, Hostname, Vertrauenskette oder Uhrzeit prüfen
TCP-VerbindungsfehlerNetzwerkpfad, Firewall oder Listener prüfen

Ein HTTP-Status ist ein wichtiger Hinweis, aber die genaue Bedeutung kann von der Anwendung abweichen.


19. TLS-Verbindung untersuchen

Auf Linux und macOS sowie unter Windows mit installiertem OpenSSL:

[TEST] openssl s_client -connect server.example:443 -servername server.example -showcerts

Zu prüfen sind:

  • Zertifikatsinhaber,
  • Subject Alternative Names,
  • Aussteller,
  • Gültigkeitszeitraum,
  • Zertifikatskette,
  • verwendete TLS-Version,
  • verwendete Cipher Suite,
  • abschließendes Verifikationsergebnis.

Typische Befunde

BefundMögliche Ursache
Zertifikat abgelaufenZertifikat wurde nicht rechtzeitig erneuert
Zertifikat noch nicht gültigfalsche Systemzeit oder falsches Zertifikat
Hostname stimmt nichtfalsches Zertifikat, Alias oder fehlender SAN-Eintrag
Unbekannte CAStamm- oder Zwischenzertifikat fehlt
Verbindung ohne Zertifikat beendetTLS-Listener oder Proxyproblem
Handshake Failureinkompatible TLS-Version, Cipher oder Clientzertifikat
Browser funktioniert, Anwendung nichtunterschiedlicher Trust Store oder TLS-Stack

20. Netzwerkpfad prüfen

Windows

[TEST] tracert server.example

PowerShell

[TEST] Test-NetConnection server.example -TraceRoute


Linux

[TEST] tracepath server.example

Alternativ, wenn installiert:

[TEST] traceroute server.example


macOS

[TEST] traceroute server.example

Wichtige Einschränkungen

  • Nicht jeder Router beantwortet Traceroute-Anfragen.
  • Sternchen bedeuten nicht automatisch einen Fehler an diesem Gerät.
  • Der Hin- und Rückweg kann unterschiedlich sein.
  • Firewalls können Traceroute blockieren.
  • Der letzte erreichbare Hop ist nicht automatisch die Fehlerursache.

21. Lokal gegen remote testen

Wenn ein Dienst direkt auf dem Server funktioniert, aber von Clients nicht erreichbar ist, wird die Ursache auf Netzwerkpfad, Listener-Bindung oder Firewall eingegrenzt.

Windows-Server

Dienst lokal testen

[TEST] Test-NetConnection localhost -Port <Port>

Listener prüfen

[RO][PRIV] Get-NetTCPConnection -State Listen -LocalPort <Port>

Zugehörigen Prozess bestimmen

[RO] Get-Process -Id <OwningProcess>


Linux-Server

Dienst lokal testen

[TEST] nc -vz -w 3 localhost <Port>

Listener prüfen

[RO][PRIV] ss -lntp | grep ":<Port>"

HTTP-Dienst lokal prüfen

[TEST] curl -v http://localhost:<Port>/


macOS-Server

Dienst lokal testen

[TEST] nc -vz -w 3 localhost <Port>

Listener prüfen

[RO][PRIV] lsof -nP -iTCP:<Port> -sTCP:LISTEN


Interpretation

Lokaler TestRemote-TestWahrscheinlicher Bereich
ErfolgreichErfolgreichAnwendung, Anmeldung oder Benutzerberechtigung
ErfolgreichFehlgeschlagenFirewall, Routing, NAT oder Listener-Bindung
FehlgeschlagenFehlgeschlagenDienst, Server oder Anwendung
FehlgeschlagenErfolgreichungewöhnlicher Proxy-, Container- oder Load-Balancer-Pfad
Unterschiedlich je QuellnetzUnterschiedlichVLAN, ACL, Firewall oder Routing

22. Dienstzustand und Protokolle prüfen

Windows

[RO] Get-Service -Name <Dienstname>

[RO] Get-WinEvent -FilterHashtable @{LogName="System"; StartTime=(Get-Date).AddHours(-1)} | Select-Object TimeCreated, Id, ProviderName, LevelDisplayName, Message


Linux

[RO] systemctl status <Dienstname> --no-pager

[RO] journalctl -u <Dienstname> --since "1 hour ago" --no-pager


macOS

[RO] launchctl list | grep -i "<Dienstname>"

[RO] log show --last 1h --predicate 'process == "<Prozessname>"' --style compact

Zu prüfende Hinweise

  • Dienst läuft nicht,
  • Dienst startet wiederholt neu,
  • Abhängigkeit ist ausgefallen,
  • Port kann nicht gebunden werden,
  • Konfigurationsdatei enthält Fehler,
  • Dienstkonto kann sich nicht anmelden,
  • Zertifikat kann nicht geladen werden,
  • Datenträger ist voll,
  • Datei oder Datenbank ist gesperrt,
  • Arbeitsspeicher reicht nicht aus.

23. Benutzer- und Berechtigungshypothesen prüfen

Windows

Benutzeridentität und Gruppen

[RO][SENSITIV] whoami /all

NTFS-Berechtigungen

[RO][SENSITIV] icacls "<Pfad>"

PowerShell-ACL

[RO][SENSITIV] Get-Acl "<Pfad>" | Format-List

Domänenkanal auf Mitgliedscomputern prüfen

[TEST] Test-ComputerSecureChannel -Verbose

Test-ComputerSecureChannel ist für Domänenmitgliedscomputer vorgesehen. Auf Domänencontrollern ist dieses Cmdlet laut Microsoft nicht zur zuverlässigen Prüfung geeignet. Der Parameter -Repair wäre eine Änderung und gehört nicht zum reinen Test.


Linux

Benutzer und Gruppen

[RO] id <Benutzername>

Datei- und Verzeichnisrechte

[RO] ls -ld "<Pfad>"

Rechte des vollständigen Pfades

[RO] namei -l "<Pfad>"

POSIX-ACL anzeigen

[RO][SENSITIV] getfacl "<Pfad>"


macOS

Benutzer und Gruppen

[RO] id <Benutzername>

Dateirechte und ACL

[RO][SENSITIV] ls -lde "<Pfad>"

Typische Vergleichstests

TestInterpretation
Anderer Benutzer funktioniert am selben ClientBenutzer oder Berechtigung priorisieren
Derselbe Benutzer funktioniert an anderem ClientClient oder Benutzerprofil priorisieren
Testkonto mit gleicher Rolle funktioniertindividuelles Konto untersuchen
Testkonto mit anderer Rolle funktioniertRollen- oder Gruppenberechtigung untersuchen
Dateizugriff direkt möglich, Anwendung nichtAnwendung oder Dienstkonto untersuchen

Bei Anmeldetests muss eine mögliche Kontosperrung berücksichtigt werden.


24. Konfigurationen vergleichen

Windows PowerShell

[RO] Compare-Object (Get-Content "<Funktionierende-Datei>") (Get-Content "<Betroffene-Datei>")

Prüfsumme vergleichen

[RO] Get-FileHash "<Datei>" -Algorithm SHA256


Linux und macOS

[RO] diff -u "<Funktionierende-Datei>" "<Betroffene-Datei>"

Prüfsumme unter Linux

[RO] sha256sum "<Datei>"

Prüfsumme unter macOS

[RO] shasum -a 256 "<Datei>"

Zu vergleichende Werte

  • Softwareversion,
  • Konfigurationsdatei,
  • DNS-Server,
  • Proxy,
  • Standardgateway,
  • Zertifikat,
  • Gruppenmitgliedschaft,
  • Dateiberechtigung,
  • Dienstkonto,
  • Firewallprofil,
  • Umgebungsvariablen,
  • installierte Updates,
  • Richtlinien,
  • Feature Flags.

Eine unterschiedliche Prüfsumme zeigt nur, dass Dateien verschieden sind. Sie zeigt nicht, welcher Unterschied relevant ist.


25. Diagnosematrix für typische Ergebnisse

TestergebnisWahrscheinlicher Fehlerbereich
DNS-Abfrage schlägt fehlDNS-Client, DNS-Server oder Netzwerk zum DNS-Server
DNS liefert falsche IPZone, Cache, Hosts-Datei oder Split-DNS
IP-Ping funktioniert, Name nichtNamensauflösung
Ping scheitert, TCP funktioniertICMP wird wahrscheinlich blockiert
TCP-Port ist erreichbar, HTTP scheitertAnwendung, TLS, Authentifizierung oder Protokoll
TCP-Verbindung wird abgelehntKein Listener oder aktive Ablehnung
TCP-Verbindung läuft in TimeoutFilterung, Routing, Überlastung oder Ziel antwortet nicht
Lokal funktioniert, remote nichtFirewall, Routing, Listener-Bindung oder NAT
Andere Clients funktionierenClientbezogene Ursache
Andere Benutzer funktionierenBenutzer, Konto, Profil oder Berechtigung
Gleiches VLAN betroffenVLAN, ACL, DHCP oder Gateway
Alle VLANs betroffenServer, Dienst oder zentrale Komponente
HTTP 401Authentifizierung untersuchen
HTTP 403Autorisierung oder Richtlinie untersuchen
HTTP 500Anwendung oder Backend untersuchen
HTTP 502/504Proxy, Load Balancer oder Backend untersuchen
ZertifikatsfehlerZeit, Hostname, Trust Store oder Zertifikatskette
Dienst läuft, aber kein ListenerKonfiguration, Bindung oder Startfehler
Listener vorhanden, Anwendung reagiert nichtProzesszustand, Abhängigkeit oder Ressourcen
Datenträger vollSpeicherverbrauch und Logwachstum untersuchen

26. Mehrdeutige Ergebnisse erkennen

Ein einzelner Test liefert häufig keine eindeutige Ursache.

Beispiel: TCP-Timeout

Mögliche Ursachen:

  • lokale Firewall,
  • zentrale Firewall,
  • fehlende Route,
  • falsches Gateway,
  • Zielsystem ausgeschaltet,
  • Dienst überlastet,
  • asymmetrisches Routing,
  • falsche IP-Adresse,
  • Sicherheitsfilter verwirft Pakete,
  • Providerproblem.

Deshalb folgt auf einen mehrdeutigen Test ein zweiter Test, der diese Möglichkeiten weiter trennt.

Geeignete Folgeprüfungen

  • Test von anderem Client,
  • Test aus anderem VLAN,
  • Test direkt auf dem Server,
  • Listener auf dem Server prüfen,
  • Firewall-Logging prüfen,
  • Paketaufzeichnung auf Client oder Server,
  • Routingtabellen vergleichen,
  • Monitoring und zentrale Protokolle prüfen.

27. Beispiel einer vollständigen Hypothesenliste

Störung

Clients aus VLAN 30 können https://server.example nicht öffnen. Clients aus VLAN 40 funktionieren. DNS liefert in beiden VLANs dieselbe IP-Adresse.

Nr.HypotheseBelege dafürBelege dagegenTestPriorität
H1ACL blockiert VLAN 30 zu TCP 443Nur VLAN 30 betroffenNoch keineTCP-Test und Firewall-LogP1
H2Falsches Gateway in VLAN 30gesamtes VLAN betroffenAndere Ziele erreichbarRoute und Gateway prüfenP1
H3DNS liefert falsche AdresseWebdienst nicht erreichbarBeide VLANs erhalten dieselbe IPDNS-Ergebnisse vergleichenP4
H4Webdienst ist ausgefallenVerbindung schlägt fehlVLAN 40 funktioniertlokaler und externer PorttestP4
H5MTU-Problem im NetzwerkpfadHTTPS betroffennoch keine Größenabhängigkeit bekanntPaketgröße und PaketaufzeichnungP2
H6Proxy wird nur in VLAN 30 verwendetnur bestimmte Clients betroffen möglichnoch ungeprüftProxykonfiguration vergleichenP2

Erste Prüfung

Test-NetConnection server.example -Port 443

Ergebnis:

  • VLAN 30: TcpTestSucceeded: False
  • VLAN 40: TcpTestSucceeded: True

Dadurch werden H1, H2 oder H6 wahrscheinlicher. H3 und H4 werden weniger wahrscheinlich.

Zweite Prüfung

  • Standardgateway in VLAN 30 ist korrekt.
  • Andere Ziele über dasselbe Gateway funktionieren.
  • Firewall protokolliert einen verworfenen Verbindungsversuch von VLAN 30 zu TCP 443.

Damit wird H1 stark gestützt.

Bestätigung

Nach einer freigegebenen Korrektur der betroffenen ACL-Regel funktioniert derselbe definierte Test aus VLAN 30. Die Firewall protokolliert nun eine erlaubte Verbindung.


28. Hypothesenstatus verwenden

StatusBedeutung
OffenNoch nicht geprüft
GestütztHinweise sprechen dafür
Teilweise gestütztEinige Ergebnisse passen, andere sind offen
UnklarTest war nicht eindeutig
WiderlegtErgebnis widerspricht der Vorhersage
BestätigtMehrere Belege und Gegenprobe stützen die Ursache
ZurückgestelltDerzeit geringe Priorität
Nicht prüfbarWerkzeug, Zugriff oder Vergleichssystem fehlt

Eine Hypothese sollte nicht bereits nach einem passenden Einzelbefund als bestätigt gelten.


29. Wann gilt eine Ursache als bestätigt?

Eine Ursache ist ausreichend bestätigt, wenn möglichst mehrere Kriterien erfüllt sind:

  • sie erklärt das gesamte Fehlerbild,
  • sie erklärt den betroffenen Umfang,
  • sie passt zum zeitlichen Verlauf,
  • passende technische Belege sind vorhanden,
  • alternative Hypothesen wurden widerlegt,
  • der Fehler kann reproduziert werden,
  • eine Gegenprobe verändert das Ergebnis wie erwartet,
  • die Korrektur beseitigt den ursprünglichen Fehler,
  • die Korrektur verursacht keine neuen Störungen.

Besonders starke Bestätigung

ZustandErgebnis
Fehlerzustand vorhandendefinierter Test schlägt fehl
Ursache kontrolliert entferntderselbe Test funktioniert
Ursache in Testumgebung erneut hergestelltderselbe Test schlägt wieder fehl
Ursache erneut entferntderselbe Test funktioniert wieder

In Produktionsumgebungen ist ein erneutes absichtliches Herstellen des Fehlers häufig nicht vertretbar. In diesem Fall müssen Protokolle, Vergleichssysteme und technische Plausibilität gemeinsam bewertet werden.


30. Typische Denkfehler vermeiden

DenkfehlerBeschreibungGegenmaßnahme
BestätigungsfehlerEs werden nur Belege für die Lieblingshypothese gesuchtaktiv nach widersprechenden Fakten suchen
FixierungErste Erklärung wird nicht mehr hinterfragtmindestens mehrere Hypothesen notieren
Zeitliche VerwechslungÄnderung vor Fehler wird automatisch zur Ursachetechnische Verbindung und Gegenprobe verlangen
AutoritätseffektAussage einer erfahrenen Person wird ungeprüft übernommenMesswerte und Protokolle verwenden
VerfügbarkeitseffektKürzlich erlebter Fehler wird überall vermutetaktuellen Umfang und aktuelle Fakten prüfen
AktionismusSichtbare Aktivität ersetzt systematische Diagnoseerwartetes Testergebnis vorab definieren
ErfolgsfehlschlussNach Neustart geht es, daher sei Ursache gefundenWiederherstellung und Ursachenbestätigung trennen
WerkzeuggläubigkeitAusgabe eines Werkzeugs wird als absolute Wahrheit angesehenMessgrenzen und Gegenprüfung beachten
ScheingenauigkeitPunktwert wird mit Gewissheit verwechseltPriorisierung als Hilfsmittel verwenden
GruppendenkenTeam übernimmt eine Vermutung ohne Gegenargumentgezielt eine alternative Erklärung verlangen

31. Regeln für aussagekräftige Tests

  • Möglichst nur eine Variable verändern.
  • Vorher und nachher denselben Test verwenden.
  • Erwartetes Ergebnis vorher festlegen.
  • Funktionierendes Vergleichssystem verwenden.
  • Quell- und Zielsystem dokumentieren.
  • Uhrzeit und Zeitzone dokumentieren.
  • Exakten Befehl dokumentieren.
  • Vollständige Ausgabe sichern.
  • Fehlercode nicht nur sinngemäß wiedergeben.
  • Test möglichst mehrfach reproduzieren.
  • Belastung und Nebenwirkungen berücksichtigen.
  • Nach negativer Prüfung Hypothese herabstufen.
  • Bei unklarem Ergebnis einen trennschärferen Test wählen.
  • Keine produktionsweite Änderung als ersten Test verwenden.

32. Dokumentationsvorlage für Hypothesen

Nr.HypotheseTechnische BegründungBelege dafürBelege dagegenGeplanter TestErwartetes ErgebnisRisikoPrioritätErgebnisStatus
H1
H2
H3
H4

33. Dokumentationsvorlage für einen Test

FeldEintrag
Ticketnummer
Hypothese
Testnummer
Datum und Uhrzeit
Zeitzone
Ausführende Person
Quellsystem
Quell-IP
Zielsystem
Ziel-IP
Protokoll und Port
Ausgangszustand
Exakter Befehl
Erwartetes Ergebnis
Tatsächliches Ergebnis
Vollständige Ausgabe gesichertJa / Nein
Hypothese gestütztJa / Nein / Unklar
Nebenwirkungen
Rückfall erforderlichJa / Nein
Nächster Test

Kurzcheckliste

  •  Problembeschreibung präzise formuliert
  •  Fakten und Vermutungen getrennt
  •  Betroffene und nicht betroffene Systeme berücksichtigt
  •  Mehrere plausible Hypothesen aufgestellt
  •  Für jede Hypothese technischer Zusammenhang beschrieben
  •  Unterstützende Belege notiert
  •  Widersprechende Belege notiert
  •  Erwartetes Testergebnis vorher definiert
  •  Widerlegendes Ergebnis vorher definiert
  •  Risiko und Aufwand des Tests bewertet
  •  Sichere Tests mit hohem Informationsgewinn priorisiert
  •  Funktionierendes Vergleichssystem verwendet
  •  Möglichst nur eine Variable verändert
  •  Exakten Befehl und Zeitpunkt dokumentiert
  •  Testergebnis vollständig gesichert
  •  Hypothesenstatus nach jedem Test aktualisiert
  •  Alternative Ursachen nicht vorschnell ausgeschlossen
  •  Wiederherstellung und Ursachenbestätigung getrennt
  •  Ursache durch Gegenprobe oder mehrere Belege bestätigt

Ergebnis dieses Arbeitsschrittes

Am Ende liegt keine unsortierte Sammlung von Vermutungen mehr vor, sondern ein priorisierter Prüfplan.

Jede wichtige Hypothese enthält:

  • eine konkrete mögliche Ursache,
  • einen technischen Zusammenhang,
  • unterstützende und widersprechende Fakten,
  • einen möglichst sicheren Test,
  • ein erwartetes Ergebnis,
  • ein widerlegendes Ergebnis,
  • einen dokumentierten Status.

Dadurch wird die Fehlersuche nachvollziehbar, reproduzierbar und wesentlich effizienter.

Nächste Seite:
1.6 Prüfungen kontrolliert durchführen und Ergebnisse bewerten


Offizielle Hersteller- und Standarddokumentation