Zum Inhalt

NetBox

Stand: 2026-05-30

Produktivstatus

NetBox ist bereits produktiv und wird als führendes IPAM/DCIM-System behandelt.

Feld Wert
CTID 309
Hostname netbox
IP 10.222.40.34/24
URL https://netbox.lanstyle.de
HTTP intern Apache auf 80 und 443
App intern Gunicorn auf 127.0.0.1:8001
Datenbank PostgreSQL lokal auf 127.0.0.1:5432
Cache Redis lokal auf 127.0.0.1:6379

https://netbox.lanstyle.de antwortet mit Redirect auf /login/ und ist damit als produktiver Dienst erreichbar.

Rolle

NetBox ist die bevorzugte Quelle für:

  • IP-Adressen und Prefixe
  • Geräte, VMs, LXCs und Standorte
  • VLANs und Netzbereiche
  • spätere Automationen mit OpenCode, n8n und Gitea

Integrationen

Empfohlen:

  • OpenCode-Skill netbox-ipam: vor neuen IPs immer NetBox prüfen.
  • n8n: NetBox-Webhooks oder API-Abfragen für Änderungsworkflows.
  • Gitea: Infrastruktur-Repositories mit NetBox-Exports abgleichen.
  • Wiki: NetBox nicht ersetzen, sondern als Quelle referenzieren.

Export fuer Agent Runtime und RAG

Der Inventory-Export fuer Qdrant wird durch agent-runtime/scripts/netbox-export-summary.sh erzeugt. Der Export ist read-only und nutzt den Vaultwarden-Eintrag Lanstyle / NetBox API Token Agent Readonly.

Seit 2026-05-25 wird NetBox-Kontext nicht mehr auf prefix, site und numerische VLAN-ID reduziert. Prefixe und VLANs enthalten mindestens:

Bereich Felder
Prefix id, prefix, scope_type, scope_id, scope, site, tenant
VLAN vlan.id, vlan.vid, vlan.name, vlan.display, vlan.description, vlan.group
Klassifikation role, status, description, comments
Governance tags, custom_fields

Grund: VLAN-IDs sind standortlokal. VLAN 70 kann an mehreren Sites legitim existieren. Agenten und RAG-Abfragen muessen daher Site/Tenant/Scope auswerten, bevor sie Prefixe oder VLANs als identisch behandeln.

Bekannter Referenzfall:

Site/Scope Tenant VLAN Prefix Status
Jena Sportgymnasium Jena 70 Haustechnik 10.7.0.0/24 legitimer SGJ-Bestand
Lanstyle Lindenstrasse Lanstyle IT Solutions GmbH 70 LS_AI_Services 10.222.70.0/24 vorbereitetes AI-Services-VLAN

VLAN-70-Vorbereitung Lindenstraße am 2026-05-25:

  • Site/Scope: Lanstyle Lindenstrasse
  • Tenant: Lanstyle IT Solutions GmbH
  • VLAN: 70 LS_AI_Services
  • Prefix: 10.222.70.0/24
  • Gateway: 10.222.70.1/24
  • Reservierte Ziel-IPs: 10.222.70.10, .11, .12, .13, .20, .21
  • Tags: migration-vlan70, lanstyle-ai-suite, lindenstrasse
  • SGJ/Jena VLAN 70 Haustechnik mit Prefix 10.7.0.0/24 wurde nicht verändert.

Eingerichtet am 2026-05-25:

  • API_TOKEN_PEPPERS wurde in /opt/netbox/netbox/netbox/configuration.py gesetzt, damit NetBox v2-Token grundsaetzlich unterstuetzen kann.
  • NetBox wurde danach neu gestartet und manage.py check meldet keine Probleme.
  • Fuer die Agent-Runtime wurde ein funktionierender Legacy-Write-Token in Vaultwarden abgelegt:
  • Vaultwarden-Eintrag: Lanstyle / NetBox API Token Agent Legacy Write
  • Auth-Schema: Authorization: Token <value>
  • Test: https://netbox.lanstyle.de/api/status/ mit HTTP 200
  • Der fuer m.eberhardt erzeugte v2-Token wurde nicht produktiv verwendet, weil ueber die Shell nur der oeffentliche Key, aber kein vollstaendiger Bearer-Token fuer den API-Test zur Verfuegung stand. Der ungueltige Vaultwarden-Zwischenstand wurde wieder entfernt.

Backups vor der Aenderung:

  • Datenbankdump: /root/config-backups/20260525-agent-runtime-netbox-token/netbox.sql
  • Config-Backup: /opt/netbox/netbox/netbox/configuration.py.bak-20260525-agent-runtime-pepper
  • Dict-Fix-Backup: /opt/netbox/netbox/netbox/configuration.py.bak-20260525-agent-runtime-pepper-dict-fix
  • Value-Fix-Backup: /opt/netbox/netbox/netbox/configuration.py.bak-20260525-agent-runtime-pepper-value-fix

Gehärtet am 2026-05-25:

  • Service-User: lanstyle-agent-readonly
  • Gruppe: Lanstyle Agent Readonly
  • Object Permission: Lanstyle Agent Readonly View
  • Token: Lanstyle Agent Runtime Readonly V1
  • write_enabled=False
  • Vaultwarden-Eintrag: Lanstyle / NetBox API Token Agent Readonly
  • Agent Runtime nutzt den read-only Token in /opt/agent-runtime/mcphub/lanstyle-infra.env.
  • MCPHub und Lanstyle Tools API wurden danach neu gestartet.

Validierung:

  • GET /api/status/: HTTP 200
  • GET /api/ipam/prefixes/?limit=1: HTTP 200
  • Agent Runtime Healthcheck: OK

Der frühere Legacy-Write-Token bleibt nur noch als Alt-/Fallback-Secret in Vaultwarden dokumentiert und sollte nach einer Beobachtungsphase rotiert oder entfernt werden.

Controlled Execution Test-Write

Stand: 2026-05-26

Der erste geplante Controlled-Execution-Testwrite netbox:test_write sollte ausschliesslich den Tag AI-Controlled-Execution-Test mit Slug ai-execution-test anlegen oder aktualisieren. Der Versuch wurde fail-closed durch NetBox mit 403 Forbidden blockiert, weil der aktuell genutzte Agent-Token keine Write-Rechte auf extras.tags besitzt. Das Testobjekt wurde nicht erstellt.

Minimal benoetigte Rechte fuer den geplanten Test:

Berechtigung Zweck
extras.view_tag vorhandenen Test-Tag pruefen und Verification lesen
extras.add_tag Test-Tag anlegen, falls er nicht existiert
extras.change_tag Test-Tag aktualisieren, falls er existiert

extras.delete_tag ist fuer den geplanten Testwrite nicht erforderlich und sollte nicht im Standard-Test-Token enthalten sein. Cleanup oder Loeschen braucht eine separate Approval-ID und, falls wirklich noetig, einen separaten Cleanup-Token oder einen zeitlich begrenzten Sonderfall.

Empfohlenes Token-/User-Konzept:

Feld Empfehlung
Benutzer lanstyle-agent-netbox-test-write
Gruppe Lanstyle Agent NetBox Test Write
Object Permission nur extras.tag mit view, add, change
Token write-enabled, kein Admin, Ablaufdatum setzen
Vaultwarden Lanstyle / NetBox API Token Agent Test Write
Runtime separater Env-Wert, getrennt vom read-only Token

Falls die NetBox-Version Token selbst nicht feingranular scopen kann, erfolgt die Begrenzung ueber Benutzer-/Gruppenrechte und NetBox Object Permissions. Ein globaler Admin-Token oder breite Rechte auf Prefixe, VLANs, Devices oder IP-Adressen sind fuer diesen Test nicht zulaessig.

Umgesetzt am 2026-05-26:

  • Benutzer: lanstyle-agent-netbox-test-write
  • Gruppe: Lanstyle Agent NetBox Test Write
  • Object Permission View: Lanstyle Agent NetBox Test Write Tag View
  • Object Permission Write: Lanstyle Agent NetBox Test Write Tags Only
  • erlaubtes Modell: extras.tag
  • erlaubte Write-Actions: add, change
  • eingeschraenkter Zielslug fuer Write: ai-execution-test
  • kein delete
  • keine Rechte auf Prefixe, VLANs, Devices oder IP-Adressen
  • kein Admin-/Superuser
  • Token: v1-Legacy-Token mit Ablaufdatum 2026-06-25, Runtime-Env NETBOX_TEST_WRITE_TOKEN

Validierung:

  • GET /api/status/ mit Testtoken: 200
  • GET /api/extras/tags/?slug=ai-execution-test mit Testtoken: 200
  • Testtag existiert vor dem Controlled Execution Write weiterhin nicht
  • POST /api/ipam/prefixes/ mit Testtoken: 403

Vaultwarden-Status:

  • Ziel-Eintrag: Lanstyle / NetBox API Token Agent Test Write
  • Vaultwarden CLI war beim Setup gesperrt und konnte lokal nicht ueber Keychain entsperrt werden.
  • Der Tokenwert wurde nicht in Chat, Git oder Markdown ausgegeben.
  • Bis zur erfolgreichen Vaultwarden-Ablage existiert der Token nur als root-only Runtime-Secret und temporaere root-only Uebergabedatei im NetBox-LXC.

Neue Approval-ID fuer den spaeteren Controlled Execution Testwrite:

  • appr-netbox-test-write-20260526-114210
  • Status: erfolgreich ausgefuehrt
  • Alte fehlgeschlagene Approval-ID wird nicht wiederverwendet.

Erfolgreicher Controlled-Execution-Testwrite am 2026-05-26:

  • Run-ID: run-netbox-test-write-20260526-114210
  • Aktion: netbox:test_write
  • Ergebnis: Tag AI-Controlled-Execution-Test / ai-execution-test erstellt
  • Objekt-ID: 8
  • Backup: /opt/agent-runtime/controlled-execution/backups/netbox/20260526-094122-run-netbox-test-write-20260526-114210-test_write.json
  • Replay-Schutz: erneute Nutzung der Approval-ID wird mit 400 abgelehnt
  • Negativtest: Prefix-Write mit Testtoken bleibt mit 403 blockiert

Kein Cleanup wurde ausgefuehrt. Entfernen des Test-Tags ist nur mit separater Approval-ID und expliziter scoped Cleanup-Action erlaubt.