ADMIN

2022

11

2022-10-27T12:00:00

Software-definierte Infrastrukturen

PRAXIS

070

Tipps, Tricks und Tools

Tipps

Tricks

Tools

Tipps, Tricks und Tools

für den IT-Administrator

Redaktion IT-Administrator

Veröffentlicht in Ausgabe 11/2022 - PRAXIS

In jeder Ausgabe präsentiert Ihnen IT-Administrator Tipps, Tricks und Tools zu den aktuellen Betriebssystemen und Produkten, die in vielen Unternehmen im Einsatz sind. Wenn Sie einen tollen Tipp auf Lager haben, zögern Sie nicht und schicken Sie ihn per E-Mail an tipps@it-administrator.de.

Neben der klassischen IT-Infrastruktur monitoren wir mit Paessler PRTG Hosted Monitor unsere Produktionsumgebung. Diese läuft mittlerweile in weiten Teilen automatisiert ab, sodass Protokolle wie OPC UA, Modbus und MQTT für uns zum Arbeitsalltag gehören. Welche Möglichkeiten haben wir, mit dem cloudbasierten PRTG Hosted Monitor auch die Datenübertragung der einzelnen IIoT-Komponenten zu überwachen?
Hier empfiehlt sich im ersten Schritt, den sogenannten MQTT-Broker zu überwachen. Dieser übernimmt eine zentrale Aufgabe innerhalb der OT-Infrastruktur. Er verwaltet alle verbundenen MQTT-Clients und ist dafür verantwortlich, die komplette Nachrichtenübermittlung zwischen den einzelnen Geräten zu managen. Das bedeutet, die Maschinen kommunizieren nie direkt miteinander, sondern stets über den eingebundenen MQTT-Broker. Mit dem Sensor "MQTT Round Trip" kann PRTG den MQTT-Broker monitoren. Der Sensor prüft, ob sich eine Verbindung zum Broker herstellen lässt, ob er Mitteilungen annimmt oder an einen passenden Subscriber weiterleitet. Er überwacht außerdem die Round-Trip-Zeit (RTT) und den Round-Trip-Status der Mitteilung sowie die PUBLISH- und SUBSCRIBE-Verbindungszeit.
Für detaillierte Broker-Statistiken und zur Überwachung von MQTT-Topics eignet sich der eigens dafür vorgesehene Sensor "MQTT Statistiken". Das Angebot der MQTT-Sensortypen rundet der Sensor "MQTT Subscribe Custom" ab. Diesen richten Sie jeweils pro MQTT-Topic ein. Er überwacht dann die numerischen Werte von empfangenen JSON-Daten. Mit diesen drei Probes können Sie praktisch alles monitoren, was in Ihrem Netzwerk mit MQTT zu tun hat. Im Paessler-Blog finden Sie verschiedene Video- Tutorials [Link-Code: https://blog.paessler.com/our-new-mqtt-sensors-video-tutorials], die die Einrichtung und den Betrieb der einzelnen MQTT-Sensoren im Detail zeigen.
Monitoring
Neben der klassischen IT-Infrastruktur monitoren wir mit Paessler PRTG Hosted Monitor unsere Produktionsumgebung. Diese läuft mittlerweile in weiten Teilen automatisiert ab, sodass Protokolle wie OPC UA, Modbus und MQTT für uns zum Arbeitsalltag gehören. Welche Möglichkeiten haben wir, mit dem cloudbasierten PRTG Hosted Monitor auch die Datenübertragung der einzelnen IIoT-Komponenten zu überwachen?
Hier empfiehlt sich im ersten Schritt, den sogenannten MQTT-Broker zu überwachen. Dieser übernimmt eine zentrale Aufgabe innerhalb der OT-Infrastruktur. Er verwaltet alle verbundenen MQTT-Clients und ist dafür verantwortlich, die komplette Nachrichtenübermittlung zwischen den einzelnen Geräten zu managen. Das bedeutet, die Maschinen kommunizieren nie direkt miteinander, sondern stets über den eingebundenen MQTT-Broker. Mit dem Sensor "MQTT Round Trip" kann PRTG den MQTT-Broker monitoren. Der Sensor prüft, ob sich eine Verbindung zum Broker herstellen lässt, ob er Mitteilungen annimmt oder an einen passenden Subscriber weiterleitet. Er überwacht außerdem die Round-Trip-Zeit (RTT) und den Round-Trip-Status der Mitteilung sowie die PUBLISH- und SUBSCRIBE-Verbindungszeit.
Für detaillierte Broker-Statistiken und zur Überwachung von MQTT-Topics eignet sich der eigens dafür vorgesehene Sensor "MQTT Statistiken". Das Angebot der MQTT-Sensortypen rundet der Sensor "MQTT Subscribe Custom" ab. Diesen richten Sie jeweils pro MQTT-Topic ein. Er überwacht dann die numerischen Werte von empfangenen JSON-Daten. Mit diesen drei Probes können Sie praktisch alles monitoren, was in Ihrem Netzwerk mit MQTT zu tun hat. Im Paessler-Blog finden Sie verschiedene Video- Tutorials [Link-Code: https://blog.paessler.com/our-new-mqtt-sensors-video-tutorials], die die Einrichtung und den Betrieb der einzelnen MQTT-Sensoren im Detail zeigen.
Der Sensortyp MQTT Round Trip in PRTG Hosted Monitor liefert Informationen zum MQTT-Broker.
(Paessler/ln)
Für viele weitere Tipps und Tricks rund um das Thema Monitoring mit PRTG bietet Paessler unter [Link-Code: https://www.youtube.com/c/PRTGNetworkMonitorByPAESSLER?utm_source=itadministrator&utm_medium=referral&utm_campaign=tipps] auch einen Youtube-Kanal mit Tutorials an.
Cloud
Unsere Betriebsabläufe verlagern sich zunehmend nach AWS, weswegen wir dort immer mehr Anwendungen bereitstellen. Die benötigten Ressourcen müssen wir regelmäßig dem jeweiligen Bedarf anpassen und Veränderungen nachvollziehen können. Wie lässt sich unsere Infrastruktur einfach in der Cloud verwalten?
Viele IT-Teams nutzen mittlerweile Infrastructure-as-Code, um ihre Ressourcen in der AWS-Cloud zu modellieren, bereitzustellen und zu verwalten. Hilfreich ist in diesem Zusammenhang der Einsatz des AWS Cloud Development Kits (AWS CDK). Dabei handelt es sich um ein Framework, das in Code definierte Infrastruktur in CloudFormation-Vorlagen transpiliert und dann die Ressourcen automatisch erstellt, aktualisiert und aufräumt. Mit dem AWS CDK lassen sich zuverlässige und skalierbare Anwendungen in der Cloud in der jeweils gewünschten Programmiersprache erstellen und bearbeiten. So können Sie Ihre Cloud-Anwendungsressourcen unter Verwendung vertrauter Programmiersprachen definieren – beispielsweise mit Type-Script, Python, Java, C# und Go.
Für Ihre ersten Schritte mit dem AWS CDK installieren Sie zunächst den Node Package Manager (npm) global mit folgendem Befehl:
npm install -g aws-cdk
Überprüfen Sie dann mit cdk -version über die Befehlszeile, ob die Installation erfolgreich war. Bootstrappen Sie nun Ihr AWS-Konto. Dabei wird ein Amazon-S3-Bucket erstellt, der für die Bereitstellung der CloudFormation-Vorlagen und andere Ressourcen zum Einsatz kommt:
cdk bootstrap aws://<Ihre Account-ID>/<Region>
also beispielsweise cdk bootstrap aws:// 123456789012/eu-central-1. Daraufhin sollten Sie die folgende Rückmeldung bekommen:
# Output
Bootstrapping environment, aws://123456789012/eu-central-1
CDKToolkit: creating CloudFormation changeset...
Environment aws://123456789012/eu-central-1 bootstrapped
Wenn Sie weitere Konten und Regionen verwenden möchten, führen Sie das Bootstrapping für diese erneut durch. Erstellen Sie jetzt ein neues CDK-Projekt mithilfe der CDK-CLI. Verwenden Sie cdk init, um ein neues Projekt zu initialisieren (in diesem Fall in TypeScript):
mkdir cdk-demo
cd cdk-demo
cdk init --language typescript
In Ihrem CDK-Projekt befindet sich nun ein Beispiel zum Erstellen einer Ressource für Amazon Simple Email Service (SES). Dabei handelt es sich um einen verwalteten Dienst zum Versenden von E-Mails. Den Beispielcode können Sie bedenkenlos entfernen. Sie sind nun in der Lage, Ihren ersten CDK-Code für die Infrastruktur zu schreiben.
(AWS/ln)
Nicht zuletzt durch Microsoft Teams ist mitarbeitergesteuerte Kollaboration bekannt. Wir wollen unseren Anwendern gestatten, für die Projektentwicklung, die gemeinsame Administration von Infrastruktur oder den Betrieb von Anwendungen in Azure Externe einzuladen. Was müssen wir hierfür tun?
Zunächst einmal müssen Sie Azure AD B2B erlauben. In Azure AD schalten Sie über die Punkte "External Identities" und "External collaboration settings" die gewünschte Einstellung in "Guest invite restrictions" ein. Wenn Sie den eigenen Mitarbeitern freie Hand lassen wollen, Gäste aber nicht selbst Einladungen für Ihren Tenant aussprechen können sollen, finden Sie das entsprechende Setting bei "Member users and users assigned to specific admin roles can invite guest users including guests with member permissions". Die Einstellungen sind mit steigender Restriktion aufgeführt.
Für direkte Projektkollaboration in Azure können Besitzer von Subscriptions über "Access control (IAM) / + Add" und "Add role assignment" Kollaborateure direkt zu Azure einladen. Nach Auswahl der Zielrolle in "Role" holen Sie im Reiter "Members" die externen Gäste ins Boot. Selbst wenn die Externen noch nicht im AAD existieren, können Sie via "+ Select members" unter Eingabe ihrer E-Mail-Adresse Gäste einladen. Nach dem Speichern und dem Schritt "Review + assign" verschickt Azure eine Einladung an den Gast. Nach Annahme wird das Gastkonto erzeugt und die Rollenzuweisung für Kollaboration angelegt.
Self-Service für Kollaboration in Azure – bei Rollenzuweisungen können Nutzer B2B-Gäste einladen.
(ln)
Im Sinne der Transparenz und leichteren Wartung sollten Windows-Berechtigungen ja nicht direkt zugewiesen, sondern über die Mitgliedschaft in Sicherheitsgruppen gesteuert werden. Doch was ist der beste Weg, diese Gruppen zu strukturieren?
Berechtigungsgruppen sollten Einheitlichkeit und Klarheit schaffen sowie die Verwaltung von Benutzern durch die Bündelung von Rechten vereinfachen. Der von Microsoft empfohlene Weg, diese Ziele umzusetzen, ist das AGDLP-Prinzip. Unter dieser Abkürzung versteht man folgende Vorgehensweise: Accounts (A) werden globalen Gruppen (G) zugewiesen, die unterschiedliche Geschäftsrollen beziehungsweise Berechtigungsprofile abbilden. Diese globalen Gruppen wiederum sind Mitglied in domänenlokalen Gruppen (DL), die jeweils die Berechtigung respektive Permission (P) auf eine Ressource enthalten. Für die Umsetzung über mehrere Domänen hinweg wird die Struktur um eine universale Gruppe (U) zu AGUDLP erweitert.
Um von den Vorteilen von AGDLP zu profitieren, ist die konsequente Umsetzung entscheidend. Für jede Berechtigung müssen Sie eine eigene Gruppe mit eindeutigem Namen anlegen (zum Beispiel Fileserver-Sales-Ordnerleserechte), die nur für diesen spezifischen Zweck zum Einsatz kommt. Werden Gruppen wiederverwendet oder um zusätzliche Rechte ergänzt, lassen sich die effektiven Rechte von Benutzern nicht mehr anhand der Gruppenbezeichnungen erfassen. Setzen Sie AGDLP händisch um, sorgt das Anlegen neuer Berechtigungsgruppen und die strenge Einhaltung von Namenskonventionen für einigen Aufwand in der IT-Abteilung. Die Implementierung lässt sich über ein passendes Werkzeug, das das Rollenkonzept hinter AGDLP automatisiert abbildet, erheblich erleichtern.
(tenfold/ln)
Weitere Tipps zum Thema Active Directory finden Sie im IAM-Blog von tenfold unter https://tenfold-security.com/ratgeber/
Unter Linux ist das Kommandozeilentool sha256sum zur Integritätsprüfung von Dateien verbreitet. Nach einem Download einer Datei lässt sich damit überprüfen, ob die Datei fehlerfrei heruntergeladen und nicht verändert wurde. Gibt es so etwas auch für Windows?
Unter Windows steht dazu in der PowerShell das Get-Filehash-Cmdlet zur Verfügung. Wechseln Sie nach dem Start einer PowerShell-Konsole in das gewünschte Verzeichnis und führen Sie mit Get-Filehash <Dateiname> das Kommando zum Erstellen einer SHA256-Prüfsumme folgendermaßen aus: Das folgende Beispiel zeigt die Prüfsumme eines UEFITool-Downloads:
PS C:\Users\micro> cd .\Downloads\
PS C:\Users\micro\Downloads> Get-Filehash .\UEFITool.exe
Neben SHA256 kann das Cmdlet mittels des Parameters "-Algorithm" Hashwerte auf Basis der Algorithmen SHA1, SHA256, SHA384, SHA512 und MD5 erstellen. Eine vollständige Dokumentation des Kommandos stellt Microsoft unter [Link-Code: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/get-filehash?view=powershell-7.2/] bereit.
Thomas-Krenn/ln
Viele weitere Tipps und Tricks zum Servermanagement, Virtualisierung und Linux finden Sie im Thomas-Krenn-Wiki unter http://www.thomas-krenn.com/de/wiki/Hauptseite/
Tools
Die Sicherheit des lokalen Active Directory sowie der Authentifizierung via Azure AD ist elementar, um die Kompromittierung des Netzwerks zu vermeiden. Doch die Angriffe auf diese Dienste werden immer ausgefeilter und der IT-Verantwortliche muss die wichtigsten Indikatoren kennen, um zu wissen, ob aktuell ein Angriff stattfindet oder bereits ein Einbruch in den Verzeichnisdienst stattgefunden hat. Die freie Software Purple Knight ordnet Sicherheitsindikatoren vor und nach einem Angriff den MITRE-ATT&CK- und ANSSI-Frameworks zu und bietet eine Gesamtrisikobewertung zusammen mit der Wahrscheinlichkeit eines Eindringens und spezifischen Abhilfemaßnahmen.
Admins können Purple Knight verwenden, um AD und Azure AD proaktiv gegen neue Taktiken und Techniken von Angreifern zu schützen, und zwar mit einer integrierten Bedrohungsmodellierung, die ein Team von Sicherheitsexperten ständig aktualisiert.
Um Sicherheitslücken wie mangelhafte Konfigurationen und Policies zu erkennen, fragt das Werkzeug die AD-Umgebung ab und führt eine Reihe von nicht-invasiven Tests gegen die häufigsten und erfolgreichsten Angriffsvektoren durch, die mit bekannten Security-Frameworks wie dem MITRE ATT&CK korrelieren. Die Software benötige hierzu weder eine spezielle Installation noch besondere Berechtigungen. Das Tool zeige anhand von fünf zentralen Sicherheitsaspekten des AD (Delegation, Account-Sicherheit, AD-Infrastruktur, Group-Policy- und Kerberos-Sicherheit) Indikatoren für die Zeit vor, während und nach einem Angriff an. Nach Abschluss der Analyse erhält der Admin einen Bericht, der eine Gesamtrisikobewertung, die ermittelten Indikatoren für die Angreifbarkeit und die Wahrscheinlichkeit einer Kompromittierung sowie eine Empfehlung konkreter Maßnahmen gegen Schwachstellen beinhaltet.
Die Zeit, die Purple Knight für einen Scan benötigt, hängt von der Größe und Komplexität der Active-Directory-Umgebung und den durchgeführten Scans ab. In der Regel dauert ein Scan einer Gesamtstruktur einige Minuten. Zusätzliche Zeit erfordert ein Zerologon-Scan, bei dem RPC ausgeführt wird, um alle Domänencontroller zu überprüfen.
Dieser Securityscan mit Purple Knight ermittelte ein recht sicheres lokales AD, während im Azure AD einige Arbeit auf den Admin wartet.
(jp)
Link-Code: https://www.purple-knight.com/de/
Freie Software beschränkt sich schon lange nicht auf kleine Tools, sondern ist auch in der Lage, große Infrastrukturen zu verwalten. Diese Fähigkeit ist besonders wertvoll, wenn in solchen Umgebungen unterschiedliche Betriebssysteme und diverse Hardware in Clustern oder Clouds zu managen sind. Das von IBM initiierte Open-Source-Werkzeug xCAT verspricht dem IT-Verantwortlichen umfassende Kontrolle über Cluster, HPC-Umgebungen, Clouds und sogar ganze Rechenzentren.
Dabei stellt xCAT ein skalierbares, agiles Framework dar, das die Verwaltung einer sehr breiten Palette an Infrastrukturen ermöglicht. Dieses wie erwähnt sehr mächtige Werkzeug im Detail darzustellen, sprengt natürlich den Rahmen dieser Rubrik, weshalb der zugehörige Admin Guide [Link Code https://xcat-docs.readthedocs.io/en/latest/guides/admin-guides/index.html/] die erste Anlaufstelle sein sollte. Entsprechend ist es uns hier nur möglich, einen kleinen Überblick aller verfügbaren Features zu geben.
Im Zentrum der Aufmerksamkeit von xCAT steht das Erzeugen und das Verwalten von Clustern. Diese kann das Tool von Grund auf hochziehen und die Bare-Metal-Provisionierung ist "diskful", "diskless" und "statelite" möglich. Beeindruckend ist an dieser Stelle, dass xCAT Cluster mit über 9000 Nodes in HPC-Umgebungen unterstützt – aber natürlich auch kleinere Cluster betreiben kann. Dabei erlaubt die Software, Linux-Betriebssysteme, Datenbanken oder aber VMware oder KVM auszurollen.
Ebenso mit an Bord sind Werkzeuge zur Inventarisierung der Umgebung sowie zur Verwaltung der Hardware. Mit Letzteren lassen sich beispielsweise Firmware-Updates durchführen oder das Powermanagement der Maschinen ansprechen. Für derlei Zugriffe unterstützt xCAT die Protokolle IPMI, HMC, FSP und OpenBMC. Läuft die gewünschte Umgebung dann, stehen Werkzeuge zum Konfigurationsmanagement bereit. Diese eignen sich für die Wartung der im Cluster zum Einsatz kommenden Anwendungen ebenso wie zum Lifecycle-Management der verwendeten Betriebssystem-Images. Nicht fehlen darf in solchen Umgebungen die Administration der Netzwerkverbindungen, wozu xCAT ebenfalls ein ganzes Arsenal an Tools bereitstellt.
(jp)
Link-Code: https://github.com/xcat2/
Ein Bild sagt mehr als tausend Worte: Screenshots von Linux-Desktops – beispielsweise in Howtos oder Forenbeiträgen – enthalten oft ein Terminal mit Systeminformationen. Manchmal ist das nur Dekoration, um leere Fläche zu füllen, oft aber liefert das praktische Zusatzinformationen. Das Konsolentool neofetch präsentiert die gewählten Informationen samt einem ASCII-Logo der Distribution. Dank einiger Optionen lässt sich die Ausgabe nach Bedarf anpassen.
Das freie neofetch zeigt Informationen dazu, welche Desktop-Umgebung oder welcher Windowmanager zum Einsatz kommt, aber auch zur Hardware (Prozessor, Arbeitsspeicher und Grafikchip). Das Tool liefert diese Infos nebenbei, indem Admins seine Ausgabe in Screenshots integrieren. Meist ist neofetch nicht vorinstalliert, doch die Paketquellen großer Distributionen enthalten das Tool in der Regel. So lässt es sich unter Ubuntu beispielsweise einfach via sudo apt install neofetch herunterladen und einrichten. Ohne weitere Konfiguration liefert neofetch bereits eine sinnvolle Standardausgabe.
Doch nicht nur die angezeigten Informationen, sogar die Optik lässt sich detailliert anpassen. Die Manpage liefert mit man neofetch einen Überblick und neofetch --help listet die möglichen Parameter auf. Einfacher ist es allerdings, die Konfigurationsdatei zu bearbeiten, die beim ersten Start des Programms angelegt wird. Sie ist gut dokumentiert und liefert auch Beispiele. Ganz oben in dieser Datei steht, was die Anzeige umfassen soll. Hier lassen sich nicht gewünschte Infos einfach auskommentieren, andere sind bereits hinterlegt und lassen sich durch das Entfernen von "#" am Zeilenanfang einblenden. Statt des ASCII-Logos lässt sich ein Bild einbinden und selbst Infos vom laufenden Mediaplayer kann neofetch anzeigen, um Screenshots nach Belieben zu verschönern.
Mit neofetch lassen sich wichtige Informationen automatisch in Linux-Screenshots ebenso integrieren wie hübsch anzusehende Bilder.
 (jp)
Link-Code: https://github.com/dylanaraps/neofetch/