Installer un serveur TURN/STUN pour Talk@Nextcloud
L'application "Talk" de Nextcloud gagne toujours plus en maturité à chaque nouvelle version. Pour en profiter pleinement, il est nécessaire de paramétrer un serveur TURN/STUN dans la page de configuration du module Talk de Nextcloud.
Nous allons voir ici comment installer un serveur TURN/STUN sous Debian Buster.
On commence, sans originalité, par installer le paquet :
apt install coturn
Et on le configure dans /etc/turnserver.conf :
tls-listening-port=5349 fingerprint use-auth-secret static-auth-secret=secretkey realm=turn.monurl.tld total-quota=100 bps-capacity=0 stale-nonce cert=/etc/turnserver/cert.pem pkey=/etc/turnserver/privkey.pem cipher-list="ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256" no-loopback-peers no-multicast-peers
Conformément à ce que nous venons d'écrire dans le fichier de configuration, il faut alors ouvrir le port 5349 de l'éventuel pare-feu, par exemple si on utilise nftables en ajoutant cette ligne dans /etc/nftables.conf :
tcp dport 5349 accept
Il convient également de rendre la clé et le certificat permettant le chiffrement accessibles à l'utilisateur turnserver dans /etc/turnserver/*.pem. Si les certificats ont été obtenus avec letsencrypt, on pourra par exemple effectuer les commandes suivantes :
mkdir /etc/turnserver cp /etc/letsencrypt/live/turn.monurl.tld/privkey.pem /etc/turnserver/ cp /etc/letsencrypt/live/turn.monurl.tld/cert.pem /etc/turnserver/ chmod a+r /etc/turnserver/privkey.pem systemctl restart turnserver
Il sera nécessaire de répéter les opérations ci-dessous à chaque mise à jour du certificat et de la clé privée par let's encrypt (ou votre fournisseur de certificat TLS) !
Le serveur TURN/STUN doit alors être fonctionnel !