Autor: Malte

  • Von einem Linux-Host beliebige UPnP-Portfreigaben des Routers anfordern

    Um von einem Linux-Host automatische Portfreigaben/Portweiterleitungen per UPnP anzufordern, bietet sich auf der Kommandozeile upnpc an. Das Kommando erhält man unter gängigen Systemen durch die Installation des „miniupnpc“ Paketes.

    Eine Portfreigabe kann man dann über

    upnpc -a 192.168.188.157 22 2222 TCP
    

    anfordern. Nutzt das eigene Linux-System mehrere Netzwerkinterfaces muss auch noch eine IP auf dem Interface oder ein Interface ansich mit dem Parameter „-m“ definiert werden:

    upnpc -m eth2 -a 192.168.188.157 22 2222 TCP
    
    (mehr …)
  • Bei linuxserver/docker-wireguard automatisch WireGuard-Clients im laufenden Betrieb hinzufügen

    Für die Realisierung eines WireGuard-VPN in Sterntopologie nutze ich linuxserver/docker-wireguard. Das Docker Container-Image ist eines von vielen ganz hervorragenden Container-Images von linuxserver.io, welches mit einem gefestigten Featureset und regelmäßigen Updates kommt.

    Leider sieht es im Standard nur vor, dass WireGuard-Peers per Umgebungsvariable „PEERS“ mit Komma getrennt eingestellt werden. Peers, die nicht mehr oder noch nicht in der Liste sind, werden auch nicht als solche in der vom Server verwendeten wg01.conf eingetragen und sind damit nicht in der Lage, eine Verbindung aufzubauen. Wie ich das unkompliziert gelöst habe, ohne das Container-Image anzupassen, möchte ich hier zeigen:

    (mehr …)
  • Bessere tesseract-Trainingsdaten „tessdata_best“ in paperless-ngx (Docker) nutzen

    paperless-ngx nutzt zur Texterkennung tesseract-ocr über OCRmyPDF. Für tesseract-ocr gibt es dabei zwei unterschiedliche Arten von Texterkennungs-Trainingsdaten (tessdata_fast, tessdata_best). Wobei die standardmäßig im paperless-ngx Docker-Image installierten immer die bereitgestellten „tessdata_fast“-Trainingsdaten sind. Diese sind zügig, aber haben auch eine höhere Fehlerrate in der Erkennung.

    Um für paperless-ngx „tessdata_best“ zu nutzen, empfiehlt sich eine ganz simple Lösung: Wir laden die Trainingsdaten herunter, legen sie in ein Verzeichnis unserer Wahl und mounten sie in den paperless-ngx Container an der jeweilig korrekten Stelle:

    (mehr …)
  • In paperless-ngx signierte PDF-Dokumente trotz Signatur mit OCR importieren

    Um in paperless-ngx Dokumente zu importieren und OCR (Texterkennung) über jene laufen zu lassen, bedarf es einer kleinen Anpassung in den paperless-ngx-Einstellungen. Ohne die Änderung verweigert paperless-ngx und die genutzten Drittanwendungen das Einlesen des Textes mit der Meldung:

    Unter „Konfiguration“ -> Reiter „OCR-Einstellungen“ > „OCR-Argumente“ muss die folgende Option in JSON-Format eingefügt werden:

    (mehr …)
  • Einmalige Email-Benachrichtigung bei Freigabe in paperless-ngx einrichten

    Stand heute unterstützt paperless-ngx leider keine Email-Benachrichtigungen wenn eine Freigabe an einen anderen Benutzer erfolgt. Mit ein paar Tricks lässt sich diese Funktionalität jedoch, zumindest in einer grundlegend, nachrüsten.

    Ich möchte hier kurz erläutern wie ich Email-Benachrichtigungen bei Freigabe in paperless-ngx ohne externe Tools realisiert habe:

    (mehr …)
  • Webhook-Queue in paperless-ngx löschen

    Spielt man ein bisschen mit den Workflows „Arbeitsabläufen“ in paperless-ngx, kann es passieren, dass man versehentlich viele Webhook-Calls generiert, indem man z. B. für seine gesamte Dokumentensammlung Webhooks durch den Auslöser „Geplant“ auslöst, die dann allesamt in der nachgelagerten Redis-Datenbank feststecken und unter Umständen nur noch sehr langsam oder gar nicht mehr abgearbeitet werden, weil die externe API, welcher der Webhook-Call galt, nicht mehr mitmacht.

    Eine pragmatische Lösung dazu ist, die gesamte Warteschlange an wartenden Webhook-Calls zu entfernen. Im Docker-basierten paperless-ngx ginge das wie folgt:

    (mehr …)