Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kurento Media Server 穿透服务(STUN/TURN) 安装 #2

Open
chapin666 opened this issue May 19, 2017 · 0 comments
Open

Kurento Media Server 穿透服务(STUN/TURN) 安装 #2

chapin666 opened this issue May 19, 2017 · 0 comments

Comments

@chapin666
Copy link
Owner

如果您在 NAT 环境(即任何云提供商)中安装Kurento Media Server,您需要在/etc/kurento/modules/kurento/WebRtcEndpoint.conf.ini中提供STUN服务器配置。 除此之外,您将必须打开您的安全组中的所有UDP端口,因为STUN将使用从整个0-65535范围可用的任何端口。

虽然在大多数情况下,在KMS配置文件中配置STUN服务器就足够了,但您可能需要安装TURN服务器,例如coturn)。 这里说明如何安装TURN服务器:

[1] 下载安装包

[2] 解压内容。 你应该获取一个带有安装说明的INSTALL文件和一个.deb包。 按照说明安装软件包。

[3] 安装软件包后,您需要修改/etc/init.d/coturn中的启动脚本。

将外部和本地IP添加:

EXTERNAL_IP=$(curl http://169.254.169.254/latest/meta-data/public-ipv4)

LOCAL_IP=$(curl http://169.254.169.254/latest/meta-data/local-ipv4)

通过DAEMON_ARGS变量来修改考虑在内的IPs,以及长期用户和密码凭据(在此情况下为kurento:kurento,但可能不同),realm和其他一些选项:

DAEMON_ARGS="-c /etc/turnserver.conf -f -o -a -v -r kurento.org -u kurento:kurento --no-stdout-log --external-ip $EXTERNAL_IP/$LOCAL_IP"

[4] 然后让我们启用turnserver作为自动服务守护程序运行。 为此,打开文件/etc/default/coturn并取消注释键:

TURNSERVER_ENABLED=1

[5] 现在,你要告诉KMS服务器TURN已经安装。为此,修改/etc/kurento/modules/kurento/ WebRtcEndpoint.conf.ini文件中的turnurl键值:

turnURL=kurento:kurento@<public-ip>:3478
stunServerAddress=<public-ip>
stunServerPort=3478

下列端口应该在防火墙中打开:

  • 3478 TCP & UDP

  • 49152 - 65535 UDP: 根据RFC 5766,这些是TURN服务器将用于交换媒体的端口。 可以使用turnserver中的--max-port--min-port选项更改这些端口。

虽然RFC指定TURN使用的端口,但如果使用STUN,则需要打开所有UDP端口,因为这些端口不受约束。

[6] 最后要做的是启动coturn服务器和媒体服务器:

sudo service coturn start 

sudo service kurento-media-server-6.0 restart

请使用此测试应用程序检查您的安装

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant