Security ist ein stets aktuelles Thema in der IT. Deshalb widmet sich das ADMIN-Magazin 04/2012 speziell Sicherheitsaspekten und gibt Antworten auf die Fragen: ... (mehr)

Notschalter

Der oben aufgezeigte Weg, einen Kernel-Dump zu provozieren, funktioniert nicht mehr, wenn das System nicht mehr reagiert und zum Beispiel ein Login unmöglich ist. Eine Möglichkeit ist dann das Auslösen über eine bestimmte Tasten-Kombination, der ein Sysreq-Schlüssel zugeordnet ist. Eigentlich muss der Admin nur die Tasten [Alt] , [SysRQ] und [C] gleichzeitig drücken, um das Schreiben des Kernel-Dumps auszulösen.

Aber auch hier steckt die Herausforderung im Detail. Viele Tastaturen besitzen keine separate [SysRQ] -Taste, dann übernimmt [Druck] diese Funktion. Nun kann es aber sein, dass die grafische Benutzeroberfläche genau diese Kombination abfängt und einen Screenshot vom Bildschirm macht. Dies lässt sich dann durch ein zusätzliches Betätigen der [Strg] -Taste umgehen. Manchmal erreicht man [SysRQ] auch über die Zweitbelegung mit [Fn] . So lässt sich das fast beliebig fortsetzen. Also auch hier ist sauberes Testen angesagt, damit man im Ernstfall auch die richtigen Tasten findet. Übrigens: Die Sysrequest Keys können noch viel mehr als nur den Kernel-Dump triggern (siehe Tabelle 2 ).

Tabelle 2

"Magische" Sysrequest-Tasten

Taste

Beschreibung

b

Sofortiger Reboot des Systems (ohne Umount oder Sync).

c

System-Absturz und Starten des Kernel-Dumps (falls konfiguriert).

l

Zeigt Backtrace für alle aktiven CPUs in der Konsole.

m

Schreibt Informationen über Speicher auf die Konsole.

s

Sync'ed alle eingehängten Dateisysteme.

t

Listet aktive Prozesse auf der Konsole.

w

Listet Prozesse im Zustand 'D' auf der Konsole.

Nicht selten hat der Admin aber keinen physischen Zugriff auf die Tastatur des Servers. Ein Durchreichen der gedrückten Tasten der lokalen Tastatur an den Server ist nicht unbedingt gegeben. Normalerweise kann der Admin dann aber bestimmte Tasten-Kombinationen auf andere abbilden.

Nicht-maskierbare Interrupts

Sollte dies auch fehlschlagen, bleibt noch die Möglichkeit, einen nicht-maskierbaren Interrupt (NMI/Non-Maskable Interrupt) als Vehikel zu benutzen. Zunächst konfiguriert der Admin den Linux-Kernel so, dass dieser beim Empfang eines NMI die Panik-Routine abarbeitet und damit den Kernel-Dump auslöst. Dies geht bequem über die Sysctl-Schnittstelle. Der passende Parameter lautet »kernel.unknown_nmi_panic« und muss auf »1« stehen (siehe Listing 2 ). Techniken zur Verwaltung entfernter Rechner, beispielsweise iLO (integrated LightsOut) von HP oder DRAC (Dell Remote Access Controller) von Dell erlauben das manuelle Auslösen eines NMI-Ereignisses, das dann einen Kernel-Dump anstößt. Dabei ist zu beachten, dass andere Ereignisse, beispielsweise fehlerhafte Hardware oder Firmware, ebenfalls einen NMI auslösen können. Dies zieht im Normalbetrieb nicht unbedingt einen System-Crash nach sich und taucht eventuell nur als Meldung im »syslog« auf ("Uhhuh. NMI received. Dazed and confused, but trying to continue").

Listing 2

Panik-Routine beim NMI-Ereignis

 

Die eben beschriebene Konfiguration ändert dies, und der Server bootet in jedem Fall.

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023