Zum Inhalt springen
sw
en

Tippe um zu suchen

IT-Prozesse & Betrieb

IT-Dokumentation & Inventar

Wie du IT-Systeme, Assets und Netzwerke sauber dokumentierst – mit praxistauglichen Tools, PowerShell-Skripten und konkreten Vorlagen fuer den KMU-Alltag.

9 Min Lesezeit Anfänger Zuletzt aktualisiert:

Warum Dokumentation keine Kuer ist

Stell dir vor, du bist im Urlaub. Dein Kollege ruft an: Der Fileserver reagiert nicht. Niemand weiss, welche IP er hat, wo der Switch-Port ist oder ob da ein RAID lauft. Die Panik ist real – und vollkommen vermeidbar.

Gute IT-Dokumentation ist kein Luxus. Sie ist die Versicherung gegen genau diesen Moment. Was nicht dokumentiert ist, existiert im Notfall nicht. Das gilt fuer Serverkonfigurationen genauso wie fuer WLAN-Passwoerter, Lizenzschluessel oder den Wartungsvertrag, der morgen ablauft.

In einem KMU ohne grosse IT-Abteilung bist oft du allein der Wissenstraeger. Dokumentation ist also auch ein Schutz fuer dich selbst: Du findest deine eigene Arbeit von vor 18 Monaten wieder, ohne alles neu rekonstruieren zu muessen.

Was gehört in eine IT-Dokumentation

Eine vollstaendige IT-Dokumentation deckt vier Bereiche ab. Du musst nicht alles auf einmal aufbauen – fang mit dem Kritischsten an und wachse organisch.

1. Netzwerk-Dokumentation

DokumentInhalt
Netzwerkplan (logisch)VLANs, Subnetze, Routing, Firewall-Zonen
Netzwerkplan (physisch)Welcher Switch-Port faehrt zu welchem Geraet, Patchpanel-Belegung
IP-Adressplan (IPAM)Welche IP gehoert welchem Hostname, reservierte Ranges, DHCP-Scopes
WLAN-UebersichtSSIDs, Sicherheitsstandard, zustaendiger AP, Passwort (im Passwort-Manager)
Firewall-RegelwerkJede Regel mit Grund und Datum – warum wurde sie erstellt?

Ein einfacher IP-Adressplan kann eine Excel-Tabelle sein. Besser ist ein dediziertes IPAM-Tool wie NetBox. Die Struktur ist entscheidend – nicht das Tool.

2. Server-Dokumentation

Fuer jeden Server (physisch und virtuell) gehoert ein eigenes Datenblatt mit mindestens:

  • Hostname, FQDN, IP-Adresse(n)
  • Betriebssystem und Version, letzte grosse Updates
  • Rolle / Funktion (z.B. “Fileserver, DFS-Namespace”)
  • Hardware: CPU, RAM, Disk, RAID-Level
  • Standort: Rack, Einschub, RU-Nummer
  • Installierte Software und Versionen (fuer Compliance relevant)
  • Backup-Konfiguration: Was, wie oft, wohin, wer prueft
  • Ablaufdaten: Lizenz, Zertifikat, Wartungsvertrag, Hardwaregarantie

3. Endpoint-Inventar (Assets)

Jedes Geraet, das du verwaltust, gehoert in ein Asset-Register:

FeldBeispiel
Asset-Tag / InventarnummerIT-2024-042
SeriennummerC02X1234ABCD
ModellDell Latitude 5540
Kaufdatum15.03.2024
Garantie bis14.03.2027
Zugewiesener UserMax Muster
StandortBuero 2.12
OS / VersionWindows 11 Pro 23H2
Letztes Patch-Datum2026-06-10

4. Zugaenge und Passwoerter

Passwoerter gehoeren in einen Passwort-Manager – nie in Excel, nie in Notizzettel, nie in eine unverschluesselte Textdatei. Gute Optionen:

  • Bitwarden for Business – Open Source, guenstig, self-hosted moeglich
  • 1Password Teams – poliertes UI, stark im Team-Sharing
  • KeePassXC – vollstaendig lokal, keine Cloud, ideal fuer kleine Teams

Strukturiere den Passwort-Manager nach Kategorien: Netzwerk-Infrastruktur, Server, Dienste/SaaS, Clients. Vergib Berechtigungen nach Rolle – nicht jeder braucht die Firewall-Admin-Credentials.

