Schlagwort-Archive: Insights

Erkundung von Red Hat Insights — Advisor

In der Einführung in Red Hat Insights habe ich kurz umrissen, worum es sich bei dieser SaaS-Anwendung handelt und wie man RHEL-Systeme einrichtet, um den Dienst nutzen zu können. Dieser Artikel widmet sich dem Menüpunkt „Advisor“ im Insights-Dashboard.

Das Insights-Dashboard ist erreichbar unter der URL: https://cloud.redhat.com/insights/dashboard

shows-rh-insights-dashboard
Bild 1: Übersicht im Insights Dashboard

Das Dashboard gibt einen Überblick darüber, wie viele Systeme aktuell in Insights eingebunden sind, ob es Probleme mit bekannten Systemen gibt, den Patch-Status, Schwachstellen, Compliance-Status, durchgeführte Remediations und Advisor recommendations. Letztere sind Gegenstand dieses Artikels und werden im Folgenden einer genauen Betrachtung unterzogen.

Advisor recommendations bedeutet auf Deutsch soviel wie „Empfehlungen eines Ratgebers“. Der Ratgeber (Advisor) ist in diesem Fall die Firma Red Hat, welche mit Machine Learning Algorithmen, ihrer Erfahrung und dem aus Kunden-Support-Fällen gesammelten Wissen, Ratschläge zur Systemkonfiguration und Hinweise auf Konfigurationsfehler unterbreitet.

Das Dashboard in Bild 1 zeigt, dass Insights für die 13 verbundenen Systeme insgesamt 5 Empfehlungen bereithält, mit denen die Systemkonfiguration verbessert werden kann.

Über das Menü am linken Rand oder den Link im Feld der Advisor recommendations gelangt man auf die Unterseite des Ratgebers, welcher die Empfehlungen in einer Übersicht mit Bewertung darstellt (siehe Bild 2).

Show Advisor recommendations view
Bild 2: Übersicht der Advisor Recommendations

Die tabellarische Übersicht in Bild 2 zeigt die Empfehlungen mit einer kurzen Beschreibung, seit wann diese Empfehlung im Insights existiert, eine Risikobewertung, wie viele Systeme davon betroffen sind und ob ein Ansible-Playbook existiert, mit dem das beschriebene Problem in der eigenen Infrastruktur behoben werden kann.

Auf die einzelnen Funktionen der Seite aus Bild 2 werde ich im Folgenden näher eingehen, während ich eine Bewertung der angezeigten Empfehlungen vornehme.

Als erstes sticht mir der zweite Punkt ins Auge. Mit einem Klick auf den Pfeil vor der Beschreibung werden weitere Details eingeblendet (siehe Bild 3). Hier erfährt man, dass es vermutlich kein Problem darstellt, wenn man zum jetzigen Zeitpunkt kein In-Place-Upgrade auf RHEL 8 durchführt und dass ein Upgrade vermutlich ein Wartungsfenster mit Downtime benötigt. Weitere Informationen bietet der verlinkte Knowledge-Base-Artikel.

Zeigt wie ein Eintrag deaktiviert werden kann
Bild 3: Detailansicht eines Eintrags und Funktion zum Deaktivieren dieser Empfehlung

Ich persönlich bewerte die in Bild 3 ausgewählte Empfehlung als unnütz. RHEL 7 ist immer noch ein Release unter Wartung, welches Sicherheits-Aktualisierungen erhält. Dass RHEL 8 inzwischen in Version 8.2 erschienen ist und mit neuen Funktionen und Verbesserungen aufwartet, ist bekannt, aber kein Grund für übereilte Upgrades. Darüber hinaus führen wir im BITS in der Regel keine In-Place-Upgrades durch. Stattdessen installieren wir eine neue virtuelle Maschine (VM), migrieren Daten und Dienste und schalten anschließend den alten Host ab.

Zum Glück muss man sich von unbedeutenden Meldungen nicht ewig nerven lassen. Wie in Bild 3 zu sehen, bietet Insights die Möglichkeit, Meldungen einfach zu deaktivieren. Sehr schön empfinde ich dabei, dass man einen Grund angeben kann (siehe Bild 4). So wird man auch nach Wochen oder gar Monaten daran erinnert, warum man einen Eintrag deaktiviert hat.

