Cette procédure permet l’activation du relais VoIP sur votre serveur Matrix a l’aide du service coturn.
Il s’agit bien ici de pouvoir démarrer une communication audio/vidéo entre deux partenaires.
Pour les conférences, regardez du côté Jitsi
NB : Vous avez aussi la possibilité de ne pas installer de serveur Turn et de passer par le relais Turn de Matrix.org. Ce choix imposera le paramétrage de tous les clients Element.io.
Installation du service coturn
Le service coturn implémente l’API TURN REST et doit être installé sur un serveur visible des partenaires. Si vous l’utilisez sur internet, ce service devra être installé sur une serveur disposant d’une adresse publique.
Créer un domaine internet pointant vers le futur serveur coTurn (non documenté ici, dépend de votre fournisseur de nom de dommaine). Par exemple : turn.mondomaine.com pointant vers l’ip publique de votre futur serveur coturn.
Installer le service coturn sur votre serveur
Exécutez la commande d’installation :
apt update
apt install coturn
Paramétrage du service
# Générer un mot de passe avec apg
apt install apg
apg
# Récupérer une chaîne dans les valeurs fournies
# Edition du fichier de configuration coturn
vi /etc/turnserver.conf
Ajouter à la fin du fichier :
use-auth-secret
static-auth-secret=motdepasseapg
realm=turn.mondomaine.com
listening-ip=adresseipserveurcoturn
use-auth-secret
no-tcp
user-quota=12
total-quota=1200
NB :
- Remplacez motdepasseapg par le mot passe généré par apg (sans espaces)
- Remplacer turn.mondomaine.com par votre FQDN
- Remplacer adresseipserveurcoturn par l’adresse IP publique du serveur coturn.
- no-tcp permet de ne pas écouter sur le proto tcp, les communications passent toutes en udp.
- user-quota et total-quota sont des valeurs préconisées (source).
Démarrer le service coturn
systemctl start coturn
Arrêter le service coturn
systemctl stop coturn
Redémarrer le service coturn
systemctl restart coturn
Firewall
Sens | Port | Proto |
---|---|---|
INPUT | UDP | 3478 - Sans TLS |
OUTPUT (RELATED,ESTABLISHED) | UDP | 3478 |
INPUT | UDP | 5349 - TLS |
OUTPUT (RELATED,ESTABLISHED) | UDP | 5349 |
INPUT | UDP | 49152:65535 (plage) - P2P |
OUTPUT (RELATED,ESTABLISHED) | UDP | 49152:65535 (plage) |
Paramétrage du serveur Matrix-Synapse
Editer le fichier /opt/synapse/homeserver.yaml
vi /opt/synapse/homeserver.yaml
pour ajouter ces 4 lignes (à la fin du fichier)
turn_uris: [ "turn:turn.mondomaine.com:3478?transport=udp" ]
turn_shared_secret: motdepasseapg
turn_user_lifetime: 86400000
turn_allow_guests: True
Enregistrer : ESC :wq
NB :
- Remplacez motdepasseapg par le mot passe généré par apg.
- Remplacer turn.mondomaine.com par votre FQDN
Redémarrer le service Matrix
systemctl restart matrix-synapse
Si les communications ne fonctionnent pas, vérifiez les firewalls de toutes les parties.
Aller plus loin
Licence de ce document : Creative Commons (CC BY-NC-ND 4.0)
CETTE DOCUMENTATION EST LIVRÉE “EN L’ÉTAT”, SANS GARANTIE D’AUCUNE SORTE ET DISTRIBUÉE DANS UN BUT ÉDUCATIF EXCLUSIVEMENT. L’AUTEUR, CONTRIBUTEURS DE CETTE DOCUMENTATION OU ©MYTINYDC.COM NE SAURAIENT EN AUCUN CAS ÊTRE TENUS RESPONSABLES DES DOMMAGES DIRECTS OU INDIRECTS POUVANT RÉSULTER DE L’APPLICATION DES PROCÉDURES MISES EN ŒUVRE DANS CETTE DOCUMENTATION, OU DE LA MAUVAISE INTERPRÉTATION DE CE DOCUMENT.