Konfiguration für einen ntfy und UnifiedPush Server mit nginx und systemd.
Go to file
2022-10-31 00:37:24 +01:00
README.md add prerequisites 2022-10-31 00:37:24 +01:00

UnifiedPush Server mit ntfy und CommonProxies für eine vollständige Notification im Selfhosting

Voraussetzungen:

  • Debian bullseye
  • ntfy
  • common-proxies
  • nginx

Installation

ntfy

Auf der Website von ntfy ist beschrieben, wie man ntfy am besten installiert. Ich hab mich entschlossen, das Repo zu apt hinzuzufügen und ntfy dann über apt zu installieren.

https://ntfy.sh/docs/install/

Die Konfiguration in /etc/ntfy/server.yml muss noch an die eigenen Gegebenheiten angepasst werden. Z.B. die Domain unter der der Server später laufen wird.

common-proxies

Dazu lädt man sich von https://github.com/UnifiedPush/common-proxies/releases das letzte Release herunter (aktuell ist dies https://github.com/UnifiedPush/common-proxies/releases/download/v1.4.0/up-rewrite-linux-amd64 )

Ich habe dies nach /opt/common-proxies getan. In dieses Verzeichnis kommt dann noch das Config-File /opt/common-proxies/config.toml mit folgendem Inhalt

listenAddr = "127.0.0.1:5000"
verbose = true

[gateway]
        # AllowedHosts = ["abc.localhost:8443", "abc.localhost:8080",   "myinternaldomain.local"] 
        AllowedHosts = ["ntfy.schuerz.at", "ntfy.schuerz.at:2586", "localhost", "localhost:2586"] 
        [gateway.matrix]
                enabled = true
[rewrite]
        [rewrite.fcm]
                enabled = false
        [rewrite.gotify]
                enabled = false

# see https://github.com/UnifiedPush/common-proxies/blob/main/docs/config.md for more info

wobei ntfy.schuerz.at die Domain ist, unter der mein ntfy-server erreichbar ist.

Dann muss eine systemd-unit wie hier beschrieben https://github.com/UnifiedPush/common-proxies/blob/main/docs/install.md eingerichtet werden.

nginx

In die nginx-config für den ntfy-Server https://ntfy.sh/docs/config/#nginxapache2caddy müssen lediglich folgende Zeilen hinzugefügt werden

# this sends traffic to common-proxies
	location ~ ^/(FCM|UP|_matrix) {	
		proxy_pass			http://127.0.0.1:5000;
	}

Installation der Clients

Auf Android ist die App ntfy zu installieren. Idealerweise über F-Droid https://f-droid.org/de/packages/io.heckel.ntfy/ In der App konfiguriert man noch den eigenen ntfy-Server als Default-Server.

Für Element, Schildi-Chat oder Fluffychat kann man dann über die Einstellungen->Benachrichtigungen noch auswählen, dass ntfy für die Benachrichtigungen verwendet werden soll.

In den Einstellungen zu den Benachrichtigungen noch ganz unten bei "Benachrichtigungsziele" kontrollieren, ob wirklich die eigenen Server für die Benachrichtigungen verwendet werden.

Und schon läuft die Benachrichtigung für Matrix gänzlich über eigene Benachrichtigungsservices.