Shows justification note dialog
Bild 4: Insights bietet die Möglichkeit einen Grund für die Deaktivierung einer Empfehlung anzugeben

Anschließend wird der Eintrag in der Übersicht nicht mehr angezeigt (vgl. Bild 5).

Show only enabled recommendations
Bild 5: Mit dem automatisch aktivierten Filter werden nur noch aktive Einträge angezeigt. Deaktivierte Elemente werden ausgeblendet.

Nach dem Deaktivieren eines Eintrags kam mir sofort die Frage in den Sinn, wo ich diese denn wohl wiederfinden kann. Dies ist über die Filtereinstellungen im oberen Bereich der Seite möglich (siehe Bild 6).

Show disabled recommendations
Bild 6: Anzeige der deaktivierten Elemente

An dieser Stelle möchte ich erwähnen, dass das Insights-Team die entsprechende Empfehlung nach meiner Rückmeldung komplett aus Insights entfernt hat. Schön, dass man als Kunde hier Gehör findet.

Bewertung der weiteren Empfehlungen

Es bleiben noch vier weitere Empfehlungen, die ich im Folgenden für meine konkrete Umgebung bewerten will. Alle vier haben gemein, dass ich vermutlich nie bewusst nach diesen Konfigurationseinstellungen gesucht hätte. Und zumindest zwei sind dabei, bei denen ein genauerer Blick lohnt. Und mit diesen fange ich an.

OS boot failure occurs due to uncertain disk discovery order when /dev/sdN format device names are used in /etc/fstab

Hier wird auf eine Konfiguration hingewiesen, die im ungünstigsten Fall den Bootvorgang eines Hosts verhindert. Eine Einstufung als „Important“ ist daher nachvollziehbar. Lässt ein System, das nicht startet, doch regelmäßig den Puls und Adrenalinspiegel eines Sysadmin steigen.

Um mir das (mögliche) Problem näher erläutern zu lassen, rufe ich aus der Detailansicht den dort verlinkten Knowledge-Base-Artikel auf. Dabei fällt mir auf, dass, obwohl ich ausschließlich RHEL 7 Systeme verwende, auf einen Artikel verlinkt wird, der nur für RHEL 6 gilt. Immerhin findet sich in diesem eine Referenz zum entsprechenden Artikel für RHEL 7. Hier hätte man gleich passend verlinken können.

Wie ist dieser Eintrag nun für uns zu bewerten?

Die beiden betroffenen Systeme sind schon einige Zeit in Betrieb und haben bereits mehrere Neustarts ohne Probleme überstanden. Das potenzielle Problem scheint sich zumindest in unserer Umgebung nicht negativ auszuwirken.

Insights bietet für diesen Fall die Erstellung eines Ansible-Remediation-Playbooks an, mit welchem das Konfigurationsproblem behoben werden kann. Da ich in diesem Fall nicht der System-Betreiber für die beiden aufgeführten Systeme bin, kann ich dies jedoch nicht ohne Rücksprache mit dem entsprechenden Kollegen zur Ausführung bringen.

Ich habe den entsprechenden System-Betreiber über dieses Ereignis benachrichtigt, ihm die mögliche Lösung weitergeleitet und ihm die Entscheidung überlassen, wie er weiter damit verfahren möchte. Dieser hat sich für den Hinweis bedankt und das Problem sofort behoben.

In einem späteren Artikel werde ich mich noch damit beschäftigen, wie ich Kollegen Zugriff auf das Insights-Dashboard gewähren kann, so dass diese ihre Systeme darin selbst verwalten und untersuchen können.

Traffic occurs or services are allowed unexpectedly when firewall zone drifting is enabled

Dies ist aus meiner Sicht wirklich ein interessanter Fund. Denn er weist darauf hin, dass womöglich Kommunikation durch die lokale Host-Firewall erlaubt wird, obwohl dies nicht beabsichtigt ist (vgl. Bild 7).

Show further details of a recommendation
Bild 7: Recommendations lassen sich über den Pfeil am Anfang einer Zeile aufklappen, um weitere Informationen zu sehen.

Auch hier liefert der verlinkte Knowledge-Base-Artikel ausführliche Informationen.

