Support & information center

Installing a custom TURN machine

qualityRTC relies on TURN servers for some of its network tests. In many cases, these are TURN servers provided by the WebRTC infrastructure being tested. Sometimes, this cannot be achieved. In such cases, customer TURN servers can be installed and used for the relevant network tests.

If you have decided to use custom TURN servers as part of your subscription plan of testRTC, then follow the instructions below to install it.

Machine preparation

We will be needing a machine to install our server. The server is installed as a Docker container.

Pick a machine to use.

Machine spec

  • Intel i5 4 cores processor or higher
  • 16 GB memory or more
  • 15 GB storage space or more
  • Linux operating system, preferably Ubuntu

Other things to prepare

  • Make sure it is has a public IP address and ample availability of bandwidth.
  • We will be needing port 443 of that machine available to us
  • Open up port 443 for incoming traffic (UDP, TCP and TLS) to the machine in your firewall
  • Open port range 49152-65535 for incoming UDP traffic to the machine in your firewall
  • Open outgoing HTTPS over port 443 to testrtc-configs.s3.amazonaws.com (this is used to renew the security certificates)

Installation procedure

Login to the machine.

Change directory to /tmp:

cd /tmpCode language: Bash (bash)

Download our TURN self-extracting installer:

wget https://s3.amazonaws.com/testrtc-quality-rtc/qualityrtc.turn.testrtc.com/coturn.testrtc.com.tar.shCode language: Bash (bash)

Add a execute permission to a downloaded file:

chmod +x coturn.testrtc.com.tar.shCode language: Bash (bash)

Select the [REGION] to associate with this installation. It should be a short string, preferably something you use internally to refer to that region/data center already.

Use [SYSLOG] to define the system log messages destination.

Execute the installer application:

./coturn.testrtc.com.tar.sh -r [REGION] -s [SYSLOG]Code language: Bash (bash)

You should see something like this output on your terminal:

Extracting script contents ... done
Loaded image: coturn.testrtc.com:v4.5.1.2
9bd488525183e02909f42854a9fc50661259802cd93e3fe9ae8e4b195ef5a2b4
CONTAINER ID        IMAGE                         COMMAND             CREATED             STATUS                  PORTS               NAMES
9bd488525183        coturn.testrtc.com:v4.5.1.2   "supervisord"       3 seconds ago       Up Less than a second                       coturnCode language: CSS (css)

Test your installation

Once installed, try it out. Use a machine located outside of that data center – connecting to it from the public internet.

sudo apt install stun-client
stun <ip>Code language: Bash (bash)

Once you’ve completed this, send us the public IP address of the machine. We will need that to configure it from our end for your qualityRTC account.

Monitor your installation

Our TURN machines offer 3 main interfaces for monitoring needs:

  1. Syslog – configured during installation
  2. Heartbeat – available at https://<insalled_ip>:9641
  3. Prometheus metrics – available at https://<installed_ip>:9641/metrics

Was this article helpful?

Related Articles