BSD Ports

net/turnserver 4.16.0 FreeBSD

STUN/TURN Server; IPv6, DTLS support; RFCs 5389, 5766, 6062, 6156

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
Last update
Commit
87d11fd730
License
BSD3CLAUSE
Categories
net
Package size
619.4 KiB, 4081.3 KiB installed

Description

This a BSD-licensed version of the Coturn TURN Server implementation, with IPv6 and DTLS extensions.

In the other systems

SystemPortVersion
FreeBSDnet/turnserver4.16.0
OpenBSDtelephony/coturn4.16.0pl0
DragonFlynet/turnserver4.6.3

Install

Binary package:

pkg install turnserver

From the ports tree:

cd /usr/ports/net/turnserver/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	turnserver>0:net/turnserver

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest4.16.04.16.04.5.24.6.3-
FreeBSD:14:quarterly4.16.04.16.0n/a4.6.3-
FreeBSD:15:latest4.16.04.16.0n/a4.6.34.6.3
FreeBSD:15:quarterly4.16.04.16.0n/an/an/a
FreeBSD:16:latest4.16.04.16.0n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

As this port's Makefile names them.

Library 1

The full lists below include those, and their dependencies in turn.

Build dependencies 24
Run dependencies 23

No port depends on this one.

Configuration

Options name: net_turnserver

OptionDefaultDescription
DOCSoffBuild and/or install documentation
EXAMPLESoffBuild and/or install examples
MYSQLonMySQL database support
PGSQLonPostgreSQL database support
REDISonRedis support for user database and for status and statistics reporting
SQLITEonSQLite database support
USES
perl5 pkgconfig shebangfix ssl
Service scripts
turnserver

Message after installing

1) You can start and stop the turnserver manually. But, if you want
to enable turnserver as an automatically started system service,
you have to:

	a) Edit /usr/local/etc/turnserver.conf as necessary. You can always
	refer to /usr/local/etc/turnserver.conf.sample for the example
	configuration corresponding to the turnserver version currently
	installed.

	b) For user accounts settings: set up SQLite or PostgreSQL or
	MySQL or Redis database for user accounts.
	Use /usr/local/share/turnserver/schema.sql as an SQL database schema,
	or use /usr/local/share/turnserver/schema*redis as Redis database description.

	If SQLite is used, then /usr/local/var/db/turndb is the default database
	location.

	d) add line turnserver_enable="YES" to /etc/rc.conf.

	e) If you are using a non-default PREFIX (other than /usr/local),
	then edit /usr/local/etc/rc.d/turnserver file, according to
	your system settings.

	f) Restart the system or run the command:
	$ /usr/local/etc/rc.d/turnserver start

2) If you do not want the turnserver to be a system service,
   then you can start/stop it "manually", using the "turnserver"
   executable with appropriate options (see the documentation).

3) To create database schema, use schema in file /usr/local/share/turnserver/schema.sql.
The TURN Server supports (optionally) SQLite, MySQL, PostgreSQL, Redis.

4) For additional information, run:

   $ man turnserver
   $ man turnadmin
   $ man turnutils

Please be aware that running as non-root user may require additional
workarounds on FreeBSD, as suggested by this bug report:
https://github.com/coturn/coturn/issues/1098

Files

Manual pages 9
  • coturn(1)
  • turnadmin(1)
  • turnserver(1)
  • turnutils(1)
  • turnutils_natdiscovery(1)
  • turnutils_oauth(1)
  • turnutils_peer(1)
  • turnutils_stunclient(1)
  • turnutils_uclient(1)
