9 Installation CoTURN service pour prosody
cyberjinh edited this page 2023-07-22 15:34:19 +02:00

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