English English

Cómo compilar y configurar el servidor "turn" "coturn"

Coturn es un "servidor de giro" y "aturdimiento" que puede ser usado para, por ejemplo: VoIP. Permite crear una conexión entre los clientes que están detrás de un NAT o en diferentes redes.

Los datos pueden ser enviados a través de esta conexión creada por su servidor de "turno".
Coturn también puede ser usado con "NextCloud" o "Matrix server".

Descargar y compilar "coturn"

Ve a la carpeta "/usr/local/":

cd /usr/local


Descargar la última versión (Recomendado)
https://github.com/coturn/coturn/releases

Alternativa: En su lugar, también puedes crear "coturn" a partir de la versión de desarrollo, si quieres probar el software.

git clone https://github.com/coturn/coturn.git

 

Extraiga la carpeta "coturn" (si ha descargado la versión "coturn" como un archivo zip).

Por favor, vaya a su carpeta "coturn" y compile la aplicación.

cd coturn
./configure
make && make install

 

Por favor, cree una carpeta para los "log" archivos

mkdir /var/log/turn

 

Configurar el archivo "/etc/turnserver.conf"

Puede utilizar el archivo de configuración turnserver.conf, que está disponible en su carpeta de repositorio github descargada ("coturn/examples/etc").
Sin embargo, este tutorial utiliza un archivo de configuración personalizado, turnserver.conf, que puede ser descargado desde este repositorio Github:
https://github.com/a-dridi/Linux_config-files/blob/master/turnserver/turnserver.conf

 

vim /etc/turnserver.conf

Edite los ajustes y ajuste la sección de ajustes importantes al entorno de su servidor.
Por favor, defina también un "static-auth-secret" que es la contraseña para acceder al servidor de turno y puede ser utilizado por ejemplo por el servidor Matrix.

Configure su servidor de turno a través del archivo "/etc/turnserver.conf".
Una versión de plantilla (turnserver.conf.default) está disponible en la carpeta donde se encuentra su carpeta de instalación.

Un ejemplo de configuración:

 

listening-port=3478
tls-listening-port=5349

proc-user=turnserver
proc-group=turnserver

use-auth-secret
static-auth-secret=MY_PASSWORD_SECRET
realm=matrix.myserver.tld

#for debugging:
#verbose

fingerprint

# special case the turn server itself so that client->TURN->TURN->client flows work
allowed-peer-ip=10.0.0.1

#Security
#to avoid risk of DoS
# 200 Simultaneous relayed calls
total-quota=200

# consider whether you want to limit the quota of relayed streams per user (or total) to avoid risk of DoS.
user-quota=12 # 4 streams per video call, so 12 streams = 3 simultaneous relayed calls per user.

#Relay Ports: Opened Port range in accord with UFW Firewall
min-port=49152
max-port=49157

cert=/etc/turnserver-ssl/fullchain.pem
pkey=/etc/turnserver-ssl/privkey.pem

# Flag that can be used to disallow peers on the loopback addresses (127.x.x.x and ::1).
# This is an extra security measure.
#
no-loopback-peers

# Flag that can be used to disallow peers on well-known broadcast addresses (224.0.0.0 and above, and FFXX:*).
# This is an extra security measure.
#
no-multicast-peers

 

Activar "coturn"

vim /etc/default/coturn
TURNSERVER_ENABLED=1

 

Por favor, también establezca un servicio de "coturn"

vim /etc/systemd/system/coturn.service
[Unit]
Description=coturn
Documentation=man:coturn(1) man:turnadmin(1) man:turnserver(1)
After=syslog.target network.target

[Service]
Type=forking
User=turnserver
Group=turnserver
RuntimeDirectory=turnserver
RuntimeDirectoryMode=0750
EnvironmentFile=/etc/default/coturn
PIDFile=/run/turnserver/turnserver.pid
ExecStart=/usr/local/coturn/bin/turnserver --daemon --pidfile /run/turnserver/turnserver.pid --syslog -c /etc/turnserver.conf $EXTRA_OPTIONS
Restart=on-abort
LimitCORE=infinity
LimitNOFILE=1000000
LimitNPROC=60000
LimitRTPRIO=infinity
LimitRTTIME=7000000
CPUSchedulingPolicy=other
UMask=0007

[Install]
WantedBy=multi-user.target

 

Ahora habilita el servicio creado

systemctl enable coturn

 

Crear el usuario "turnserver" para este programa

useradd -d /usr/local/coturn/bin/turnserver -s /bin/false turnserver
chown turnserver:turnserver -R /usr/local/coturn

 

Reiniciar "coturn"

service coturn restart

Ahora puedes usar el servidor "coturn". Puedes acceder a él a través de los puertos definidos y el servidor público ip. En este ejemplo es el puerto "3478".

Coturn
https://github.com/coturn/coturn

Usamos cookies en nuestro sitio web. Algunas de ellas son esenciales para el funcionamiento del sitio, mientras que otras nos ayudan a mejorar el sitio web y también la experiencia del usuario (cookies de rastreo). Puedes decidir por ti mismo si quieres permitir el uso de las cookies. Ten en cuenta que si las rechazas, puede que no puedas usar todas las funcionalidades del sitio web.