Eigener Rootserver Sicherheit



Vermutlich empfinden es viele als zu aufwendig oder gleich als "falsch", aber was ich immer empfehle ist die Verwendung von Konfigurationsmanagement-Software.

Konfigurationsmanagement-Software (wie Puppet, Cfengine, Chef, gf. OPSI..^^) fütterst du mit Snippets/Manifesten, die beschreiben, wie ein System und die darauf laufenden Applikationen/Dienste konfiguriert sein sollen.

Puppet/Cfengine/Chef läuft dann regelmäßig durch und konfiuriert das System für dich - nach dem ersten Durchlauf hat das Tool dann im Idealfall alle gewünschten Pakete installiert und die dazugehörigen Konfigurationsdateien bearbeitet.

Alle weiteren Durchläufe in Zukunft sorgen dafür, dass die Konfiguration so bleibt, wie du es einmal definiert hast. Wünscht man zu einem späteren Zeitpunkt Änderungen an der Konfiguration, so passt man die Snippets/Manifeste an und nicht die eigentliche Konfigurationsdatei.

Vorteile:
  • Dieses "jemand hat mir mal geholfen und ich habe SSH für ihn freigeschalten" gibt es so nicht mehr - nach 5 oder 10 Minuten ist sein Zugang automatisch deaktiviert.
  • Menschliche Fehler bei der Konfiguration werden ausgeschlossen, sobald das Snippet/Manifest "richtig" verfasst wurde.
  • Angreifer haben es schwer - verschaffen sie sich Zugriff auf das System und ändern Konfigurationsdateien ab, so müssen sie zunächst mal lernen/wissen, dass Konfigurationsmanagement im Einsatz ist, welches sie automatisch aussperren oder ärgern kann.
  • Es wird ein Soll-Zustand für ein System definiert - Dinge, die aus der Reihe fallen, können automatisch deinstalliert oder zumindest deaktiviert werden.
  • Diese Snippets/Manifests kann ich auf weiteren Systemen verwenden. -> Zeitersparnis in Zukunft!


Nachteile:
  • Aufwand für initiale Einarbeitung
  • Aufwand für Schreiben der Snippets/Manifeste
  • Konfigurationsänderungen sind umständlicher, da sie innerhalb der Logik der Konfigurationsmanagement-Software und nicht direkt in der Konfigurationsdatei vorgenommen werden müssen.
  • Weniger Wartungsaufwand wird durch mehr Komplexität erkauft.


Grundsätzlich gilt:
Alles, was ich manuell via SSH-/RDP-Zugriff auf meinem System durchführen kann, kann auch Konfigurationsmanagement-Software für mich erledigen. In manchen Fällen muss man sich Jahre lang nicht auf einem System einloggen, da Puppet/Cfengine/Chef mein System selbstständig warten und ggf. auch upraden.


Ich arbeite seit gut 3 Jahren mit Konfigurationsmanagement-Software und muss seit dem kein System mehr manuell einrichten oder pflegen.


Für einen Neuling in Sachen Linux/Windows/Server vermutlich etwas kompliziert, aber der Aufwand lohnt!
 
Last edited by a moderator:
Vermutlich empfinden es viele als zu aufwendig oder gleich als "falsch", aber was ich immer empfehle ist die Verwendung von Konfigurationsmanagement-Software...
Aber doch nicht bei einem einzelnen Server? M.E. ist derartige Software für das Management ganzer Serverparks gedacht. Außerdem befreit das auch nicht von den erforderlichen Kenntnissen bzgl. der Konfiguration der eingesetzten Software.
 
Konfigurationsmanagement für nur einen Server? Aber na klar! Wie gesagt - etwas Aufwand, aber lohnt sich immer. Alleine schon, dass da was regelmäßig durchläuft und Stati erfasst sowie ggf. reagieren kann.

Und wenn du irgendwann mal doch eine weitere Maschine einrichten musst, kannst du zumindest Teile der Snippets wiederverwenden.

Im Projektalltag ist bei uns sowieso jeder automatisiert installierte Server mit Konfigurationsmanagement ausgestattet - wir beginnen also auch ab einem Server.


Das heisst jetzt nicht, dass es ein "Muss" ist - aber m.E. immer den Aufwand wert.

Außerdem befreit das auch nicht von den erforderlichen Kenntnissen bzgl. der Konfiguration der eingesetzten Software.
Das natürlich nicht! Wobei es für die gängigen Dienste bereits Vorlagen gibt, die man jedoch verstehen sollte. Die Verwendung dieser Vorlagen spart aber dann zumindest Zeit.
 
Richtig interessant sind da die sieben Exploits für vier Hypervisor (KVM, XEN, VMWare, Hyper-V), welche uneingeschränkten Zugriff auf den Host und alle VMs erlauben. Diese Exploits werden seit Jahren eingesetzt und die zugrundeliegenden Bugs sind noch immer nicht gefixt.
Verstehe ich dich richtig: Aus mit den genannten Techniken betriebenen VMs kannst du problemlos ausbrechen?
 
Ja, zumindest wenn mir der entsprechende Exploit die dafür jeweils zu zahlende hohe fünf- bis mittlere siebenstellige Summe wert wäre.
 
Ah, okay - ich dachte schon, er läge dir vor. Wobei er in deinen Händen vermutlich besser aufgehoben wäre als bei Kriminellen.
 
Ich konnte die Exploits in einer Demonstration sehen, das reicht mir.
Kriminelle sind für diese Exploits (noch) nicht die primären Kunden, sondern vielmehr Wirtschaft und Regierungen. Kriminelle bekommen solche Exploits meist erst dann, wenn sie verbrannt und somit quasi wertlos sind, oder "Zufallsfunde" ala Stuxnet und Flame publik werden.

Ich persönlich möchte solche Exploits gar nicht in eigenen Händen haben, aber deren Funktionen, Einsatzgebiete und, sofern möglich, entsprechende Abwehrmassnahmen interessieren mich schon.

Naja, genug Off-Topic.
 
Ja, hab schon oft genug gelesen, das aus allem möglichen VMs ausgebrochen worden ist. Nur weil es möglich ist, heißt es noch lange nicht, dass wir für denjenigen interessant genug sind.

So einen Exploit sollte man nicht für sich behalten. Entweder man macht ihn öffentlich oder verkauft ihn für viel Geld an Zwischenhändler. Alles andere könnte zu Problemen führen. Früher war das mal anders.

Interessant wäre noch zu wissen welcher Hypervisor. Falls er OpenSource ist und du den Bug kennst, wieso meldest du ihn nicht? Soll es etwa ein Feature sein?

Da immer mehr Autisten in der Softwareentwicklung eingesetzt werden, könnte sich die Lage bald auch ein bisschen verbessern.
 
Interessant wäre noch zu wissen welcher Hypervisor.
Schrieb ich bereits.

Falls er OpenSource ist und du den Bug kennst, wieso meldest du ihn nicht?
Was hätte ich davon, ausser Ärger mit Leuten mit denen man sich besser nicht anlegt? Zudem würde ich mir dadurch das Vertrauen meiner zuverlässigsten Quelle für derartige Informationen verspielen.

Soll es etwa ein Feature sein?
In manchen Fällen ja.
 
Back
Top