Ich werde diesen Punkt auf jeden Fall mit dem betroffenen Kollegen thematisieren. Ich denke, dass hier ein kleiner Wissenstransfer angebracht ist, da nach meiner Einschätzung auch weitere Kollegen sich des konkreten Verhaltens nicht bewusst sind. Von daher bewerte ich diesen Ratschlag als gut und sinnvoll.

Ein Punkt übrigens, der mir am Insights-Dashboard allgemein gut gefällt, ist, dass ich jederzeit anzeigen lassen kann, wie viele Systeme betroffen sind und noch wichtiger, welche dies sind (siehe Bild 8).

Show affected systems
Bild 8: Ansicht der betroffenen Systeme

Decreased security: httpd serving unencrypted (HTTP) traffic

Dies ist eine Meldung mit niedriger Risiko-Einstufung und so werden wir sie auch behandeln. Bei den betroffenen Systemen handelt es sich um Test-Systeme. Der System-Betreiber hat hier bewusst auf die Implementierung von TLS/SSL verzichtet.

Decreased security: Yum GPG verification disabled (third-party repos)

Dieser Punkt stellt sich wider Erwarten als interessant heraus. Wir betreiben eigene Repositories, welche nur innerhalb unserer Einrichtung verwendet werden. Um den Aufwand zu minimieren, verzichten wir bei diesen auf die Signierung der Pakete.

Überraschend ist jedoch der Umstand, dass bei einigen Hosts auch die GPG-Signatur-Überprüfung für ein gespiegeltes RHEL-Repo deaktiviert ist. Um dies herauszufinden, muss man sich nicht erst zu einem betroffenen System verbinden und dies untersuchen. Es genügt ein Klick auf den Hostnamen in der Liste der betroffenen Systeme (vgl. Bild 8), um zu einer Ansicht zu gelangen, die neben einer ausführlichen Beschreibung auch einen Lösungsweg anbietet.

Insights bietet nicht nur Unterstützung dabei herauszufinden, was falsch ist, sondern auch wie man das Problem abstellt. Ich werde im Laufe des Tests fortlaufend überprüfen, wie häufig Insights hier mit sinnvollen Lösungen aufwarten kann.

Slow system boot when storage devices do not support WRITE SAME command

Neu hinzugekommen und daher in obigen Bildern noch nicht enthalten ist dieser Hinweis auf ein Problem, welches die Leistung des Systems beim Bootvorgang reduzieren kann.

Insights hat diesen Incident erkannt, nachdem das betroffene System neugestartet wurde, der insights-client erneut gelaufen ist und Insights eine entsprechende Meldung in /var/log/messages gefunden hat.

Das Problem selbst ist uns seit langem bekannt. Es fällt allerdings in die Kategorie: „Gucken wir uns an, wenn wir mal Zeit haben.“ Also vermutlich nie. Zum Glück booten unsere VMs innerhalb weniger Sekunden und es wird hier kein Problem wahrgenommen.

Zwischenfazit

Ich stehe noch am Anfang unseres Tests. Die bisherigen Erkenntnisse lassen daher noch keine abschließende Bewertung zu, ob ein dauerhafter und ausgedehnter Einsatz von Insights gerechtfertigt ist.

Als erster Eindruck bleibt eine benutzerfreundliche Oberfläche, welche eine intuitive Bedienung gestattet. Der Advisor enthält bis jetzt neben einigen belanglosen Empfehlungen auch interessante Hinweise.

Einführung in Red Hat Insights

Bei Red Hat Insights handelt es sich um eine SaaS-Anwendung, welche Nutzern von RHEL-Subskriptionen kostenlos zur Verfügung steht.

Dieser Artikel bietet eine kurze Einführung in Red Hat Insights, zeigt, wie RHEL-Systeme in den Cloud-Dienst eingebunden werden und führt wichtige Dokumente und Quellen zum Dienst auf.

Hinweis: Ich teste den Dienst im Rahmen meiner beruflichen Tätigkeit im Bielefelder IT-Service Zentrum (BITS) der Universität Bielefeld. Dieser Artikel spiegelt meine persönliche Ansicht zu Red Hat Insights wider. Des Weiteren weise ich darauf hin, dass ich Mitglied der Red Hat Accelerators Community bin (siehe „Zu meiner Person“).

Was ist Red Hat Insights?

