MANTIS Installation

IT-Tresor fuer Dienstleister — Schritt-fuer-Schritt Anleitung

Warum MANTIS? — Die Gottesanbeterin (Mantis) steht fuer Praezision, Geduld und Weitblick. Sie beobachtet ihre Umgebung mit hoechster Aufmerksamkeit und handelt im entscheidenden Moment. Genau das tut MANTIS fuer IT-Dienstleister: Zugaenge, Lizenzen, Vertraege und Infrastruktur praezise verwalten, Risiken frueh erkennen und im Ernstfall sofort handlungsfaehig sein.

💻

Client-Modus

Lokale Desktop-App. Alle Daten verschluesselt auf deinem Rechner. Spaeter optional mit Server verbindbar.

Empfohlen zum Start
☁️

Server-Modus

Zentraler Server + Client. Multi-User, Team-Zugriff, Daten-Sync ueber alle Geraete.

Fuer Teams
1 Voraussetzungen
2 Installation
3 Einrichtung
4 Erste Schritte
5 Server verbinden

1. Voraussetzungen

Minimale Anforderungen MANTIS laeuft auf Windows, macOS und Linux. Keine Server-Infrastruktur noetig.
KomponenteAnforderung
BetriebssystemWindows 10+, macOS 12+, Ubuntu 22.04+ / Fedora 38+
RAM4 GB (empfohlen: 8 GB)
Festplatte200 MB fuer die App + Platz fuer Daten
Bildschirm1280x720 Minimum
Keine Abhaengigkeiten MANTIS bringt alles mit. Keine Datenbank, kein Java, kein .NET noetig. Die Daten werden lokal in einer verschluesselten SQLCipher-Datenbank gespeichert.

Checkliste

Betriebssystem pruefen

Windows: Einstellungen → System → Info → "Windows-Spezifikationen". Benoetigt: Windows 10 oder neuer.

macOS: Apple-Menu → "Ueber diesen Mac". Benoetigt: macOS 12 (Monterey) oder neuer.

Linux:

cat /etc/os-release
# Benoetigt: Ubuntu 22.04+, Debian 12+, Fedora 38+ oder vergleichbar

Speicherplatz pruefen (min. 200 MB frei)

Windows: Explorer → Rechtsklick auf C: → Eigenschaften

macOS: Apple-Menu → "Ueber diesen Mac" → "Festplatten"

Linux:

df -h /
# Spalte "Verfuegbar" muss mindestens 200M zeigen

Administratorrechte

Windows: Du musst die Setup-Datei als Administrator ausfuehren koennen (Rechtsklick → "Als Administrator ausfuehren").

macOS: Du musst dein Benutzerpasswort eingeben koennen wenn macOS danach fragt.

Linux: Du brauchst sudo-Rechte fuer die .deb-Installation. AppImage benoetigt keine Admin-Rechte.

2. Installation

Windows

  1. Lade MANTIS_2607.1.0_x64-setup.exe von cosic.eu/download/mantis herunter
  2. Fuehre die Setup-Datei aus (Doppelklick)
  3. Folge dem Installations-Wizard (Standard-Einstellungen sind empfohlen)
  4. MANTIS startet automatisch nach der Installation
WebView2 Runtime MANTIS nutzt die Microsoft WebView2 Runtime (auf Windows 10/11 in der Regel vorinstalliert). Falls die App nicht startet, den WebView2 Evergreen Installer ausfuehren und MANTIS erneut starten.

macOS

  1. Lade MANTIS-x.x.x.dmg herunter
  2. Oeffne die DMG-Datei und ziehe MANTIS in den Applications-Ordner
  3. Beim ersten Start: Rechtsklick → "Oeffnen" (Gatekeeper-Freigabe)

Linux

  1. Lade .deb (Debian/Ubuntu) oder .AppImage von cosic.eu/download/mantis herunter
  2. Installation:
    # Debian/Ubuntu (Dateiname enthaelt die aktuelle Version)
    sudo dpkg -i MANTIS_2607.1.0_amd64.deb
    # Falls Abhaengigkeiten fehlen (z.B. libwebkit2gtk-4.1-0):
    sudo apt -f install
    
    # AppImage (alle Distros, keine Installation noetig)
    chmod +x MANTIS_2607.1.0_amd64.AppImage
    ./MANTIS_2607.1.0_amd64.AppImage