Fuer den Umgang mit Passwoertern gibt es eine eigene Seite.

Tools fuer IT-Dokumentation im Vergleich

ToolArtSteilheitKostenIdeal fuer
Snipe-ITAsset Managementmittelkostenlos (OSS)Endpoint-Inventar in KMU
NetBoxNetzwerk / IPAM / DCIMsteilkostenlos (OSS)Netzwerk- und Serverdoku
IT-GlueAll-in-One ITDMflachab ~29$/User/MtMSPs, professionelle IT
i-doitCMDB / ITAMsteilkostenlos (Community)Groessere Umgebungen
ConfluenceWikimittelab ~5$/User/MtTeams mit Atlassian-Stack
ObsidianMarkdown-WikiflachkostenlosEinzelpersonen, kleine Teams
Excel / SharePointTabelleflachim M365-AboAbsolute Einstiegsloesung

Snipe-IT – Schnellstart

Snipe-IT ist eine hervorragende Einstiegsloesung fuer das Asset-Management in KMU. Es gibt eine Web-Demo und eine Docker-Installation:

# Docker Compose (empfohlener Start)
docker run -d \
  --name snipe-it \
  -p 8000:80 \
  -e APP_KEY=<random-key> \
  -e DB_HOST=mysql \
  -v snipeit_data:/var/lib/snipeit \
  snipe/snipe-it

Nach der Installation kannst du Assets anlegen, Felder anpassen, QR-Code-Labels drucken und Checkout/Check-in-Aktionen protokollieren.

Snipe-IT Gratis windows mac web

Kostenloses Open-Source Asset-Management fuer IT-Teams – Assets, Lizenzen, Zubehoer und Verbrauchsmaterial zentral verwalten.

snipeitapp.com

NetBox Gratis web

Open-Source-Plattform fuer Netzwerkdokumentation: IPAM, DCIM, Kabelverwaltung und Rack-Belegung als Source of Truth.

netboxlabs.com

Hardware-Inventar mit PowerShell automatisieren

Du musst nicht jeden Rechner manuell erfassen. PowerShell kann die wichtigsten Systeminformationen automatisch abfragen – lokal oder remote ueber das Netzwerk.

Einzelnen PC inventarisieren

# Systeminformationen lokal abfragen (Get-CimInstance ist der moderne Weg)
$os      = Get-CimInstance Win32_OperatingSystem
$bios    = Get-CimInstance Win32_BIOS
$cpu     = Get-CimInstance Win32_Processor
$ram     = Get-CimInstance Win32_PhysicalMemory
$disk    = Get-CimInstance Win32_DiskDrive
$cs      = Get-CimInstance Win32_ComputerSystem
$network = Get-CimInstance Win32_NetworkAdapterConfiguration | Where-Object { $_.IPEnabled }

[PSCustomObject]@{
    Hostname      = $env:COMPUTERNAME
    Hersteller    = $cs.Manufacturer
    Modell        = $cs.Model
    Seriennummer  = $bios.SerialNumber
    CPU           = $cpu.Name
    RAM_GB        = [math]::Round(($ram | Measure-Object Capacity -Sum).Sum / 1GB, 0)
    OS            = $os.Caption
    OS_Version    = $os.Version
    IP_Adressen   = ($network.IPAddress -join ', ')
    MAC_Adressen  = ($network.MACAddress -join ', ')
    Letzter_Start = $os.LastBootUpTime
}

Alle Domain-PCs inventarisieren

# Alle Computer aus AD lesen und per CIM remote abfragen
Import-Module ActiveDirectory

$computers = Get-ADComputer -Filter {OperatingSystem -like "Windows*"} -Properties Name, OperatingSystem

$results = foreach ($pc in $computers) {
    try {
        $session = New-CimSession -ComputerName $pc.Name -ErrorAction Stop
        $os   = Get-CimInstance Win32_OperatingSystem -CimSession $session
        $bios = Get-CimInstance Win32_BIOS -CimSession $session
        $cs   = Get-CimInstance Win32_ComputerSystem -CimSession $session

        [PSCustomObject]@{
            Hostname     = $pc.Name
            Modell       = $cs.Model
            Seriennummer = $bios.SerialNumber
            OS           = $os.Caption
            OS_Build     = $os.BuildNumber
            RAM_GB       = [math]::Round($cs.TotalPhysicalMemory / 1GB, 0)
            Letzter_Boot = $os.LastBootUpTime
            Status       = 'OK'
        }

        Remove-CimSession $session
    }
    catch {
        [PSCustomObject]@{
            Hostname = $pc.Name
            Status   = "Fehler: $($_.Exception.Message)"
        }
    }
}

