IT-Dokumentation & Inventar
Wie du IT-Systeme, Assets und Netzwerke sauber dokumentierst – mit praxistauglichen Tools, PowerShell-Skripten und konkreten Vorlagen fuer den KMU-Alltag.
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
| Dokument | Inhalt |
|---|---|
| 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-Uebersicht | SSIDs, Sicherheitsstandard, zustaendiger AP, Passwort (im Passwort-Manager) |
| Firewall-Regelwerk | Jede 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:
| Feld | Beispiel |
|---|---|
| Asset-Tag / Inventarnummer | IT-2024-042 |
| Seriennummer | C02X1234ABCD |
| Modell | Dell Latitude 5540 |
| Kaufdatum | 15.03.2024 |
| Garantie bis | 14.03.2027 |
| Zugewiesener User | Max Muster |
| Standort | Buero 2.12 |
| OS / Version | Windows 11 Pro 23H2 |
| Letztes Patch-Datum | 2026-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
| Tool | Art | Steilheit | Kosten | Ideal fuer |
|---|---|---|---|---|
| Snipe-IT | Asset Management | mittel | kostenlos (OSS) | Endpoint-Inventar in KMU |
| NetBox | Netzwerk / IPAM / DCIM | steil | kostenlos (OSS) | Netzwerk- und Serverdoku |
| IT-Glue | All-in-One ITDM | flach | ab ~29$/User/Mt | MSPs, professionelle IT |
| i-doit | CMDB / ITAM | steil | kostenlos (Community) | Groessere Umgebungen |
| Confluence | Wiki | mittel | ab ~5$/User/Mt | Teams mit Atlassian-Stack |
| Obsidian | Markdown-Wiki | flach | kostenlos | Einzelpersonen, kleine Teams |
| Excel / SharePoint | Tabelle | flach | im M365-Abo | Absolute 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.
Kostenloses Open-Source Asset-Management fuer IT-Teams – Assets, Lizenzen, Zubehoer und Verbrauchsmaterial zentral verwalten.
snipeitapp.com
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:
- Physische Topologie zuerst: Beginne mit dem ISP-Anschluss und arbeite dich nach innen. Router → Core-Switch → Verteilswitches → Endgeraete.
- Alle Switche und Ports beschriften: Patchpanel-Belegung ist Gold wert beim naechsten Umzug oder Fehlersuche.
- IP-Ranges festhalten: Subnetz, Gateway, DHCP-Range, statische IP-Reservierungen.
- VLANs dokumentieren: VLAN-ID, Name, Zweck, welche Ports getaggt/ungetaggt sind.
- 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-Adresse | Hostname | Geraetetyp | MAC-Adresse | VLAN | Vergabeart | Notizen |
|---|---|---|---|---|---|---|
| 192.168.1.1 | fw01 | Firewall | AA:BB:CC:… | 1 | statisch | Hauptfirewall |
| 192.168.1.10 | sw-core | Switch | … | 1 | statisch | Core Switch |
| 192.168.10.0/24 | – | VLAN Server | – | 10 | Range | Server-VLAN |
| 192.168.20.0/24 | – | VLAN Clients | – | 20 | DHCP | Client-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
- NinjaOne: 5 Best Practices fuer IT-Dokumentation 2025 – Kompakter Ueberblick mit konkreten Empfehlungen
- Snipe-IT Dokumentation (englisch) – Offizielle Einstiegsdokumentation des Asset-Management-Tools
- NetBox Dokumentation – Offizielle Referenz fuer das IPAM/DCIM-Tool
- EntekSystems: IT-Inventarisierung Schritt fuer Schritt – Deutschsprachige Anleitung fuer den Aufbau einer Inventarisierungsloesung
- WindowsPro: Computer in AD mit PowerShell inventarisieren – Skript-Beispiele fuer Domain-Umgebungen
- IP-Insider: 5 gute Gruende fuer IT-Dokumentation in KMU – Argumentationshilfe gegenueber Geschaeftsfuehrung oder Kunden
Videos
Kommentare
Frage, Verbesserungsvorschlag oder eigene Erfahrung zu diesem Artikel? Schreib einen Kommentar. Neue Beiträge erscheinen nach kurzer Moderation.
- Lade Kommentare …