Auto-Update MANTIS prueft automatisch auf neue Versionen und bietet One-Click-Updates an.

3. Ersteinrichtung (Onboarding)

Beim ersten Start fuehrt dich ein 4-Schritt-Wizard durch die Einrichtung:

Schritt 1: Willkommen

Sprache waehlen (Deutsch / English) und Weiter klicken.

Schritt 2: Master-Passwort festlegen

Wichtig: Dieses Passwort ist der Schluessel zu allen Daten! Waehle ein starkes Passwort (min. 12 Zeichen). Es gibt keine "Passwort vergessen"-Funktion. Alle Daten werden mit diesem Passwort verschluesselt (AES-256-GCM via Argon2id).
  • Staerke-Anzeige hilft bei der Wahl
  • Passwort ist spaeter aenderbar (alle Daten werden neu verschluesselt)

Schritt 3: Recovery Key sichern

Recovery Key = Notfall-Zugang 24 Woerter die du EINMALIG herunterladen und sicher aufbewahren musst. Bei Verlust des Master-Passworts ist dies der einzige Weg zurueck zu deinen Daten.
  • Klicke "Herunterladen" und speichere die Datei an einem sicheren Ort (ohne Download geht es nicht weiter)
  • Bestaetige anschliessend per Checkbox, dass der Key sicher verwahrt ist
  • Idealerweise: Ausdrucken und im Tresor/Safe aufbewahren

Schritt 4: Erster Mandant oder Demo

Lege deinen ersten Mandanten (Kunden) an oder starte mit Demo-Daten zum Ausprobieren.

4. Erste Schritte

Mandant anlegen

Strg+N oder "+" Button in der Sidebar. Gib Name, Kundennummer, Kontaktdaten ein.

Zugaenge erfassen

Waehle einen Mandanten → Tab "Zugaenge" → "Neuer Zugang". Passwoerter werden automatisch verschluesselt.

Timer starten

Klicke auf das Timer-Symbol in der Statusbar oder starte direkt aus einem Ticket heraus. Jeder Timer zeigt Mandant + Aufgabe an.

Daten importieren

Ziehe eine Excel/CSV/KeePass/1Password-Datei per Drag&Drop in die App. MANTIS erkennt das Format automatisch.

Wichtige Shortcuts

ShortcutAktion
Strg+KGlobale Suche
Strg+NNeuer Mandant
Strg+LApp sperren
Fertig! Du kannst MANTIS jetzt als lokalen IT-Tresor nutzen. Wenn du spaeter einen Server anbinden moechtest, folge dem naechsten Schritt.

5. Spaeter mit Server verbinden (optional)

