cygnusnetworks

open source · selbst gehostet · aus dem eigenen betrieb

Software, die wir
selbst brauchen.

Unsere Produkte entstehen dort, wo wir im Betrieb an Grenzen stoßen: beim Helpdesk, beim Monitoring, beim DNS. Alles quelloffen, selbst gehostet und so gebaut, dass es neben bestehenden Systemen läuft — statt sie über Nacht ersetzen zu müssen.

$ tiqora

Modernes, selbst gehostetes Ticketsystem — datenbankkompatibel mit OTRS 6.0 und Znuny 6.0–7.3. Für alle, die ihren Helpdesk modernisieren wollen, ohne Daten zu migrieren oder einen Stichtag zu riskieren.

Open Source · AGPL-3.0 · Python (FastAPI) + React · MariaDB/MySQL & PostgreSQL

Tiqora ist eine Clean-Room-Neuimplementierung — kein Fork von Znuny, kein Perl-Stack. Es arbeitet direkt auf den Tabellen einer bestehenden OTRS/Znuny-Datenbank: Ticketnummern, Historie, Eskalationen und Suchindex bleiben so, dass eine parallel laufende Znuny-Instanz sie weiterhin lesen und schreiben kann. Eigene Daten legt Tiqora ausschließlich in zusätzlichen tiqora_*-Tabellen ab. So lässt sich ein Helpdesk Abteilung für Abteilung umstellen — oder Znuny bleibt einfach daneben stehen.

Was drin ist

Zeitgemäße Oberfläche

Agent-Workspace, Admin-Konsole und Kundenportal mit Wissensdatenbank. Helles und dunkles Theme, 49 Oberflächensprachen inklusive Rechts-nach-links.

KI-Unterstützung mit Kontrolle

Antwortentwürfe, Zusammenfassungen, Triage und Textüberarbeitung mit Wort-Diff — pro Queue steuerbar. Personenbezogene Daten werden vor jedem LLM-Aufruf maskiert, jede Anfrage landet im Audit-Log, Kostenbudgets pro Anbieter.

Eigene Modelle, eigene Wahl

Beliebige OpenAI-kompatible Endpunkte, Modellkatalog mit Fallback-Profilen und Routing je Aufgabe. KI-geschriebene Artikel sind markiert und tragen den Tool-Trace, der zu ihnen geführt hat. Übergabe an einen Menschen stoppt die Automatik wirklich.

PGP & S/MIME

Eingehende Mails werden geprüft und entschlüsselt, Antworten und Benachrichtigungen signiert und verschlüsselt — mit Voreinstellungen pro Queue und Schlüsselspeichern, die mit Znuny geteilt werden.

Kanäle & Telefonie

E-Mail, Telegram-Chat, SMS, WhatsApp und Telefon: Anruf-Popup über einen TK-Anlagen-Webhook, Anrufer-Erkennung, Click-to-Call und kompaktes Telefonticket.

Anmeldung & Datenschutz

OIDC, LDAP/AD, Kerberos/SPNEGO, erzwingbares TOTP und Passkeys; bestehende Passwort-Hashes funktionieren weiter. DSGVO-Werkzeuge für Anonymisierung und Aufbewahrungsfristen.

Schnittstellen

REST-API /api/v1, kompatible GenericInterface-Schnittstelle (REST und SOAP) für bestehende Integrationen, Webhooks — und ein MCP-Server, über den KI-Agenten mit denselben Rechten arbeiten wie Menschen.

Kalender, Prozesse, Berichte

Termine und Prozessmanagement auf den vorhandenen Znuny-Tabellen, Reporting mit SLA, Volltextsuche über Meilisearch, Echtzeit-Updates und CSV-Export.

Drei Wege zum Einsatz

  1. ausprobieren

    Die Live-Demo läuft komplett im Browser. Lokal startet ein einziges docker compose eine Testinstanz mit Beispieltickets.

  2. parallel zu znuny

    Tiqora läuft auf derselben Datenbank wie Ihre bestehende Instanz, ohne deren Schema zu verändern. Mailabruf, Eskalation und Benachrichtigungen bleiben bei Znuny, bis Sie sie einzeln übergeben.

  3. ablösen oder neu starten

    Nach der Parallelphase übernimmt Tiqora das Schema nach Checkliste. Ohne Altsystem geht es direkt mit einer leeren Datenbank los.

$ auzui

A Usable Zabbix UI — eine moderne Monitoring-Oberfläche, die neben der bestehenden Zabbix-Weboberfläche läuft, nicht statt ihr.

Open Source · AGPL-3.0 · React 19 + TypeScript · Python-Gateway · aktiv in Entwicklung

Zabbix kann fast alles — nur die tägliche Arbeit mit der Oberfläche fühlt sich alt an. auzui baut die Monitoring-Seite neu: Probleme, Hosts, Latest Data, Dashboards und Topologie, schnell, informationsdicht und Dark-Mode-first. Konfiguration und Administration bleiben in der gewohnten Zabbix-Oberfläche. Das Leitprinzip heißt Zero-Config Deep Observability: auzui leitet so viel wie möglich aus dem ab, was Zabbix ohnehin weiß — Item-Tags, Einheiten, Templates, Trigger-Ausdrücke, LLD, Inventar — statt Dashboards von Hand bauen zu lassen.

Was drin ist

Problem-Triage in Echtzeit

Virtualisierte Liste, Quittieren und Kommentieren direkt in der Zeile, Filter nach Schweregrad, Sammelaktionen. Jede Filteransicht ist ein teilbarer Link.

Automatische Host-Dashboards

Pro Host generiert: Abschnitte nach Komponenten, Trigger-Schwellen als Zonen im Diagramm, Port-Matrix, Prognosen für Speicherplatz und Zertifikate, 7-Tage-Vergleichslinien.

