2025-05-28 10:29:40 +02:00

4.7 KiB
Raw Permalink Blame History

Synapse Docker Image mit integriertem HTTP Antispam Modul

📝 Diese Dokumentation ergänzt den Blogbeitrag
🔐 Matrix absichern mit Draupnir Antispam Modul (Blog)
und bietet eine praktische Umsetzung in Form eines vorgefertigten Docker-Images mit integriertem Antispam-Modul für Synapse.

Dieses Repository stellt ein angepasstes Docker-Image für den Matrix Synapse Server bereit, welches das Modul synapse-http-antispam bereits enthält. Es richtet sich an Administratoren, die Draupnir als externen Spamfilter für ihre Synapse-Instanz nutzen möchten besonders in Docker-Umgebungen.

📦 Docker Image

Das Image basiert auf matrixdotorg/synapse:latest und wird automatisch um das HTTP Antispam Modul erweitert. Es kann direkt genutzt oder als Basis für ein eigenes Compose-Setup verwendet werden.

Verfügbare Tags

  • repo.techniverse.net/docker-hosted/custom-synapse:latest-antispam immer die aktuellste Version
  • repo.techniverse.net/docker-hosted/custom-synapse:v1.130.0-antispam spezifische Synapse-Version mit Modul

👉 Hinweis: Die Images werden nur für offizielle Hauptversionen von Synapse gebaut, nicht für Pre-Releases oder Release Candidates.
Eine Übersicht aller verfügbaren Versionen findest du hier:
Synapse with HTTPAntiSpam: Tags

Beispiel: docker-compose.yml

services:
  synapse-antispam:
    build:
      context: .
      dockerfile: ./Dockerfile
    image: custom-synapse:latest-antispam

Alternativ kannst du direkt ein vorgefertigtes Image mit Tag verwenden, z.B.:

image: repo.techniverse.net/docker-hosted/custom-synapse:v1.130.0-antispam

🔧 Konfiguration in homeserver.yaml

Damit das Modul korrekt funktioniert, muss folgende Konfiguration in homeserver.yaml ergänzt werden:

modules:
  - module: synapse_http_antispam.HTTPAntispam
    config:
      base_url: http://matrix-draupnir:8082/api/1/spam_check
      authorization: '8EEGpJGVsR2yHmXaA9r74SwcmijLpQmraRm6HuivhG8in5KJ8H'
      enabled_callbacks:
        - check_event_for_spam
        - user_may_invite
        - user_may_join_room
      fail_open:
        check_event_for_spam: true
        user_may_invite: false
        user_may_join_room: false
      async:
        check_event_for_spam: true

🧩 Funktionsweise des Moduls

Das Modul leitet bestimmte Ereignisse an einen externen HTTP-Dienst weiter in diesem Fall Draupnir um dort zu prüfen, ob eine Aktion als Spam gewertet werden soll. Es kann Nachrichten, Einladungen und Raumbeitritte blockieren, bevor sie überhaupt ausgeführt werden.

Verfügbare Prüfungen (Callbacks):

  • check_event_for_spam prüft Nachrichten und Aktionen
  • user_may_invite prüft Einladungserlaubnis
  • user_may_join_room prüft Beitrittsberechtigung

Weitere Optionen:

  • fail_open legt fest, ob bei Ausfall von Draupnir Aktionen erlaubt bleiben
  • async aktiviert die asynchrone Prüfung für bessere Performance

Hinweis: Dieses Repository enthält keine Quelltexte des Moduls selbst, sondern dokumentiert nur die Verwendung des vorkonfigurierten Docker-Images.

💬 Support & Community

Du hast Fragen, brauchst Unterstützung bei der Einrichtung oder möchtest dich einfach mit anderen austauschen, die ähnliche Projekte betreiben? Dann schau gerne in unserer Techniverse Community vorbei:

👉 Matrix-Raum: #community:techniverse.net
Wir freuen uns auf deinen Besuch und helfen dir gerne weiter!

License License | Matrix Matrix | Matrix Mastodon