防火墙中应该允许哪些端口使用 TURN 服务器?

oiv*_*mos 2 webrtc turn coturn

我想在我们公司的服务器上搭建一个turn server(coturn)。而且我不确定外部访问应该允许哪些端口。8443 是必须的,使用 WebRTC。3478 是凭证使用的必要条件。但是TURN服务器使用的端口数不胜数,是否需要在防火墙中允许它们?或者应该允许哪些端口使用CoTURN没有问题?

小智 5

我认为这取决于您要使用的传输协议和安全级别。

使用 Coturn coturn(git)

发送(或侦听)STUN/TURN 请求的默认端口是 3478。

UDP 和 TCP 侦听器的 TURN 侦听器端口(默认值:3478)。注意:实际上,如果配置允许,TLS 和 DTLS 会话也可以连接到“普通”TCP 和 UDP 端口。例如,默认侦听端口可以设置为 80 或 443,以绕过一些严格的 NAT。请记住,端口 < 1024 可能需要超级用户权限才能启动 turnserver 进程。

在我的项目中,我也使用了 tls 侦听端口,但可能没有必要:

通过 TLS 发送(或侦听)STUN/TURN 的默认端口是 5349。

TLS 和 DTLS 侦听器的 TURN 侦听器端口(默认值:5349)。注意:实际上,如果配置允许,“普通”TCP 和 UDP 会话也可以连接到 TLS 和 DTLS 端口。例如,默认的 tls 侦听端口可以设置为 443,以绕过一些严格的 NAT。请记住,端口 < 1024 可能需要超级用户权限才能启动 turnserver 进程。对于安全的 TCP 连接,我们目前支持 SSL 版本 3 和 TLS 版本 1.0、1.1、1.2。对于安全的 UDP 连接,我们支持 DTLS 版本 1。

另外,为了最后建立 p2p 连接:

每个客户端将通过 UDP 将数据发送到另一个端点:如果它发送到 TURN 服务器(到中继候选),它将发送到 49152-65535 之间的端口(如果它直接发送到另一方,它将发送到任何0-65535 范围内的端口)

--min-port 用于中继端点分配的 UDP 端口范围的下限。根据 RFC 5766,默认值为 49152。

--max-port 用于中继端点分配的 UDP 端口范围的上限。根据 RFC 5766,默认值为 65535。