# Als CSV exportieren
$results | Export-Csv -Path "C:\Inventar\AD-Inventory-$(Get-Date -Format 'yyyy-MM-dd').csv" `
           -NoTypeInformation -Encoding UTF8 -Delimiter ';'

Write-Host "Inventar gespeichert: $($results.Count) Computer erfasst."

Installierte Software inventarisieren

# Installierte Software eines PCs auflisten
Get-ItemProperty `
    HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*, `
    HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* `
  | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate `
  | Where-Object { $_.DisplayName } `
  | Sort-Object DisplayName `
  | Export-Csv "C:\Inventar\Software-$env:COMPUTERNAME.csv" -NoTypeInformation -Encoding UTF8 -Delimiter ';'

Netzwerkplan erstellen – so gehst du vor

Ein brauchbarer Netzwerkplan muss nicht perfekt aussehen. Er muss im Notfall schnell die Fragen beantworten: Wo haengt dieses Geraet? Welche IP hat es? Welcher Pfad fuehrt zu ihm?

Schritt-fuer-Schritt-Vorgehen:

  1. Physische Topologie zuerst: Beginne mit dem ISP-Anschluss und arbeite dich nach innen. Router → Core-Switch → Verteilswitches → Endgeraete.
  2. Alle Switche und Ports beschriften: Patchpanel-Belegung ist Gold wert beim naechsten Umzug oder Fehlersuche.
  3. IP-Ranges festhalten: Subnetz, Gateway, DHCP-Range, statische IP-Reservierungen.
  4. VLANs dokumentieren: VLAN-ID, Name, Zweck, welche Ports getaggt/ungetaggt sind.
  5. Zeichentool: Draw.io (kostenlos, offline oder browser), Lucidchart, oder auch Visio – entscheidend ist, dass du es aktuell haelst.

Netzwerk-Discovery-Tools wie Advanced IP Scanner (Windows, kostenlos) oder nmap koennen als Startpunkt dienen – sie zeigen dir alle erreichbaren Geraete im Subnetz:

# Netzwerkscan mit nmap (muss installiert sein)
# Alle aktiven Hosts im Subnetz 192.168.1.0/24 finden
nmap -sn 192.168.1.0/24 -oG - | Select-String "Up"

# Alternativ: Advanced IP Scanner aus dem GUI starten oder
# Schnellscan per PowerShell (ping-basiert, kein nmap noetig)
1..254 | ForEach-Object -Parallel {
    $ip = "192.168.1.$_"
    if (Test-Connection -ComputerName $ip -Count 1 -Quiet -TimeoutSeconds 1) {
        $ip
    }
} -ThrottleLimit 50

IP-Adressplan (IPAM) aufbauen

Ein IPAM (IP Address Management) verhindert IP-Konflikte und gibt dir schnell Auskunft, wem eine IP gehoert. Minimalversion in Excel:

IP-AdresseHostnameGeraetetypMAC-AdresseVLANVergabeartNotizen
192.168.1.1fw01FirewallAA:BB:CC:…1statischHauptfirewall
192.168.1.10sw-coreSwitch1statischCore Switch
192.168.10.0/24VLAN Server10RangeServer-VLAN
192.168.20.0/24VLAN Clients20DHCPClient-VLAN

Fuer groessere Umgebungen empfiehlt sich NetBox als dediziertes IPAM/DCIM-Tool. Es modelliert Standorte, Racks, Geraete, Interfaces, VLANs und IP-Praefixe als verknuepfte Objekte – und bietet eine REST-API fuer Automatisierung.

Ablaufdaten aktiv ueberwachen

Einer der haeufigsten und teuersten Fehler in der IT-Praxis: ein abgelaufenes SSL-Zertifikat, eine ausgelaufene Softwarelizenz oder ein Hardware-Supportvertrag, der laengst nicht mehr gilt.

# SSL-Zertifikat einer Domain pruefen (Ablaufdatum)
function Test-CertExpiry {
    param (
        [string]$Hostname,
        [int]    $WarningDays = 30
    )
    $req = [Net.HttpWebRequest]::Create("https://$Hostname")
    $req.Timeout = 5000
    try {
        $req.GetResponse().Dispose()
        $cert       = [Security.Cryptography.X509Certificates.X509Certificate2]$req.ServicePoint.Certificate
        $expiry     = [datetime]::ParseExact($cert.GetExpirationDateString(), 'MM/dd/yyyy HH:mm:ss', $null)
        $daysLeft   = ($expiry - (Get-Date)).Days

        [PSCustomObject]@{
            Host      = $Hostname
            AblaeufT  = $expiry.ToString('yyyy-MM-dd')
            TageFrei  = $daysLeft
            Status    = if ($daysLeft -lt $WarningDays) { 'WARNUNG' } else { 'OK' }
        }
    }
    catch {
        [PSCustomObject]@{ Host = $Hostname; Status = "Fehler: $_" }
    }
}

# Mehrere Domains pruefen
@('firma.ch', 'mail.firma.ch', 'vpn.firma.ch') | ForEach-Object { Test-CertExpiry $_ }

Trage kritische Ablaufdaten ausserdem in deinen Kalender ein – 60 Tage und 14 Tage vor Ablauf. Eine Benachrichtigung kostet nichts, ein ausgefallener Dienst schon.

Troubleshooting: Dokumentation fehlt – und jetzt?

Du stehst vor einem System ohne jede Dokumentation? Das ist leider Alltag im KMU-Support. Hier ist ein pragmatisches Vorgehen:

1. Bestandsaufnahme via Discovery:

# Alle AD-Computer auflisten (schnellster Einstieg)
Get-ADComputer -Filter * -Properties Description, OperatingSystem, LastLogonDate |
    Select-Object Name, Description, OperatingSystem, LastLogonDate |
    Sort-Object LastLogonDate -Descending |
    Export-Csv C:\Inventar\AD-Computer.csv -NoTypeInformation -Encoding UTF8 -Delimiter ';'

# Alle AD-User auflisten
Get-ADUser -Filter * -Properties Department, Title, Manager, LastLogonDate |
    Select-Object SamAccountName, Name, Department, Title, Enabled, LastLogonDate |
    Export-Csv C:\Inventar\AD-User.csv -NoTypeInformation -Encoding UTF8 -Delimiter ';'

2. Netzwerk scannen: Advanced IP Scanner oder nmap starten, alle aktiven Hosts erfassen.

3. Kritische Systeme zuerst: Server, Firewalls, Switche dokumentieren – bevor du dich um jeden Client kuemmerst.

4. Bei jedem Supportfall mitdokumentieren: Jedes Ticket, das du loest, ist eine Gelegenheit, die Dokumentation um ein Detail zu ergattern.

5. Kolleginnen und Kollegen befragen: Fachabteilungen wissen oft mehr ueber ihre eigenen Systeme als die IT. Kurzes Interview vor Ort ist oft effektiver als stundenlanger Discovery-Scan.

Dokumentation im Team pflegen

In einem groesseren Team stellt sich die Frage: Wer darf was aendern? Und wie stellen wir sicher, dass die Doku aktuell bleibt?

Bewaehrte Spielregeln:

  • One Source of Truth: Keine Doubletten. Wenn Daten an zwei Orten existieren, ist einer davon falsch.
  • Aenderungen mit Datum und Person: Wer hat was wann geaendert – und warum?
  • Review-Zyklus: Mindestens einmal im Jahr alle kritischen Dokumente reviewen. Als Termin in den Kalender eintragen.
  • Dokumentation ist Teil der Aufgabe: Change-Tickets in ITIL-Prozessen schliessen erst mit aktualisierter Dokumentation ab.

Mehr dazu im Artikel ITIL-Grundlagen und IT-Onboarding & Offboarding.

Weiterlernen

Videos

YouTube
Hardware-Inventarisierung leicht gemacht: So behaltet ihr den Ueberblick
YouTube
Ich HASSE Dokumentation.. Netbox kann mir helfen

Kommentare

Frage, Verbesserungsvorschlag oder eigene Erfahrung zu diesem Artikel? Schreib einen Kommentar. Neue Beiträge erscheinen nach kurzer Moderation.

  • Lade Kommentare …
Kommentar schreiben