Red Hat Insights, im folgenden Text auch kurz Insights genannt, ist ein von der Firma Red Hat angebotener Cloud-Service, welcher der proaktiven Analyse von Umgebungen mit Red Hat Enterprise Linux (RHEL) dient. Als Ergebnis dieser proaktiven Analyse erhält der Systemadministrator Hinweise auf vorhandene Konfigurationsprobleme, Sicherheitslücken und Schwachstellen sowie Handlungsempfehlungen, wie diese behoben werden können.

An Insights angebundene Systeme werden vom lokal installierten Insights-Client gescannt und gegen ein Regelwerk abgeglichen, um potenzielle Risiken in Bezug auf die System-Leistung, Skalierbarkeit, Verfügbarkeit und Sicherheit zu identifizieren und zu melden. Red Hat ist dabei bestrebt, die Sammlung persönlicher Daten zu vermeiden.

Neben dem Reporting können über diesen Service auch Ansible-Playbooks zur Mitigation erkannter Probleme generiert und von einer on-premise vorhandenen Ansible Engine ausgeführt werden. Das Regelwerk wird von der Firma Red Hat gepflegt und stetig erweitert.

Seit 2019 ist Insights in allen aktiven RHEL-Subskriptionen enthalten. Somit entstehen keine zusätzlichen Kosten durch die Nutzung des Dienstes.
Insights kann in RHEL-Installation verwendet werden, unabhängig davon, ob diese on-premise, in privaten oder öffentlichen Clouds betrieben werden.

Die Produktdokumentation und eine FAQ-Sektion finden sich unter den folgenden URLs:

Wer noch keine Zugangsdaten für die vorstehend verlinkten Seiten besitzt, kann sich für eine kostenlose Red Hat Developer Subscription registrieren. Mit dieser erhält man auch Zugriff zur Red Hat Wissensdatenbank.

Ob Red Hat Insights den Mehrwert bietet, den es verspricht, versuche ich gerade in einem zeitlich und vom Umfang her begrenzten Test herauszufinden. Mit den folgenden Schritten könnt ihr euch auch selbst ein Bild davon machen.

Datenschutz und Datensicherheit

Für uns ist die Nutzung eines SaaS-Dienstes wie Insights nicht ganz unproblematisch. Wer die vorstehend verlinkte Dokumentation liest, wird schnell feststellen, dass zur Erbringung des Dienstes jeder angebundene Host eine Menge Daten sammelt und an den Cloud-Dienst überträgt. Dies ist einerseits erforderlich, damit der Service funktioniert. Denn ohne zu analysierende Daten kann es keine Hinweise und Empfehlungen geben. Anderseits kann man anhand der übertragenen Daten eine ziemlich genaue Karte der Netzwerkinfrastruktur zeichnen.

Insights selbst wird auf OpenShift Dedicated in AWS (US East) gehostet. Aktuell gibt es keinerlei Pläne, den Dienst in weiteren Regionen zu hosten.

Der insights-client bietet mit den Optionen --no-upload bzw. --offline die Möglichkeit, Daten lokal zu sammeln, ohne diese an den Cloud-Dienst zu übertragen. Als Sysadmin hat man so die Möglichkeit, im Vorfeld zu inspizieren, welche Daten gesammelt wurden. Dazu gibt es die Möglichkeit, eine Blacklist zu pflegen und zu spezifizieren, welche Daten von der Sammlung und Übertragung auszuschließen sind.

Die folgende Datei beinhaltet eine Baumansicht der Dateien und Informationen, die ein insights-client auf einem System mit installiertem MediaWiki gesammelt hat. Darunter befinden sich z.B. diverse Konfigurationsdateien und mit Hilfe verschiedener Kommandos gesammelte Informationen.

Stellt man sich den Betrieb von 100 RHEL-Servern vor, welche verschiedenste Dienste erbringen, wird jedoch deutlich, dass eine manuelle Kontrolle und Pflege individueller Blacklists für alle Systeme nicht leistbar ist. Zumal sich das Regelwerk, welches die zu sammelnden Daten bestimmt, dynamisch ändert und eine Prüfung vor jedem Upload erfolgen müsste.

Leider existiert Stand heute keine on-premise Appliance, welche die Nutzung des Dienstes innerhalb des eigenen Perimeters ermöglichen würde. Auch eine Whitelist für den insights-client existiert (noch) nicht. Letzteres würde dem Nutzer noch mehr Kontrolle über die Daten-Sammlung/-Übertragung geben. So könnte er einmal definieren, was übertragen werden darf und müsste nicht fürchten, dass bereits einige Tage später weitere Daten ohne sein Wissen gesammelt und übertragen werden.