Du kannst jederzeit von der lokalen Nutzung auf den Server-Modus wechseln:

  1. Oeffne Einstellungen (Zahnrad-Symbol)
  2. Navigiere zu "Server-Verbindung"
  3. Gib die Server-URL ein (z.B. https://mantis.deinefirma.de)
  4. Melde dich mit deinem Server-Account an (E-Mail + Passwort)
  5. Waehle ob du lokale Daten zum Server migrieren moechtest
Wichtig bei der Daten-Migration
  • Die Migration verlangt dein Server-Login-Passwort (nicht das lokale Master-Passwort) und verifiziert es vor dem Start — damit die Daten im Server-Modus entschluesselbar sind
  • Nicht alles wird uebertragen: Kunden-TOTP-Seeds, Wissensdatenbank, Rechnungen, externe API-Zugaenge, Dokument-Dateien und Ticket-Anhaenge, Timer-Zeitbloecke sowie ISO-Compliance-Daten bleiben lokal — die App zeigt die vollstaendige Liste vor dem Start an
  • Lokalen Tresor nicht loeschen, solange du diese Daten noch brauchst
Dual-Mode Du kannst jederzeit zwischen lokal und Server wechseln. Lokale Daten bleiben erhalten. Im Server-Modus werden Daten zentral gespeichert und sind von allen Geraeten zugaenglich.
Voraussetzung Ein MANTIS-Server muss eingerichtet sein. Siehe den Server-Modus fuer die Server-Installation.
🔄 Update-Anleitung

Client aktualisieren

Auto-Update (empfohlen) MANTIS prueft beim Start automatisch auf neue Versionen. Bei verfuegbarem Update erscheint ein Banner — ein Klick genuegt.

Falls Auto-Update nicht funktioniert:

  1. Lade die neueste Version von der Download-Seite herunter
  2. Installiere ueber die bestehende Installation (Daten bleiben erhalten)
  3. Starte MANTIS — DB-Migrationen laufen automatisch

Server aktualisieren

# 1. Backup erstellen (Pflicht!)
pg_dump -U mantis mantis | gzip > /var/lib/mantis/backups/pre_update_$(date +%Y%m%d).sql.gz

# 2. Neue Version herunterladen (aktuelle URL auf cosic.eu/download/mantis)
wget https://download.cosic.eu/mantis/latest/mantis-server-2607.1.0-linux-x86_64.tar.gz
tar xzf mantis-server-2607.1.0-linux-x86_64.tar.gz

# 3. Altes Binary sichern, dann ersetzen + Neustart
sudo systemctl stop mantis
sudo cp /usr/local/bin/mantis-server /usr/local/bin/mantis-server.bak
sudo cp mantis-server/mantis-server /usr/local/bin/
sudo systemctl start mantis

# 4. Pruefen
curl https://mantis.deinefirma.de/api/health
sudo journalctl -u mantis --since "1 min ago"
DB-Migrationen laufen automatisch — mit Sicherheitsnetz Der Server erkennt beim Start neue Migrationen und fuehrt sie aus (jede in einer eigenen Transaktion). Bei bestehenden Daten legt er vorher automatisch ein verifiziertes pg_dump-Backup in BACKUP_DIR an (pre_migration_*.dump) — schlaegt das fehl, startet er nicht und migriert nichts. Kein manuelles SQL noetig.
Rollback bei Problemen Falls der neue Server nicht startet:
# Altes Binary wiederherstellen (falls gesichert)
sudo cp /usr/local/bin/mantis-server.bak /usr/local/bin/mantis-server
sudo systemctl start mantis

# Oder: DB aus Backup wiederherstellen
gunzip -c /var/lib/mantis/backups/pre_update_YYYYMMDD.sql.gz | psql -U mantis mantis
🔧 Troubleshooting

Client-Probleme

ProblemLoesung
App startet nicht (Windows) Rechtsklick → "Als Administrator ausfuehren". Falls WebView2 fehlt: WebView2 Runtime installieren.
App startet nicht (macOS) Rechtsklick → "Oeffnen" (Gatekeeper). Bei Apple Silicon: Rosetta wird automatisch verwendet.
App startet nicht (Linux) WebKit-Abhaengigkeit installieren: sudo apt install libwebkit2gtk-4.1-0
"Tresor nicht entsperrt" Master-Passwort eingeben. Falls vergessen: Recovery Key verwenden (24 Woerter).
Daten weg nach Update Unwahrscheinlich — Daten liegen in ~/mantis-data/ (nicht im App-Ordner). Pruefe ob der richtige Vault aktiv ist. Im Zweifel: Einstellungen → System → Backups → Backup wiederherstellen.
Server-Verbindung fehlgeschlagen Pruefe URL (https://), Netzwerkverbindung, und ob der Server laeuft (curl URL/api/health).
Fehlermeldung beginnt mit E_VALIDATION Die URL wurde vom Client blockiert. Haeufigster Fall: http:// zu einem oeffentlichen Host — unverschluesseltes HTTP ist nur zu localhost, privaten LAN-IPs (10.x / 172.16–31.x / 192.168.x) und *.local erlaubt. Nutze https://.
Fehlermeldung beginnt mit E_NETWORK Transportfehler: Server nicht erreichbar, DNS, Timeout oder TLS-Problem. Server-Status und Zertifikat pruefen.
Fehlermeldung beginnt mit E_HTTP_4xx/5xx Der Server hat geantwortet, aber mit Fehlerstatus. E_HTTP_401: neu anmelden. E_HTTP_403: fehlende Berechtigung (Rolle pruefen). E_HTTP_409: Bearbeitungskonflikt — die App meldet den Konflikt und laedt den aktuellen Stand neu; eigene Aenderungen danach erneut eintragen.
Offline-Aenderung als "fehlgeschlagen" markiert Eine gepufferte Aenderung konnte nach 5 Versuchen nicht uebertragen werden. In der App pruefen und manuell erneut ausfuehren.

Server-Probleme

ProblemLoesung
JWT_SECRET must be set Die .env-Datei fehlt oder JWT_SECRET ist nicht gesetzt. Generiere einen:
openssl rand -hex 32
Connection refused (DB) PostgreSQL laeuft nicht oder Zugangsdaten falsch:
sudo systemctl status postgresql
psql -U mantis -d mantis -h localhost
Address already in use Port 3000 ist belegt. Anderen Port setzen oder Prozess finden:
sudo lsof -i :3000
# Oder in .env: LISTEN_ADDR=0.0.0.0:3001
SERVER_ENCRYPTION_KEY must be set (Start bricht ab) EMAIL_ENABLED=true ist gesetzt, aber der Verschluesselungs-Schluessel fehlt:
# In /etc/mantis/.env ergaenzen:
SERVER_ENCRYPTION_KEY=$(openssl rand -hex 32)
Alternativ EMAIL_ENABLED=false setzen, wenn keine E-Mail-Anbindung gebraucht wird.
Migration failed Datenbank-Berechtigungen pruefen:
sudo -u postgres psql -c "GRANT ALL ON DATABASE mantis TO mantis;"
Pre-migration backup failed (Start bricht ab) Der Server konnte vor den Migrationen kein pg_dump-Backup erstellen. Pruefen: pg_dump im PATH? BACKUP_DIR beschreibbar (chown mantis:mantis)? Plattenplatz (df -h)? Notfall-Override (nicht empfohlen): SKIP_MIGRATION_BACKUP=true in der .env.
HTTPS / Zertifikat abgelaufen Let's Encrypt Zertifikat erneuern:
sudo certbot renew
sudo systemctl reload nginx
Auto-Renewal einrichten (normalerweise schon aktiv):
sudo systemctl status certbot.timer
Server reagiert langsam DB-Pool erhoehen in .env: DB_POOL_SIZE=50
Speicher/CPU pruefen: htop
DB-Vacuum: psql -U mantis -d mantis -c "VACUUM ANALYZE;"
CORS-Fehler im Client CORS_ORIGINS in .env muss alle Client-Origins enthalten (Setzen ueberschreibt die Default-Allowlist!). Beide Tauri-Origins mitfuehren — tauri://localhost (Linux/macOS) und http://tauri.localhost (Windows):
CORS_ORIGINS=https://mantis.deinefirma.de,tauri://localhost,http://tauri.localhost
WebSocket-Verbindung bricht ab Nginx WebSocket-Konfiguration pruefen (Timeout erhoehen):
location /api/ws {
    proxy_read_timeout 86400s;
    proxy_send_timeout 86400s;
    ...
}

Logs einsehen

# Client-Logs (Desktop-App, ab v0.11 — hilfreich fuer Bug-Reports)
#   ~/mantis-data/logs/mantis.log    (rotierend, max. 5 MB + 3 Archive)
#   ~/mantis-data/logs/crash.log    (nur nach Abstuerzen, mit Backtrace)

# Server-Logs (live)
sudo journalctl -u mantis -f

# Letzte 100 Zeilen
sudo journalctl -u mantis -n 100

# Nur Fehler
sudo journalctl -u mantis -p err

# Nginx Access/Error Logs
tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log
🗑 Deinstallation

Client deinstallieren

Windows:

  1. Einstellungen → Apps → "MANTIS" suchen → "Deinstallieren"
  2. Optional: Daten loeschen unter C:\Users\DEIN_NAME\mantis-data\

macOS:

  1. MANTIS aus dem Applications-Ordner in den Papierkorb ziehen
  2. Optional: Daten loeschen unter ~/mantis-data/

Linux:

# Debian/Ubuntu
sudo dpkg -r mantis

# Optional: Daten loeschen
rm -rf ~/mantis-data/
Daten sichern vor Deinstallation! Erstelle vorher ein Backup: In MANTIS → Einstellungen → System → Backups → "Backup jetzt erstellen". Die Backup-Datei (.mantis-backup in ~/mantis-data/backups/) kann spaeter an gleicher Stelle mit dem Master-Passwort wiederhergestellt werden.

Server deinstallieren

# 1. Daten-Backup erstellen (wichtig!)
pg_dump -U mantis mantis | gzip > ~/mantis_final_backup.sql.gz

# 2. Service stoppen + entfernen
sudo systemctl stop mantis
sudo systemctl disable mantis
sudo rm /etc/systemd/system/mantis.service
sudo systemctl daemon-reload

# 3. Binary + Konfiguration entfernen
sudo rm /usr/local/bin/mantis-server
sudo rm -rf /etc/mantis/

# 4. Daten entfernen (UNWIDERRUFLICH!)
sudo rm -rf /var/lib/mantis/

# 5. Datenbank entfernen (optional)
sudo -u postgres psql -c "DROP DATABASE mantis;"
sudo -u postgres psql -c "DROP USER mantis;"

# 6. Nginx-Konfiguration entfernen (falls vorhanden)
sudo rm /etc/nginx/sites-enabled/mantis
sudo rm /etc/nginx/sites-available/mantis
sudo systemctl reload nginx

# 7. System-User entfernen
sudo deluser mantis
Punkt 4 & 5 sind unwiderruflich! Nach dem Loeschen der Datenbank und Uploads gibt es kein Zurueck — ausser du hast ein Backup.
💬 Support & Kontakt
KanalDetails
E-Mail hallo@cosic.eu
Website cosic.eu/download/mantis — Downloads, Changelog & Feature Requests
Dokumentation In-App: Einstellungen → Handbuch (Glossar-Tooltips ueberall verfuegbar)

Bug melden

Beim Melden eines Bugs bitte angeben:

  • MANTIS-Version (Einstellungen → Info)
  • Betriebssystem + Version
  • Schritte zum Reproduzieren
  • Fehlermeldung (in MANTIS: Klick auf Fehlermeldung kopiert sie automatisch)
  • Logdatei ~/mantis-data/logs/mantis.log (bei Absturz zusaetzlich crash.log)
  • Screenshots falls moeglich

Haeufige Fragen

FrageAntwort
Kann ich spaeter vom Client- zum Server-Modus wechseln? Ja, jederzeit. Einstellungen → Server-Verbindung. Lokale Daten bleiben erhalten.
Wo liegen meine Daten? Client: ~/mantis-data/ (verschluesselte SQLCipher-DB, Backups, Logs). Portable-Modus: mantis-data/ neben der Executable. Server: PostgreSQL-Datenbank + /var/lib/mantis/
Kann der Server meine Passwoerter lesen? Nein. Passwoerter werden clientseitig mit deinem Master-Passwort verschluesselt (AES-256-GCM). Der Server speichert nur verschluesselte Blobs.
Was passiert wenn ich mein Master-Passwort vergesse? Nutze den Recovery Key (24 Woerter). Ohne Recovery Key sind die Daten unwiederbringlich verschluesselt.
Funktioniert MANTIS offline? Im Client-Modus: Ja, komplett offline. Im Server-Modus: Nur mit Server-Verbindung.
Wie viele Mandanten kann ich anlegen? Free: 3 Mandanten. Pro: Unbegrenzt. Siehe Lizenz-Einstellungen in der App.
Gibt es eine mobile App? Derzeit nicht. MANTIS ist eine Desktop-App (Windows/macOS/Linux); der Server stellt nur die API bereit, keine Web-Oberflaeche. Native Mobile-Apps sind geplant.
MANTIS — © 2026 COSIC — Alle Rechte vorbehalten