Infrastruktur-Explorer

Heatmap-Drilldown von Hostgruppen über Hosts und Komponenten bis zum einzelnen Item, eingefärbt nach Status oder Auslastung, mit den größten Veränderungen auf jeder Ebene.

Auto-Topologie

Abhängigkeitsgraph aus Trigger-Abhängigkeiten, LLDP/CDP-Nachbarn, gemeinsamen Subnetzen und statistischer Ereigniskorrelation — jede Kante mit Herkunft und Konfidenz.

Metrik-Browser & ⌘K

Facettensuche über alle Items, sortierbare Small Multiples, Vergleich über Hosts hinweg. Die Command-Palette findet Hosts, Items und Trigger und führt Aktionen direkt aus.

Web-Szenarien

Status aller HTTP-Checks, Antwortzeit pro Schritt, Fehlercodes und Verfügbarkeit über 14 Tage — plus Aktivieren und Deaktivieren mit einem Klick.

Optionale Integrationen

InfluxDB für lange Zeiträume mit serverseitigem Downsampling, Graylog-Logs im gleichen Zeitfenster wie die Diagramme, Docker-Containerverwaltung über mehrere Hosts, Kerberos-SSO. Alles abschaltbar — ohne Konfiguration bleibt es unsichtbar.

Ein Container, eine Variable

Ein Image (amd64/arm64) enthält Gateway und Oberfläche. Pflicht ist nur die Adresse der Zabbix-API — die bestehende Zabbix-Oberfläche dient als Backend und bleibt unangetastet.

$ panoptidns

Kleiner autoritativer DNS-Server, der IPv6-Reverse-Einträge (PTR) und die passenden Forward-Einträge (AAAA) bei jeder Anfrage berechnet — ohne eine einzige Zonendatei.

Open Source · BSD-3-Clause · Rust · ~5 MB Container-Image

Ein /64 enthält über 18 Trillionen Adressen. Keine Zonendatei kann sie aufzählen — aber die Zuordnung zwischen Adresse und Hostname ist eine reine Funktion und lässt sich bei jeder Anfrage in beide Richtungen berechnen. PanoptiDNS ist ein gehärteter Ersatz für das nicht mehr gepflegte AllKnowingDNS, liest dieselbe Konfigurationsdatei und ist im eigenen ISP-Betrieb entstanden.

Sicher durch Konstruktion

Namen sind nie Text

Eine Anfrage wird in eine 128-Bit-Zahl übersetzt oder abgelehnt; Antworten werden aus typisierten Labels gebaut. Damit ist die Schwachstelle des Originals — ein einziges UDP-Paket mit ; im Namen beendete den Server — gar nicht mehr darstellbar.

Der Anfragepfad kann nicht abstürzen

Alles, was im Anfragepfad abbrechen könnte, ist per Lint verboten und wird im CI geprüft. Selbst ein Programmfehler wird zu SERVFAIL, nicht zu einem Ausfall.

Kompatibel zum Original

Gleiches Konfigurationsformat, die Testvektoren von AllKnowingDNS als Kompatibilitätsvertrag. Jede gefundene Schwachstelle hat einen eigenen Regressionstest.

Betrieb

Rate Limiting, EDNS und TCP, Konfigurationsprüfung mit Zeilennummern, Neuladen per SIGHUP. Container ohne Capabilities, mit schreibgeschütztem Dateisystem und als Nicht-Root — oder als systemd-Dienst.

$ nebenbei

Kleine Open-Source-Projekte aus Eigenbedarf und Neugier — Wetterdaten, Energie im Eigenheim und Trainingsdaten. Zu finden unter github.com/cygnusb.

wetterrekord.de — Wetterrekorde live

DWD Open Data · Python · Open Source

Live-Karte, die an über 330 Stationen des Deutschen Wetterdienstes die heutigen Werte mit Tages-, Halbmonats-, Monats- und Allzeitrekord vergleicht — für Hitze, Kälte, Windböen, Niederschlag und Luftdruck. Manche Messreihen reichen bis 1781 zurück.

Smart Battery Pilot

Home Assistant · HACS · Python · MIT

Lädt den Heimspeicher, wenn Strom billig ist, und nutzt ihn, wenn er teuer ist: Aus dynamischem Stromtarif, gelerntem Verbrauchsprofil und PV-Prognose entsteht ein optimaler Lade- und Entladeplan — gerade in der Dunkelflaute. Herstellerneutral über eigene Home-Assistant-Skripte (Fronius, Victron, SMA, Sungrow, E3DC, …).

Netze BW Portal für Home Assistant

Home Assistant · HACS · Python · MIT

Inoffizielle Integration für das Kundenportal von Netze BW: findet alle intelligenten Messsysteme automatisch, liefert Zählerstände und Verbrauch als Sensoren und schreibt bis zu 30 Tage Tages-, Stunden- und 15-Minuten-Werte ins Energie-Dashboard — auch für Einspeisung und Zweirichtungszähler.

coros-mcp — Trainingsdaten für KI-Assistenten

Model Context Protocol · Python · MIT

MCP-Server, der Schlaf, HRV, Ruhepuls, Trainingslast und Aktivitäten aus dem COROS Training Hub für Claude & Co. abfragbar macht — und Workouts anlegen und im Trainingskalender einplanen kann. Inoffizielles Community-Projekt, nicht mit COROS verbunden.

$ einsatz

Sie möchten eines unserer Produkte einführen, an eine bestehende Umgebung anbinden oder neben Znuny bzw. Zabbix in Betrieb nehmen? Sprechen Sie uns an — wir kennen die Software, weil wir sie selbst entwickeln und betreiben.