Sowohl den Wunsch nach einer on-premise Appliance, als auch den Vorschlag zur Einführung einer Whitelist, habe ich dem Insights-Team gemeldet. Die Meldung wurde nach meinem Empfinden konstruktiv aufgenommen. Und auch wenn mein größter Wunsch nach der Appliance kurz- und mittelfristig nicht realisiert werden wird, fühle ich mich als Nutzer ernst genommen und habe das Gefühl, dass mein Feedback willkommen ist.

Red Hat beschreibt in oben verlinkter Dokumentation, dass der Dienst keine persönlichen Daten sammelt. So sind /etc/{passwd,group,shadow} sowie /home nicht in den gesammelten Daten enthalten. Auch werden keine vollständigen Logdateien an den Dienst übertragen. Generell legt Red Hat sehr viele Informationen über den Dienst offen und handelt hier sehr transparent. Das Unternehmen verhält sich in dieser Hinsicht vorbildlich.

Wenn ein Client keine Daten mehr übermittelt, werden die zuletzt von ihm empfangenen Daten nach 14 Tagen automatisch gelöscht. Wird ein Client aus Insights entfernt, werden die für diesen Client gespeicherten Daten ebenfalls gelöscht.

Nichtsdestotrotz verliert man die Gewalt über einmal übertragene Daten. Man muss dem Anbieter wie bei jedem SaaS-Dienst vertrauen, dass er sich an die eigenen Zusicherungen und Versprechen hält.

Möchtet ihr Insights in eurer Dienststelle oder eurem Betrieb testen, rate ich euch deshalb, sprecht zuerst mit der/dem Informationssicherheitsbeauftragten und Datenschutzbeauftragten und eurer/eurem Vorgesetzten über das Thema.

Trotz aller Bedenken bietet Insights die Chance, Kenntnis über Probleme und Schwachstellen zu erlangen, die bisher unbekannt sind und ein größeres Sicherheitsrisiko darstellen als die regelmäßige Datenübertragung an Insights. Ob der Nutzen überwiegt, muss allerdings jede Organisation für sich selbst beurteilen.

Einrichtung von Red Hat Insights auf Red Hat Enterprise Linux

Die folgenden Schritte setzen voraus, dass die verwendeten RHEL-Systeme registriert sind und über eine gültige Subskription verfügen.

Manuelle Einrichtung

Um den vollen Funktionsumfang von Insights nutzen zu können, werden die folgenden Pakete installiert:

$ sudo yum -y install openscap-scanner scap-security-guide insights-client

Die Installation des OpenSCAP-Scanners und des SCAP-Security-Guides sind optional. Diese Pakete sind erforderlich, um den Compliance Service nutzen zu können. Da der insights-client in RHEL 8 bereits integriert ist, muss dieser hier nicht gesondert installiert werden.

Um die Einrichtung des insights-client abzuschließen und gesammelte Daten an den SaaS-Dienst zu übertragen, genügt es, das folgende Kommando auszuführen:

$ sudo inights-client --register

Automatisierte Einrichtung mit Ansible

Um die notwendigen Schritte zur Einrichtung nicht auf jedem Host manuell ausführen zu müssen, kann folgendes Ansible-Playbook verwendet werden.

---
- hosts: rh-insights-poc # Gruppe aus dem Ansible-Inventory
  tasks:

  - name: Make sure required packages are present
    yum:
      name:
        - openscap-scanner
        - scap-security-guide
        - insights-client
      state: latest

  - name: Register insights-client
    command: insights-client --register

Für meine Zwecke reicht obiges Playbook. Alternativ gibt es auf Ansible Galaxy eine Rolle mit deutlich größerem Funktionsumfang: redhatinsights.insights-client

Sind die Systeme eingerichtet und registriert, ist es an der Zeit, sich unter der URL https://cloud.redhat.com einzuloggen und das Insights Dashboard zu erkunden.

Startseite unter https://cloud.redhat.com

An dieser Stelle lasse ich euch vorerst mit dem Dashboard allein. Im nächsten Artikel dieser kleinen Reihe werde ich mich mit dem Inisghts Advisor befassen.