How to deploy Kurento on your environment

On this page you will find how to install and configure a Kurento Media Server environment.

Remember that Kurento Server has to be geographically localised as close as possible to the participants







Requirements



Hardware

Minimum hardware requirements are:

  • 2 cores - CPU

  • 4GB di RAM

  • 40GB di HDD

Software

Recommended operating system is Ubuntu Linux 18.04 LTS Server.

 

Network

On your firewall you will have to enable these ports in order to have your Kurento Media Server working:

Inbound

  • 8888/TCP

  • 50000-65000/UDP (RTP stream)

For security reasons, port 8888/TCP has to be opened specifying IP 35.180.105.193 as source address, that corresponds to our API server IP address.

Regarding RTP stream ports, you have to open these ports to any (0.0.0.0/0) or, if users connects from a VPN or specific IP, just open that IP address source.

 

Outbound

  • 50000-65000/UDP (RTP stream)

Outbound stream needs to comprehend in its destination networks the same networks specified as source on inbound rule; this rule can be opened to “any” without causing any security issue.







Install kurento media server



Once you install the operating system, run the following commands in order to install Kurento:



sudo apt-get update && sudo apt-get install --no-install-recommends --yes gnupg sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5AFA7A83 source /etc/upstream-release/lsb-release 2>/dev/null || source /etc/lsb-release sudo tee "/etc/apt/sources.list.d/kurento.list" >/dev/null <<EOF # Kurento Media Server - Release packages deb [arch=amd64] http://ubuntu.openvidu.io/6.15.0 $DISTRIB_CODENAME kms6 EOF sudo apt-get update && sudo apt-get install --no-install-recommends --yes kurento-media-server sudo apt-get install gstreamer1.5-alsa sudo apt-get install gstreamer1.5-x sudo apt-get install gstreamer1.5-nice-dbgsym sudo service kurento-media-server start sudo systemctl enable kurento-media-server






Configure kurento media server

 

Here you find the file paths and the changes to apply.



  • In order to configure RTP stream ports you have to modify the file:

/etc/kurento/modules/kurento/BaseRtpEndpoint.conf.ini

 

  • Modify minPort and maxPort rows entering selected RTP range, for example:

minPort=50000

maxPort=65000

 

These ports are the same ports that you have to open in your firewall inbound rules



  • In order to configure STUN and external address, modify file:

/etc/kurento/modules/kurento/WebRtcEndopoint.conf.ini

 

  • Modify stunServerAddress and stunServerAddress values indicating selected parameters, for example: 

stunServerAddress=eu-stun.xenialab.com

stunServerPort=15349

It's possible to use a public STUN as reported in the example or, if present, you can specify an internal STUN server; always keep in mind that Kurento’s IP must be enabled to reach your STUN server.

You can find our public STUN server here:

US

us-stun.xenialab.com:15349

EU

eu-stun.xenialab.com:15349

SEA

sg-stun.xenialab.com:15349

 

externalAddress=15.237.148.189