IT-Doku Agents

Leichtgewichtige Skripte für Windows, macOS und Linux – sammeln automatisch Hardware, Software, Updates und Monitoring-Daten. Kein kompiliertes Binary, jede Zeile Code ist einsehbar.

Warum Skripte statt .exe?

Offener Quellcode – bewusste Entscheidung

Als IT-Dienstleister installieren Sie Software auf den Systemen Ihrer Kunden. Ein kompiliertes Binary (.exe, .msi) ist eine Blackbox – Sie können nicht sehen, was es tut. Bei einem PowerShell- oder Shell-Skript schon:

100 % transparent

Jede Zeile Code ist lesbar – keine versteckten Funktionen, keine Telemetrie, kein Phoning-Home außer zum eigenen Portal.

Audit-fähig

Compliance-Prüfer, Kunden und Datenschutzbeauftragte können den Quellcode einsehen, bevor etwas ausgerollt wird.

Anpassbar

Bei Bedarf können Sie das Skript für Ihre Umgebung anpassen – zusätzliche Checks, andere Pfade, spezielle Logik.

Keine Abhängigkeiten

PowerShell ist in Windows integriert, Bash in macOS und Linux. Kein Runtime-Installer, kein .NET-Framework, kein Java.

Kein SmartScreen / Gatekeeper

Unbekannte .exe-Dateien werden von Windows Defender SmartScreen blockiert. Signierte Zertifikate kosten 200–400 €/Jahr. Skripte haben dieses Problem nicht.

Sofortige Updates

Kein Build-Prozess nötig. Skript ändern → Auto-Update verteilt die neue Version an alle Agents.

Warum PowerShell / Bash? PowerShell (Windows) und Bash (macOS/Linux) sind die nativen Scripting-Sprachen des jeweiligen Betriebssystems. Sie sind auf jedem System vorinstalliert, werden vom Hersteller gepflegt und haben vollen Zugriff auf System-APIs – ohne zusätzliche Laufzeitumgebung.

Unterstützte Plattformen

🪟

Windows

Datei: ITDokuAgent.ps1

Sprache: PowerShell 5.1+

Läuft als: SYSTEM (Scheduled Task)

Deployment: GPO, manuell oder Download

Config: C:\ProgramData\ITDokuAgent\

🍎

macOS

Datei: ITDokuAgent.sh

Sprache: Bash

Läuft als: LaunchDaemon (root) oder LaunchAgent (User)

Deployment: Manuell oder MDM

Config: /Library/Application Support/ITDokuAgent/

🐧

Linux

Datei: ITDokuAgent-Linux.sh

Sprache: Bash

Läuft als: systemd Service + Timer (root)

Deployment: Manuell oder Ansible/Puppet

Config: /etc/itdoku-agent/

Distros: Ubuntu, Debian, CentOS, RHEL, Rocky, Fedora, openSUSE, Arch

Was sammelt der Agent?

Bei jedem Checkin (Standard: alle 15 Minuten) übermittelt der Agent folgende Daten an das Portal:

Hardware

CPU, RAM, Hersteller, Modell, Seriennummer, BIOS, Virtualisierung

Netzwerk

IP, MAC, DNS, Gateway, DHCP, Geschwindigkeit – pro Interface

Speicher

Festplatten, Partitionen, Kapazität, Belegung, Dateisystem

Software

Installierte Programme mit Version, Herausgeber und Installationsdatum

Dienste

Windows-Dienste, LaunchDaemons (macOS), systemd-Units (Linux) mit Status

Updates

Verfügbare und installierte Updates, KB-Nummern, Kategorien (Security, Critical, ...)

Zusätzlich meldet der Agent seine eigene Version (SHA256-Hash) für das automatische Update-System.

Agent installieren

Die Installation erfolgt in drei Schritten: herunterladen, registrieren, als Dienst installieren.

Windows (PowerShell)

1

Herunterladen

Über die API oder den Admin-Bereich:
GET /api/agent/download-agent?os=windows

2

Registrieren

Mit dem Kunden-Token (aus dem Portal) einmalig registrieren:

.\ITDokuAgent.ps1 -ApiUrl "https://ihr-portal.de" -CustomerToken "TOKEN" -Register

