Luntry-Rezension. Plattform zur Erkennung von Anomalien in Echtzeit für Kubernetes / Sudo Null IT News

In der modernen Realität ist die Informationssicherheit zu einem wichtigen Aspekt im Leben von IT-Systemen geworden. Die Zahl der Angriffe wächst ständig, neue Arten von Bedrohungen entstehen. Informationslecks passieren ständig. Eine der beliebtesten Orchestrierungsplattformen, Kubernetes, ist ebenfalls allen möglichen Risiken ausgesetzt. In diesem Zusammenhang wird ein Tool benötigt, das verdächtige Aktivitäten erkennen und das richtige Sicherheitsniveau nicht nur für den Kubernetes-Cluster, sondern auch für darin ausgeführte Anwendungen gewährleisten kann. Eine solche Lösung ist ein im Inland hergestelltes kommerzielles Produkt genannt Luntry.

Luntry gehört zur Lösungsklasse Observability. Die Beobachtbarkeit ist ein Maß dafür, wie effektiv der interne Zustand eines Systems anhand seiner Ausgabe bestimmt werden kann.

Das Hauptziel von Luntry besteht darin, die Sichtbarkeit dessen zu erhöhen, was in Anwendungen passiert, die in einem Kubernetes-Cluster ausgeführt werden. Mit den von Ihnen bereitgestellten Informationen können Sie die Betriebszeit Ihrer Dienste überwachen und ihre Sicherheit verwalten, ohne Ihren Produktionszyklus zu verlangsamen.

Aus technischer Sicht ist Luntry eine Reihe von Containern, die als Kubernetes-Ressourcen dekoriert sind. Die Lösung ist ein als DaemonSet geliefertes System von Sensoren, die auf Cluster-Knoten arbeiten, Informationen sammeln und an das Backend übertragen.

Der Sensor kann dem System nichts anhaben – Luntry ist ein Nur-Lese-System. Das bedeutet, dass die Plattform die Clusterkonfiguration nicht schreibt, erstellt oder ändert. Dank der eBPF-Technologie ist die Plattform in der Lage, Systemaufrufe schnell und ohne Schaden für das System von Knoten zu entfernen und sie zum Trainieren und Bilden eines Verhaltensmodells innerhalb des Containers zu verwenden.

Luntry installieren

Es gibt mehrere Möglichkeiten, Luntry zu installieren:

  1. Verwenden des Helm-Repositorys;

  2. Lokal installieren. Diese Methode wird verwendet, wenn es unmöglich ist, ein Remote-Helm-Repository zu verwenden.

BEI amtliche Dokumentation Jede Installationsmethode wird mit den erforderlichen Parametern beschrieben. Als Nächstes betrachten wir die Installation mit dem Helm-Repository und die Verwendung des internen PostgreSQL-DBMS. Wenn die Installation für eine Produktionsumgebung geplant ist, muss ein externes DBMS verwendet werden.

Zuerst müssen Sie das Helm-Repository aktivieren. Der Befehl zum Verbinden des Luntry-Repository lautet wie folgt:

helm repo add luntry –username %USER% –password @PASSWORD@ https://registry.luntry.com/chartrepo/luntry/

%USER% ist der Benutzer für den Zugriff auf das Repository.
%PASSWORD% – Benutzerpasswort für den Zugriff auf das Repository.

Der Benutzer und das Passwort für das Repository werden vom Anbieter bereitgestellt.

Nachdem das Repository verbunden ist, können Sie mit der Installation von Luntry beginnen. Dazu wird folgender Befehl verwendet:

helm install luntry luntry/luntry -n luntry-new –create-namespace \ –set database.enabled=true \ –set admin.user=”luntry” \ –set admin.password=”luntry_pass”

-n luntry-new – luntry wird im Namespace namens luntry-new installiert.

–set database.enabled – Dieser auf true gesetzte Parameter bedeutet, dass das interne DBMS verwendet wird.

–set admin.user=”luntry” – dieser Parameter legt den Benutzernamen fest, der zur Anmeldung bei der Webschnittstelle verwendet wird. In diesem Fall wird der Benutzername auf luntry gesetzt.

–set admin.password=”luntry_pass” – dieser Parameter legt das Passwort für den Benutzer fest, der zur Anmeldung bei der Webschnittstelle verwendet wird. In diesem Fall wird der Benutzername auf luntry gesetzt.

Nachdem alle Systemkomponenten bereit sind (im Durchschnitt dauert dieser Vorgang 2-3 Minuten bis 7 Minuten), können Sie zur Luntry-Weboberfläche gehen.

Sie können den Status von Pods mit dem folgenden Befehl verfolgen:

kubectl get po -n luntry-new

Um auf die Webschnittstelle zuzugreifen, müssen Sie die IP-Adresse der luntry-visualizer-Komponente (Webschnittstellenkomponente) mit dem folgenden Befehl abrufen:

kubectl get svc luntry-visualizer -n luntry-new

Gehen Sie als Nächstes zu der in der Ausgabe angegebenen Adresse und dem angegebenen Port. In diesem Fall befindet sich das Luntry-Webinterface unter 10.107.214.110 und lauscht auf Port 32235.

Bei der ersten Anmeldung wird die Hauptseite mit Authentifizierung angezeigt. Es müssen der Login und das Passwort aus der Weboberfläche verwendet werden, die zum Zeitpunkt der Installation mit Hilfe des Helmcharts festgelegt wurden (Parameter set admin.user und set admin.password):

Programmübersicht

Luntry ermöglicht es Ihnen, mit dem System in den folgenden Modi zu arbeiten:

Cluster-Modus – Arbeiten Sie mit dem System auf Cluster-Ebene;
Microservice-Modus – Arbeiten Sie mit dem System auf der Ebene von Microservices.

Wenn Sie das Programm aufrufen, öffnet sich der Hauptabschnitt – Dashboard, das grundlegende Informationen zum Cluster sowie Informationen zu Clusterrichtlinien und Anomalien anzeigt (mehr darüber, was eine Anomalie ist, wird später beschrieben). Der Abschnitt System zeigt die Anzahl der Cluster, Knoten, installierten Sensoren, die Anzahl der Namespaces, Workloads und die Anzahl der Images an.

Betrachten Sie als Nächstes die Hauptabschnitte von Luntry:

  • Richtlinien

  • Anomalien

  • Infrastruktur

  • Kubernetes-Karte

  • Kubernetes-Netzwerk

  • Laufzeitrichtlinie

  • Anomalien

  • RBAC

Richtlinien zeigt die Anzahl der derzeit trainierten Richtlinien sowie die Anzahl der aktiven, inaktiven und archivierten Richtlinien an.

Anomalien zeigt eine Matrix von Anomalien an.

Mit Luntry können Sie automatisch erlernte Richtlinien erstellen, mit denen Sie Prozess-, Datei- und Netzwerkanomalien finden können.

Eine Anomalie ist eine Aktion, die der Container während des Richtlinientrainings/der Richtlinienvalidierung nicht ausgeführt hat.

Die Anomaliematrix zeigt die Anzahl der Anomalien jedes Typs:

Prozess – mit Prozessen verbundene Anomalien;
Datei – Anomalien im Zusammenhang mit Dateioperationen;
Netzwerk – Anomalien im Zusammenhang mit der Netzwerkinteraktion.

Infrastruktur zeigt detailliertere Informationen über den Kubernetes-Cluster und die Cluster-Knoten an:

Kubernetes Map zeigt die Netzwerkinteraktion zwischen Workloads-Komponenten an.

Wenn Sie diesen Abschnitt öffnen, erscheint ein Menü mit Filtern, in dem Sie den Namensraum, den Zeitraum, für den Sie Ereignisse anzeigen möchten, und auch Links auswählen können – Arten von Links. Links fallen in die folgenden Kategorien:

  • Alle – alle Arten von Verbindungen;

  • Internet – Verbindungen mit Entitäten im Internet;

  • Aliase – Verbindungen mit Entitäten, die vom Administrator im System definiert wurden;

  • Namensräume – Beziehungen zu Entitäten aus anderen Namensräumen, die nicht im Filter ausgewählt wurden;

  • Localhost – Interaktion auf localhost;

Das Kubernetes-Netzwerk zeigt die Netzwerkinteraktion zwischen den verschiedenen Clusterkomponenten an.

Jede Komponente ist entsprechend ausgelegt. Rechteckige Blöcke sind Namespaces. Jeder Knoten ist eine von Kubernetes definierte Ressource mit einem eigenen Symbol. Dies zeigt das übergeordnete Element der Pods, nicht die Pods selbst (Pods können 10–100 sein).

Verbindungen zwischen Knoten sind entweder tatsächlicher Verkehrsfluss (durchgezogene Linie) oder logische Verbindungen zwischen Ressourcen (gestrichelte Linie).

Laufzeitrichtlinie zeigt eine Liste von Richtlinien für Container-Images in den entsprechenden Kubernetes-Ressourcen basierend auf ihrer Vielfalt an.

Anomalies zeigt eine Liste der im Cluster gefundenen Anomalien an.

Wenn Sie eine Anomalie öffnen, werden alle detaillierten Informationen über die ausgewählte Anomalie angezeigt, einschließlich ihres Diagramms, das die auf dem Host durchgeführten Aktionen (eine Reihe von Befehlen) sowie das Datum und die Uhrzeit der Aktionen anzeigt, die dazu geführt haben die Entstehung der Anomalie:

Im Abschnitt RBAC (steht für Role-based Access Control und ist ein System zur Verteilung von Zugriffsrechten auf verschiedene Objekte in einem Kubernetes-Cluster) arbeitet man mit Subjekten (Service Accounts, Users, Groups), RBAC-Rechten und Rollen.

Der Abschnitt „Images“ zeigt eine Liste mit Container-Images an. Die Zahl neben dem Bildnamen gibt an, wie viel des Bildes derzeit verwendet wird. Sie können die Details für jedes Bild mithilfe der Dropdown-Elemente anzeigen.

Mit dem Schalter Nur verwendete Bilder können Sie nur aktive Bilder in der Liste anzeigen (Bilder, die derzeit von einem bestimmten Container verwendet werden).

Zusammenfassend können wir sagen, dass Luntry perfekt als Lösung zur Sicherung von Kubernetes-Clustern sowie Microservices geeignet ist. Dank seines umfangreichen Funktionsumfangs kann Luntry auch als Überwachungssystem für einen Kubernetes-Cluster verwendet werden. Darüber hinaus ist einer der Hauptvorteile von Luntry die inländische Entwicklung, die in der aktuellen Realität der Importsubstitution wichtig ist.

Ein UFO ist eingeflogen und hat hier einen Aktionscode für unsere Blog-Leser hinterlassen:

15 % für alle VDS-Tarife (außer Heiztarif) – HABRFIRSTVDS.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *