Como trabalhar o servidor Stun/Turn (COturn) no balanceador de carga da rede AWS com TLS

Como trabalhar o servidor Stun/Turn (COturn) no balanceador de carga da rede AWS com TLS

Acabei de configurar um servidor coturn, ele funciona perfeitamente bem ao usar o domínio ip ou teh sem balanceador de carga, foi testado usando esta ferramenta online:

https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/

O problema é que quando uso um balanceador de carga de rede, o redirecionamento do tcp_udp funciona na porta 80, mas ao tentar usar o tls para a porta 443, não funciona.

Configurei o balanceador de carga de rede para rotear o tráfego tls da porta 443 para o grupo de destino na porta 443 também. Estou usando o certificado letsencrypt para domain.com e *.domain.com de letsencrypt em meu balanceador de carga de rede. Os mesmos certificados são adicionados no arquivo de configuração turnserver.conf.

E esta é a minha configuração:

external-ip=1.2.3.4
listening-port=80
min-port=10000
max-port=20000
log-file=/var/log/turnserver.log
verbose
tls-listening-port=443
lt-cred-mech
server-name=domain.com realm=domain.com
user=tester:12345678
total-quota=100
stale-nonce=600
cert=/opt/coturn/fullchain.pem
pkey=/opt/coturn/privkey.pem
cipher-list="ECDH+AESGCM:ECDH+CHACHA20:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS"

log-file=/var/log/coturn.log


# Specify the process user and group
proc-user=turnserver
proc-group=turnserver

E é isso que recebo do log:

3170: IPv4. tcp or tls connected to: 9.8.7.6:34274
3170: session 001000000000003730: TCP socket closed remotely 9.8.7.6:34274
3170: session 001000000000003730: closed (2nd stage), user <> realm <domain.com> origin <>, local 0.0.0.0:443, remote 9.8.7.6:34274, reason: TCP connection closed by client (callback)

E, aliás, sempre recebo o erro 701 da ferramenta online.

Obrigado,

Responder1

Não use um balanceador de carga com servidores STUN/TURN. Você pode aumentar o servidor ou implementar seu próprio "balanceador de carga" girando o IP do servidor em seu aplicativo cliente.

Você parece não entender os fundamentos do que é um balanceador de carga e como o STUN/TURN funciona, especialmente em HTTPS. O TURN não está usando HTTP/HTTPS, apenas as portas 80 e 443. Isso serve para contornar firewalls que normalmente têm essas portas abertas.

informação relacionada