pkg-plist 79
  • bin/turnserver
  • bin/turnadmin
  • bin/turnutils_natdiscovery
  • bin/turnutils_oauth
  • bin/turnutils_peer
  • bin/turnutils_stunclient
  • bin/turnutils_uclient
  • lib/libturnclient.a
  • var/db/turndb
  • @sample etc/turnserver.conf.sample
  • share/man/man1/turnserver.1.gz
  • share/man/man1/turnadmin.1.gz
  • share/man/man1/turnutils.1.gz
  • share/man/man1/turnutils_natdiscovery.1.gz
  • share/man/man1/turnutils_oauth.1.gz
  • share/man/man1/turnutils_peer.1.gz
  • share/man/man1/turnutils_stunclient.1.gz
  • share/man/man1/turnutils_uclient.1.gz
  • share/man/man1/coturn.1.gz
  • share/turnserver/schema.sql
  • share/turnserver/schema.userdb.redis
  • share/turnserver/schema.stats.redis
  • share/turnserver/schema.mongo.sh
  • share/turnserver/testredisdbsetup.sh
  • share/turnserver/testmongosetup.sh
  • share/examples/turnserver/etc/turnserver.conf
  • share/examples/turnserver/etc/turn_client_cert.pem
  • share/examples/turnserver/etc/turn_client_pkey.pem
  • share/examples/turnserver/etc/turn_server_cert.pem
  • share/examples/turnserver/etc/turn_server_pkey.pem
  • share/examples/turnserver/scripts/readme.txt
  • share/examples/turnserver/scripts/peer.sh
  • share/examples/turnserver/scripts/basic/relay.sh
  • share/examples/turnserver/scripts/basic/dos_attack.sh
  • share/examples/turnserver/scripts/basic/tcp_client_c2c_tcp_relay.sh
  • share/examples/turnserver/scripts/basic/udp_c2c_client.sh
  • share/examples/turnserver/scripts/basic/udp_client.sh
  • share/examples/turnserver/scripts/basic/tcp_client.sh
  • share/examples/turnserver/scripts/loadbalance/master_relay.sh
  • share/examples/turnserver/scripts/loadbalance/slave_relay_1.sh
  • share/examples/turnserver/scripts/loadbalance/slave_relay_2.sh
  • share/examples/turnserver/scripts/loadbalance/udp_c2c.sh
  • share/examples/turnserver/scripts/loadbalance/tcp_c2c_tcp_relay.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_dtls_client.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_dtls_client_cert.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_tls_client_cert.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_relay.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_relay_cert.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_tcp_client_c2c_tcp_relay.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_tcp_client.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_tls_client_c2c_tcp_relay.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_tls_client.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_udp_c2c.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_udp_client.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_sctp_client.sh
  • share/examples/turnserver/scripts/longtermsecure/secure_dos_attack.sh
  • share/examples/turnserver/scripts/longtermsecuredb/secure_relay_with_db_psql.sh
  • share/examples/turnserver/scripts/longtermsecuredb/secure_relay_with_db_mysql.sh
  • share/examples/turnserver/scripts/longtermsecuredb/secure_relay_with_db_mysql_ssl.sh
  • share/examples/turnserver/scripts/longtermsecuredb/secure_relay_with_db_mongo.sh
  • share/examples/turnserver/scripts/longtermsecuredb/secure_relay_with_db_redis.sh
  • share/examples/turnserver/scripts/longtermsecuredb/secure_relay_with_db_sqlite.sh
  • share/examples/turnserver/scripts/restapi/secure_relay_secret.sh
  • share/examples/turnserver/scripts/restapi/secure_relay_secret_with_db_mysql.sh
  • share/examples/turnserver/scripts/restapi/secure_relay_secret_with_db_mongo.sh
  • share/examples/turnserver/scripts/restapi/secure_relay_secret_with_db_psql.sh
  • share/examples/turnserver/scripts/restapi/secure_relay_secret_with_db_redis.sh
  • share/examples/turnserver/scripts/restapi/secure_relay_secret_with_db_sqlite.sh
  • share/examples/turnserver/scripts/restapi/secure_udp_client_with_secret.sh
  • share/examples/turnserver/scripts/restapi/shared_secret_maintainer.pl
  • share/examples/turnserver/scripts/selfloadbalance/secure_dos_attack.sh
  • share/examples/turnserver/scripts/selfloadbalance/secure_relay.sh
  • include/turn/ns_turn_defs.h
  • include/turn/client/TurnMsgLib.h
  • include/turn/client/ns_turn_ioaddr.h
  • include/turn/client/ns_turn_msg.h
  • include/turn/client/ns_turn_msg_addr.h
  • include/turn/client/ns_turn_msg_defs.h
  • include/turn/client/ns_turn_msg_defs_experimental.h
distinfo 2
FileSizeSHA256
turn.extra.docs-2.0.0.1.tar.gz4853793a86600fd0a30ce7aeb547e80402ce68ea9959f7dd58697e5b47fda6e33ab9ce
coturn-coturn-4.16.0_GH0.tar.gz7886714782c1560c2dfa4697dd3fbd85f2f8b506beb48f1d738351464300ef1e294760
Master sites 1
  • https://coturn.net/turnserver/extradocs/:xdocs

Commit history 2

DateCommitCreditsLog message
87d11fd730 Chris Hutchinson net/turnserver: Update 4.14.0 => 4.16.0
Port changes: - Run turnserver as non-root by default. - Pet port(lint|fmt|clippy). PR: 297251, 296810 Reported by: Frank Wall <[email protected]> Reported by Zixu Wu <[email protected]> Approved by: Chris Hutchinson <[email protected]> (maintainer) Approved by: osa, vvd (Mentors, implicit) Co-authored-by: Frank Wall <[email protected]> Co-authored-by: Zixu Wu <[email protected]> Security: GHSA-5538-7cxj-5jcc MFH: 2026Q3
fd77dbcdcf Frank Wall net/turnserver: Update 4.10.0 => 4.14.0 (fix 4 CVEs)
Changelogs: https://github.com/coturn/coturn/blob/4.14.0/ChangeLog https://github.com/coturn/coturn/releases/tag/4.11.0 https://github.com/coturn/coturn/releases/tag/4.12.0 https://github.com/coturn/coturn/releases/tag/4.13.0 https://github.com/coturn/coturn/releases/tag/4.13.1 https://github.com/coturn/coturn/releases/tag/4.14.0 - Remove dead mirror from MASTER_SITES. - Switch from http to https in MASTER_SITES. - Remove unused dependency gettext-runtime. PR: 296555 Approved by: blanket (fix 4 CVEs) Security: CVE-2026-53450 Security: CVE-2026-53449 Security: CVE-2026-53448 Security: CVE-2026-43915 Sponsored by: UNIS Labs Co-authored-by: Vladimir Druzenko <[email protected]> MFH: 2026Q2