Nextcloud, Talk, Coturn und Let’s Encrypt

Die Nextcloud-App Talk bietet die Möglichkeit, auf einfache Weise Chat als auch Audio- und Video-Anrufe zu integrieren. Möchte man dies nur im eigenen LAN verwendet, ist es mit der Installation und der Aktivierung der App bereits getan. Sollen z.B. die Smartphones auch außerhalb des LAN Audio- und Video-Telefonie nutzen, so wird ein STUN-/TURN-Server benötigt.

Vorausgesetzt wird ein bereits installierter LAMP mit Nextcloud und Let’s Encrypt (Certbot), so das nur noch der STUN-/TURN-Server fehlt.

Eigentlich ist alles zur Einrichtung von Coturn und Nextcloud in diesen beiden Anleitungen bereits gesagt worden:

Nextcloud – Help – HowTo: Setup Nextcloud Talk with TURN server

DECATEC – Nextcloud Talk mit eigenem TURN-Server (coturn)

Unter Debian installiert man Coturn einfach via

apt install coturn

Damit dieser bei jedem Boot automatisch startet noch folgendes Ausführen:

nano /etc/default/coturn

TURNSERVER_ENABLED=1

Anschließend passt man die Konfigurationsdatei unter

/etc/turnserver.conf

den eigenen Bedürfnissen an.

tls-listening-port=5349
fingerprint
lt-cred-mech
use-auth-secret
static-auth-secret=<Geheimnis>
realm=domain.tld
total-quota=100
bps-capacity=0
stale-nonce
cert=/etc/letsencrypt/live/domain.tld/fullchain.pem
pkey=/etc/letsencrypt/live/domain.tld/privkey.pem
cipher-list="ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AES:RSA+3DES:!ADH:!AECDH:!MD5"
no-loopback-peers
no-multicast-peers

Nun startet man den Daemon neu:

service coturn restart

Nextcloud Talk für eigenen STUN/TURN-Server konfigurieren

  • Als Administrator an Nextcloud anmelden.
  • Zu „Einstellungen – Talk“ wechseln.
  • Im Abschnitt „STUN-Server“ den eignen Nextcloud-Server hinterlegen.
  • Im Abschnitt „TURN-Server“ den eigenen Coturn-Server samt gemeinsamen Geheimnis hinterlegen.

Let’s Encrypt Renewal und Coturn

Damit Coturn etwas von der Erneuerung des Let’s Encrypt-Zertifikats mitbekommt, sollte in Certbot bei erfolgreichem Durchlauf ein Neustart des Daemons hinterlegt werden:

Unter

/etc/letsencrypt/renewal-hooks/deploy

ein Shell-Script mit folgendem Inhalt anlegen:

#!/bin/bash

service coturn restart

Das Skript ausführbar machen:

chmod +x /etc/letsencrypt/renewal-hooks/deploy/coturn.sh

Troubleshooting

Geht die Performance von Nextcloud nach der Aktivierung von Talk in die Knie, liegt das dem Anschein nach an einer bestimmten Kombi aus Apache, PHP und dessen Einbindung. Abhilfe schafft die Umstellung auf php-fpm.

Unter Debian gelingt dies ganz simple mit

apt install libapache2-mod-php
service apache2 restart

Quellen:

Certbot – Docs – USer Guide – Renewing Certificates

GitHub – nextcloud – spreed – Performance is bad while calling

ubuntuusers – Wiki – Bash-Skripting-Guide für Anfänger

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.