Prérequis un serveur prosody, un certificat pour notre domaine turn.im.cyberjinh.fr certbot est notre ami
Voir aussi le très bonne article de Stéphane Bortzmeyer sur la RFC 5766
Installation coturn
apt install coturn
Sauvegarde le conf de base
mv /etc/turnserver.conf /etc/turnserver.conf.orig
Configuration du service coturn
sudo vim /etc/turnserver.conf
listening-port=3478
tls-listening-port=5349
fingerprint
lt-cred-mech
use-auth-secret
static-auth-secret=replace-this-secret
realm=turn.im.cyberjinh.fr
total-quota=100
stale-nonce=600
pkey = /etc/private/certs/im.cyberjinh.fr/privkey.pem
cert = /etc/private/certs/im.cyberjinh.fr/fullchain.pem
cipher-list="ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384"
no-sslv3
no-tlsv1
no-tlsv1_1
no-tlsv1_2
dh2066
no-stdout-log
log-file=/var/tmp/turn.log
#log-file=/dev/null
no-loopback-peers
no-multicast-peers
proc-user=turnserver
proc-group=turnserver
Génération du code secret
sed -i "s/replace-this-secret/$(openssl rand -hex 32)/" /etc/turnserver.conf
On ouvre ensuite les ports sur notre firewall en l'occurance sur de l'UDP et TCP port 3478 & 5349
On active le service turn sur prosody, cela se fait dans la configuration des modules turncredentials module
modules_enabled = {
-- other modules ...
"turncredentials";
}
Dans la conf prosody on ajoute en modifiant avec notre secret généré plus haut
turncredentials_host = "turn.im.cyberjinh.fr"
turncredentials_secret = "replace-this-secret"
On ajoute a notre serveur DNS les entrés qui vont bien On peut aussi modifié le /etc/hosts de notre machine qui heberge le service TURN On restart les services
sudo systemctl restart prosody coturn.service
En cas de probleme, on peut s'aider de ce site en précisant son serveur STUN Testeur TURN
doc externe : coturn prosody doc & Install Coturn on Debian