Das Gerät erscheint sofort in der Geräteliste. Der Agent erhält einen eigenen agent_token.

3

Als Dienst installieren

Erstellt einen Windows Scheduled Task, der alle 15 Minuten läuft:

.\ITDokuAgent.ps1 -ApiUrl "https://ihr-portal.de" -AgentToken "TOKEN" -Install

macOS (Bash)

1

Herunterladen & Registrieren

curl -O https://ihr-portal.de/api/agent/download-agent?os=macos
chmod +x ITDokuAgent.sh
./ITDokuAgent.sh --api-url "https://ihr-portal.de" --customer-token "TOKEN" --register
2

Als LaunchDaemon installieren (systemweit)

sudo ./ITDokuAgent.sh --api-url "https://ihr-portal.de" --agent-token "TOKEN" --install

Ohne sudo wird ein User-LaunchAgent installiert (nur bei Benutzer-Login aktiv).

Linux (Bash)

Identisch zu macOS, aber mit ITDokuAgent-Linux.sh und systemd als Dienst-Manager.

curl -O https://ihr-portal.de/api/agent/download-agent?os=linux
chmod +x ITDokuAgent-Linux.sh
./ITDokuAgent-Linux.sh --api-url "https://ihr-portal.de" --customer-token "TOKEN" --register
sudo ./ITDokuAgent-Linux.sh --api-url "https://ihr-portal.de" --agent-token "TOKEN" --install

GPO-Deployment (Windows)

Für große Umgebungen: Deploy-ITDokuAgent.ps1 als Computer-Startup-Skript in einer Gruppenrichtlinie hinterlegen. Das Skript registriert und installiert den Agent automatisch beim nächsten Neustart — ohne manuelle Interaktion.

Tipp: Der Download-Endpoint /api/agent/download-agent ist öffentlich zugänglich (kein Token nötig). Das Skript enthält keine Zugangsdaten – die werden erst bei der Registrierung mit --customer-token übergeben.

Task-System

Das Portal kann dem Agent Aufgaben zuweisen, die beim nächsten Checkin abgeholt und ausgeführt werden:

Agent-Update

Neues Skript herunterladen, Hash prüfen, Backup erstellen, austauschen

Windows-Update Scan

Verfügbare Updates scannen und melden (Security, Critical, Driver, etc.)

Windows-Update Installation

Gezielt einzelne KBs oder kategoriebasiert installieren

Skript ausführen

PowerShell, Batch, VBS (Windows) oder Bash, Python (macOS/Linux)

Dienst neustarten

Windows-Dienst stoppen und starten (z.B. Spooler, SQL Server)

Software installieren / deinstallieren

Via Chocolatey, MSI, EXE oder PowerShell (Windows)

Jede Aufgabe meldet Status und Ergebnis zurück: ausstehendwird ausgeführtabgeschlossen / fehlgeschlagen.

Monitoring-Checks

Der Agent führt konfigurierbare Monitoring-Checks lokal aus und meldet Ergebnisse ans Portal. Checks werden im Geräte-Monitoring-Tab konfiguriert.

Festplattenspeicher

Freier Speicher in % oder GB pro Laufwerk/Partition

Dienst-Überwachung

Prüft ob ein Dienst läuft oder gestoppt ist

Datei-Anzahl

Anzahl Dateien in einem Ordner überwachen (rekursiv, mit Filter)

Datei-Alter

Alter einer Datei prüfen (Minuten/Stunden/Tage) – ideal für Backup-Überwachung

Alle Checks funktionieren auf allen drei Plattformen. Für netzwerkbasierte Geräte (Drucker, Switches, NAS) gibt es SNMP-basierte Checks über den Network Worker.

Automatische Updates

Agent-Updates werden zentral über das Portal gesteuert – nicht automatisch, sondern kontrolliert vom Administrator.

1

Versionserkennung

Der Agent berechnet bei jedem Checkin einen SHA256-Hash seines eigenen Skripts und meldet ihn ans Portal. Das Portal vergleicht mit dem aktuellen Hash auf dem Server.

2

Admin löst Update aus

Unter Software → Agent-Updates sehen Sie alle Agents mit Status (Aktuell / Veraltet). Per Klick auf „Aktualisieren" oder „Alle veralteten aktualisieren".

3

Agent führt Update aus

