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 verwenden, 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 eigenen 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
Update 26.03.2020
Aktuell bin ich kein Nextcloud-Talk Anwender. Bei einem schnellem Versuch auf meiner NextcloudPi-Installation (VM) konnte allerdings von Performance keine Rede sein. Das war laufen wenn es nicht stehen ist. Kurzfristig lösbar war es leider nicht, aber evtl. hilft folgendes anderen:
HTTP/2 macht wohl schwierigen, also besser abschalten:
a2dismod http2service apache2 restart
Quelle: Nextcloud Talk is really slow when using HTTP2#2211
Und wieder http2 in Verbindung mit mpm_prefork, daher besser mpm_event verwenden:
a2dismod mpm_prefork a2enmod mpm_event service apache2 restart
Quelle: Document system requirements #3139
Leider führten alle Schritte in diesem Update dazu, das der Apache nicht mehr startete. Unguterweise stand nichts in den Logs zum Grund, also woran es nun hängt. Daher und aus zeitlichen Gründen habe ich das jetzt erstmal bleiben gelassen.
Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen. Schon immer Technik-Freund, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen.
Hallo,
ich bekmme keine Verbindung wenn ich von Android auf Desktop telefonierenn möchte.
Es macht kein Unterschied ob ich innnerhlab oder außerhalb des gleichen Netzwerks bin.
An was könnte das liegen?
Da es innerhalb des LANs schon nicht funktioniert würde ich zuerst auf Firewall tippen.
Parallel dazu das Nextcloud prüfen, was dort ggf. vermerkt ist.
Zunächst mal ohne STUN/TURN testen.
Habe noch vergessen zu erwähnen das die Verbindung zwischen zwei Desktop Clients sowohl innerhalb als auch außerhalb ohne Probleme funktioniert
Gibt es zwischen Android und dem Desktop auch innerhalb des (W)LANs (auch ohne STUN/TURN) keine Verbindung?
Funktioniert es nur in eine Richtung nicht, also z.B. Video wird nur bei einem angezeigt?
Hallo, vielen Dank für deine Antwort.
Habe den Fehler gefunden:
Habe auf meinem Smartphone ein openVPN Client installiert (damit ich unterwegs über mein LAN surfen kann), in OpenVPN war die Verbindung getrennt, in den Android Verbindungseinstellungen war die Verbindung allerdings noch aktiv, daran lag es.
Sorry für Unannehmlichkeiten.
Hallo Andy,
ich will dich nicht nerven zumal du auch nicht der support von nextcloud bist. Suche eine simple Antwort auf folgende Frage: Ich möchte nextcloud talk beruflich mit Kunden verwenden. Mit einem Freund, der es auch auf seinem Server hat funktioniert die Kommunikation. (beide haben es am desktop).
Ist es realistisch anzunehmen, dass ich mit nextcloud talk z.B. auch mit jemandem videotelefonieren kann, dem ich nur den Link zugeschickt hab – jemand der es nicht installiert hat? Ich meine ohne Stun/Turn und andere Veränderungen, die vermutlich nur mein Provider einrichten kann. Diese einfache Frage kann ich nirgends beantwortet finden bzw. kann nicht so gut Fachenglisch dazu.
PS: Ist diese Seite etwa auch eine Drupal Site? (wie meine)
Hallo Martin,
um ehrlich zu sein bin ich nicht sicher, ob es mit “Gästen” funktioniert.
An manchen Stellen liest es sich so reaus, als ob das funktionieren sollte.
Beispielsweise wird das mit “external participants” im YouTube-Video erwähnt:
Introduction to Nextcloud Talk
Bis dato getestet habe ich Nextcloud Talk nur zwischen Nextcloud-Benutzern.
Im LAN benötigt man keinen STUN-/TURN-Server, wenn es auch über das offene Internet funktionieren soll, dann wird das benötigt, allerdings nur auf der Server-Seite, wobei das nicht zwingend auf dem Nextcloud-Server laufen muss.
Es muss also nicht jeder Teilnehmer einen STUN-/TURN-Server installiert haben.
> PS: Ist diese Seite etwa auch eine Drupal Site? (wie meine)
Nein, WordPress.
OK, dann dank dir. STUN/TURN könnte demnach auch auf meinem PC laufen wenn ich es recht verstanden habe. Nun, das ist mir zu aufwändig.
Liebe Grüße aus Ö,
Martin
Ich habe hier eine 3cx Anlage im Haus… Kann man das Ding nicht als STUN-/TURN Server für nextcloud missbrauchen?
Gute Frage, hab’ ich noch nie ausprobiert.
Hat jemand von Euch auch das Problem, dass bei Chats in Gruppen die Empfänger auf ihren Smartphones nicht benachrichtigt werden? Bei Person-zu-Person geht das problemlos. Dieser Fehler geistert schon seit Monaten in den Foren herum, scheint aber immer noch nicht behoben zu sein (neuester Server- und Client-Code). Hat jemand einen Tipp?