Beim nächsten Checkin lädt der Agent das neue Skript herunter, prüft den Hash, erstellt ein Backup des alten Skripts und ersetzt es. Ergebnis wird ans Portal gemeldet.

Fernwartung (MeshCentral)

Der Agent installiert automatisch den MeshCentral-Agent für Remote-Zugriff (Desktop, Terminal, Dateimanager). Dies geschieht bei jedem Checkin:

  • Prüft ob MeshCentral bereits installiert und aktiv ist
  • Wenn nicht: lädt die passende Binary herunter (Windows, macOS Universal, Linux x64/ARM64)
  • Installiert mit -fullinstall als Systemdienst
  • Gerät erscheint automatisch im Fernwartungs-Modul

Mit dem Parameter --skip-mesh-agent kann die MeshCentral-Installation übersprungen werden.

Sicherheit

Pro-Gerät-Token

Jedes Gerät erhält bei Registrierung einen eigenen 64-Zeichen-Token. Kein gemeinsames Passwort.

HTTPS-Pflicht

Kommunikation nur über verschlüsselte Verbindung (TLS).

Keine Secrets im Skript

Download-Endpoint ist öffentlich. Zugangsdaten werden erst bei der Registrierung übergeben und lokal gespeichert.

Hash-verifizierte Updates

Bei jedem Update wird der SHA256-Hash des neuen Skripts geprüft bevor es ersetzt wird.

ⓘ Praxisbeispiel: Neuen Kunden mit 25 PCs onboarden

Szenario: Ein neuer Kunde mit 25 Windows-Arbeitsplätzen soll ins Portal aufgenommen werden.

  1. 1. Kunden im Portal anlegen und den Kunden-Token kopieren.
  2. 2. Deploy-ITDokuAgent.ps1 mit API-URL und Token in einer GPO als Computer-Startup-Script hinterlegen.
  3. 3. Beim nächsten Neustart registriert sich jeder PC automatisch. Nach 15 Minuten erscheinen Hardware, Software und Netzwerk-Daten im Portal.
  4. 4. MeshCentral-Agent wird automatisch mitinstalliert → Fernwartung sofort verfügbar.
  5. 5. Monitoring-Checks konfigurieren (Festplatte, Dienste) und die erste PDF-Dokumentation exportieren.

Tipp: Sie können das Skript vor der Installation öffnen und lesen – jede Funktion ist kommentiert. Wenn ein Kunde fragt „was installiert ihr auf unseren Rechnern?", zeigen Sie einfach das Skript.

Hinweis: Auf Windows-Systemen muss die PowerShell-Ausführungsrichtlinie mindestens auf RemoteSigned stehen. In den meisten Unternehmensumgebungen ist das bereits der Fall. Prüfung: Get-ExecutionPolicy.

Häufige Fragen

Prüfen Sie: (1) Wurde der Agent mit --register ausgeführt? Ohne Registrierung wird kein Gerät angelegt. (2) Ist die API-URL erreichbar (HTTPS, korrekte Domain)? (3) Ist der Kunden-Token korrekt? Schauen Sie in die Agent-Log-Datei für Fehlerdetails.

Ja – das ist der Kern-Vorteil. Öffnen Sie das Skript in jedem Texteditor und lesen Sie Zeile für Zeile, was gesammelt und gesendet wird. Keine versteckten Funktionen, kein verschleierter Code. Ideal für Kunden mit erhöhten Sicherheitsanforderungen oder Datenschutzbeauftragten.

Standard: alle 15 Minuten (Checkin mit vollständigen Systemdaten). Monitoring-Checks laufen zusätzlich jede Minute (Windows) bzw. im konfigurierbaren Intervall (macOS/Linux). Beides lässt sich anpassen.

In der Regel nicht. Da es ein PowerShell-/Shell-Skript ist (kein Binary), wird es nicht von SmartScreen oder Gatekeeper blockiert. Bei strikten Endpoint-Protection-Lösungen kann eine Ausnahme für den Skript-Pfad nötig sein.

Ja, der Agent erkennt automatisch ob er auf einem Server oder Client läuft und passt die gesammelten Daten entsprechend an. Auf Servern werden z.B. zusätzliche Dienste erfasst, auf Clients die Benutzer-Software.