Talk/HPB - Could not connect to server - error: "invalid_token", message: "The passed token is invalid."

Server 1 - NC Core/Storage Instance

Operating System: LXC Debian 11
Nextcloud version: 25.0.3
Nginx version: 1.18.0
PHP version: 8.1
IP: Public no NAT
Firewall: iptables/fail2ban (port 443 open, all other closed)

Server 2 - NC Signaling Instance

Operating System: LXC Debian 11
Coturn version: 4.5.2
Janus version: 1.0.1
Nats version: 2.9.10
Nginx version: 1.18.0
IP: Public no NAT
Firewall: iptables/fail2ban disabled (all ports open)

Issue
Browser Talk client will not connect when standalone HPB is enabled.

GUI displays message, “Failed to establish signaling connection. Something might be wrong in the signaling server configuration”. GUI Start call button stays greyed out.

Browser console error, Could not connect to server - error: “invalid_token”, message: “The passed token is invalid.”

Disabling the standalone HPB by removing the settings, lets Talk client make call.

Basic Testing
Server 1 is accessible via domain
Server 1 is pingable from server 2
Server 2 is accessible via domain
Server 2 is pingable from server 1

STUN: Tests okay, using both NC and external tester.
TURN: Tests okay, using both NC and external tester.
Signaling: Tests okay, using NC ( OK: Running version: 33dc5a554b496bd253bedbecc6755de514a64867 )

Browser Console Output when Talk client is connecting
This are the messages in the browser console log while inside a talk conversation.

Connecting to wss://server2.example.com/spreed for a5432y6o signaling.js:649:1

Connected
open { target: WebSocket, isTrusted: true, srcElement: WebSocket, currentTarget: WebSocket, eventPhase: 2, bubbles: false, cancelable: false, returnValue: true, defaultPrevented: false, composed: false, … }
signaling.js:659:2

Welcome received
Object { type: “welcome”, welcome: {…} }
signaling.js:786:1

Hello response received
Object { id: “1”, type: “error”, error: {…} }

error: Object { code: “invalid_token”, message: “The passed token is invalid.” }

id: “1”

type: “error”

: Object { … }
signaling.js:971:1

Could not connect to server
Object { id: “1”, type: “error”, error: {…} }
signaling.js:999:2

Reconnect in 1007.2049589979405 signaling.js:623:1

Ignore unknown error
Object { id: “1”, type: “error”, error: {…} }
signaling.js:771:4

Close
close { target: WebSocket, isTrusted: true, wasClean: true, code: 1005, reason: “”, srcElement: WebSocket, currentTarget: WebSocket, eventPhase: 2, bubbles: false, cancelable: false, … }
signaling.js:693:2

This communication just repeats over and over.

Signaling Server Output when Talk client is connecting
This is the output when trying to initiate a talk session with HPB enabled.

client.go:282: Client from 45.72.209.81:4594 has RTT of 18 ms (18.92423ms)
capabilities.go:151: Capabilities expired for https://server1.example.com/ocs/v2.php/cloud/capabilities, updating
capabilities.go:214: Received capabilities map[config:map[attachments:map[allowed:false] call:map[enabled:true] chat:map[max-length:32000 read-privacy:0] conversations:map[can-create:false] previews:map[max-gif-size:3.145728e+06] signaling:map[hello-v2-token-key:-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEUF3xxBfZ6ofKzfTXrfPeYsY588LM
SR3A9FNoQEASf51tblfo1vyg2js7tjsgrSuPRDEQi6ZBiLXD2Oc++GSfRw==
-----END PUBLIC KEY-----
session-ping-limit:200]] features:[audio video chat-v2 conversation-v4 guest-signaling empty-group-room guest-display-names multi-room-users favorites last-room-activity no-ping system-messages delete-messages mention-flag in-call-flags conversation-call-flags notification-levels invite-groups-and-mails locked-one-to-one-rooms read-only-rooms listable-rooms chat-read-marker chat-unread webinary-lobby start-call-flag chat-replies circles-support force-mute sip-support sip-support-nopin chat-read-status phonebook-search raise-hand room-description rich-object-sharing temp-user-avatar-api geo-location-sharing voice-message-sharing signaling-v3 publishing-permissions clear-history direct-mention-flag notification-calls conversation-permissions rich-object-list-media rich-object-delete unified-search chat-permission silent-send silent-call send-call-notification talk-polls message-expiration reactions chat-reference-id] version:15.0.3] from https://server1.example.com/ocs/v2.php/cloud/capabilities
client.go:282: Client from 45.72.209.81:7149 has RTT of 16 ms (16.362082ms)
client.go:282: Client from 45.72.209.81:50973 has RTT of 17 ms (17.382401ms)
client.go:282: Client from 45.72.209.81:5800 has RTT of 16 ms (16.824182ms)
client.go:282: Client from 45.72.209.81:22961 has RTT of 18 ms (18.298662ms)
client.go:282: Client from 45.72.209.81:2481 has RTT of 18 ms (18.242242ms)
client.go:282: Client from 45.72.209.81:34808 has RTT of 18 ms (18.170802ms)
client.go:282: Client from 45.72.209.81:41057 has RTT of 17 ms (17.859131ms)
client.go:282: Client from 45.72.209.81:59644 has RTT of 16 ms (16.852301ms)
client.go:282: Client from 45.72.209.81:46827 has RTT of 17 ms (17.097561ms)
client.go:282: Client from 45.72.209.81:64206 has RTT of 17 ms (17.894642ms)
client.go:282: Client from 45.72.209.81:42596 has RTT of 16 ms (16.571991ms)
client.go:282: Client from 45.72.209.81:51781 has RTT of 18 ms (18.324942ms)
client.go:282: Client from 45.72.209.81:51557 has RTT of 17 ms (17.37931ms)
client.go:282: Client from 45.72.209.81:56401 has RTT of 17 ms (17.684671ms)
client.go:282: Client from 45.72.209.81:7896 has RTT of 16 ms (16.383441ms)
client.go:282: Client from 45.72.209.81:16575 has RTT of 17 ms (17.943021ms)

Signaling Server Output when starting
I’ve started the signaling server manually for the purpose of seeing the output. Also

main.go:133: Starting up version 33dc5a554b496bd253bedbecc6755de514a64867/go1.19 as pid 3407
main.go:142: Using a maximum of 2 CPUs
natsclient.go:108: Connection established to nats://127.0.0.1:4222 (NBLI3U3MMZ7665K22ZXLOJOPJN4K43VFKLVFOUAQ53375S5HGRWR7LMZ)
grpc_common.go:167: WARNING: No GRPC server certificate and/or key configured, running unencrypted
grpc_common.go:169: WARNING: No GRPC CA configured, expecting unencrypted connections
hub.go:189: WARNING: No shared secret has been set for internal clients.
backend_storage_static.go:72: Backend backend-1 added for https://server1.example.com/
hub.go:201: Using a maximum of 8 concurrent backend connections per host
hub.go:208: Using a timeout of 10s for backend connections
hub.go:304: Not using GeoIP database
mcu_janus.go:294: Connected to Janus WebRTC Server 1.0.1 by Meetecho s.r.l.
mcu_janus.go:300: Found JANUS VideoRoom plugin 0.0.9 by Meetecho s.r.l.
mcu_janus.go:305: Data channels are supported
mcu_janus.go:309: Full-Trickle is enabled
mcu_janus.go:311: Maximum bandwidth 1048576 bits/sec per publishing stream
mcu_janus.go:312: Maximum bandwidth 2097152 bits/sec per screensharing stream
mcu_janus.go:318: Created Janus session 5063602754343848
mcu_janus.go:325: Created Janus handle 1588965894508170
main.go:263: Using janus MCU
hub.go:386: Using a timeout of 10s for MCU requests
backend_server.go:95: Using configured TURN API key
backend_server.go:96: Using configured shared TURN secret
backend_server.go:98: Adding “turn:server2.example.com:5349?transport=udp” as TURN server
backend_server.go:98: Adding “turn:server2.example.com:5349?transport=tcp” as TURN server
backend_server.go:105: No IPs configured for the stats endpoint, only allowing access from 127.0.0.1
main.go:309: Listening on 0.0.0.0:443

Janus Start Output when starting
This is the output when starting Janus.

Feb 18 21:21:43 ncs1 systemd[1]: janus.service: Succeeded.
Feb 18 21:21:43 ncs1 systemd[1]: Stopped Janus WebRTC gateway.
Feb 18 21:21:57 ncs1 systemd[1]: Starting Janus WebRTC gateway…
Feb 18 21:21:58 ncs1 janus[3722]: Janus version: 1001 (1.0.1)
Feb 18 21:21:58 ncs1 janus[3722]: Janus commit: not-a-git-repo
Feb 18 21:21:58 ncs1 janus[3722]: Compiled on: Mon May 2 06:19:49 UTC 2022
Feb 18 21:21:58 ncs1 janus[3722]: Running Janus as a daemon
Feb 18 21:21:58 ncs1 janus[3723]: Logger plugins folder: /usr/lib/x86_64-linux-gnu/janus/loggers
Feb 18 21:21:58 ncs1 janus[3723]: Loading logger plugin ‘libjanus_jsonlog.so’…
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] JSON logger disabled
Feb 18 21:21:58 ncs1 janus[3723]: Adding 1 external loggers
Feb 18 21:21:58 ncs1 janus[3723]: ---------------------------------------------------
Feb 18 21:21:58 ncs1 janus[3723]: Starting Meetecho Janus (WebRTC Server) v1.0.1
Feb 18 21:21:58 ncs1 janus[3723]: ---------------------------------------------------
Feb 18 21:21:58 ncs1 janus[3723]: Checking command line arguments…
Feb 18 21:21:58 ncs1 janus[3723]: [janus.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: configs_folder: /etc/janus
Feb 18 21:21:58 ncs1 janus[3723]: plugins_folder: /usr/lib/x86_64-linux-gnu/janus/plugins
Feb 18 21:21:58 ncs1 janus[3723]: transports_folder: /usr/lib/x86_64-linux-gnu/janus/transports
Feb 18 21:21:58 ncs1 janus[3723]: events_folder: /usr/lib/x86_64-linux-gnu/janus/events
Feb 18 21:21:58 ncs1 janus[3723]: loggers_folder: /usr/lib/x86_64-linux-gnu/janus/loggers
Feb 18 21:21:58 ncs1 janus[3723]: debug_level: 5
Feb 18 21:21:58 ncs1 janus[3723]: protected_folders: [
Feb 18 21:21:58 ncs1 janus[3723]: /bin
Feb 18 21:21:58 ncs1 janus[3723]: /boot
Feb 18 21:21:58 ncs1 janus[3723]: /dev
Feb 18 21:21:58 ncs1 janus[3723]: /etc
Feb 18 21:21:58 ncs1 janus[3723]: /initrd
Feb 18 21:21:58 ncs1 janus[3723]: /lib
Feb 18 21:21:58 ncs1 janus[3723]: /lib32
Feb 18 21:21:58 ncs1 janus[3723]: /lib64
Feb 18 21:21:58 ncs1 janus[3723]: /proc
Feb 18 21:21:58 ncs1 janus[3723]: /sbin
Feb 18 21:21:58 ncs1 janus[3723]: /sys
Feb 18 21:21:58 ncs1 janus[3723]: /usr
Feb 18 21:21:58 ncs1 janus[3723]: /var
Feb 18 21:21:58 ncs1 janus[3723]: /opt/janus/bin
Feb 18 21:21:58 ncs1 janus[3723]: /opt/janus/etc
Feb 18 21:21:58 ncs1 janus[3723]: /opt/janus/include
Feb 18 21:21:58 ncs1 janus[3723]: /opt/janus/lib
Feb 18 21:21:58 ncs1 janus[3723]: /opt/janus/lib32
Feb 18 21:21:58 ncs1 janus[3723]: /opt/janus/lib64
Feb 18 21:21:58 ncs1 janus[3723]: /opt/janus/sbin
Feb 18 21:21:58 ncs1 janus[3723]: ]
Feb 18 21:21:58 ncs1 janus[3723]: daemonize: yes
Feb 18 21:21:58 ncs1 janus[3723]: debug_colors: no
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: certificates: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: media: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: nat: {
Feb 18 21:21:58 ncs1 janus[3723]: stun_server: (Server 2 Domain)
Feb 18 21:21:58 ncs1 janus[3723]: stun_port: 5349
Feb 18 21:21:58 ncs1 janus[3723]: nice_debug: true
Feb 18 21:21:58 ncs1 janus[3723]: full_trickle: true
Feb 18 21:21:58 ncs1 janus[3723]: turn_rest_api_key: HrBT…szxjOQ…LI8Q==
Feb 18 21:21:58 ncs1 janus[3723]: ice_ignore_list: vmnet
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: plugins: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: transports: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: loggers: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: events: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: Debug/log level is 5
Feb 18 21:21:58 ncs1 janus[3723]: Debug/log timestamps are disabled
Feb 18 21:21:58 ncs1 janus[3723]: Debug/log colors are disabled
Feb 18 21:21:58 ncs1 janus[3723]: Adding ‘vmnet’ to the ICE ignore list…
Feb 18 21:21:58 ncs1 janus[3723]: Selecting local IP address…
Feb 18 21:21:58 ncs1 janus[3723]: Using (Server 2 IP) as local IP…
Feb 18 21:21:58 ncs1 janus[3723]: Token based authentication disabled
Feb 18 21:21:58 ncs1 janus[3723]: Initializing recorder code
Feb 18 21:21:58 ncs1 janus[3723]: Initializing ICE stuff (Full mode, ICE-TCP candidates disabled, full-trickle, IPv6 support disabled)
Feb 18 21:21:58 ncs1 janus[3723]: STUN server to use: (Server 2 Domain):5349
Feb 18 21:21:58 ncs1 janus[3723]: >> (Server 2 IP):5349 (IPv4)
Feb 18 21:21:58 ncs1 janus[3723]: Testing STUN server: message is of 20 bytes
Feb 18 21:21:58 ncs1 janus[3723]: >> Sent 20 bytes, waiting for reply…
Feb 18 21:21:58 ncs1 janus[3723]: >> Got 104 bytes…
Feb 18 21:21:58 ncs1 janus[3723]: >> XOR-MAPPED-ADDRESS: 0
Feb 18 21:21:58 ncs1 janus[3723]: >> Our public address is (Server 2 IP)
Feb 18 21:21:58 ncs1 janus[3723]: TURN REST API backend: (disabled)
Feb 18 21:21:58 ncs1 janus[3723]: Enabling libnice debugging…
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] No NICE_DEBUG environment variable set, setting maximum debug
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] No G_MESSAGES_DEBUG environment variable set, setting maximum debug
Feb 18 21:21:58 ncs1 janus[3723]: Debugging NICE_DEBUG=all G_MESSAGES_DEBUG=all
Feb 18 21:21:58 ncs1 janus[3723]: Using certificates:
Feb 18 21:21:58 ncs1 janus[3723]: #011(null)
Feb 18 21:21:58 ncs1 janus[3723]: #011(null)
Feb 18 21:21:58 ncs1 janus[3723]: Crypto: OpenSSL >= 1.1.0
Feb 18 21:21:58 ncs1 janus[3723]: No cert/key specified, autogenerating some…
Feb 18 21:21:58 ncs1 janus[3723]: Generating DTLS key / cert
Feb 18 21:21:58 ncs1 janus[3723]: Fingerprint of our certificate: 94:88:B7:28:E0:5A:72:BF:41:66:34:14:23:B6:30:19:6E:FF:1F:A3:52:EC:AB:6E:B4:1D:95:A2:CF:27:31:8F
Feb 18 21:21:58 ncs1 janus[3723]: Event handlers support disabled
Feb 18 21:21:58 ncs1 janus[3723]: Plugins folder: /usr/lib/x86_64-linux-gnu/janus/plugins
Feb 18 21:21:58 ncs1 janus[3723]: Loading plugin ‘libjanus_videocall.so’…
Feb 18 21:21:58 ncs1 janus[3723]: Sessions watchdog started
Feb 18 21:21:58 ncs1 janus[3723]: JANUS VideoCall plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.plugin.videocall.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.plugin.videocall.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: JANUS VideoCall plugin initialized!
Feb 18 21:21:58 ncs1 janus[3723]: #011Version: 6 (0.0.6)
Feb 18 21:21:58 ncs1 janus[3723]: #011 [janus.plugin.videocall] JANUS VideoCall plugin
Feb 18 21:21:58 ncs1 janus[3723]: #011 This is a simple video call plugin for Janus, allowing two WebRTC peers to call each other through a server.
Feb 18 21:21:58 ncs1 janus[3723]: #011 Plugin API version: 101
Feb 18 21:21:58 ncs1 janus[3723]: Loading plugin ‘libjanus_recordplay.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS Record&Play plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.plugin.recordplay.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.plugin.recordplay.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: path: /usr/share/janus/recordings
Feb 18 21:21:58 ncs1 janus[3723]: Local IP set to (Server 2 IP)
Feb 18 21:21:58 ncs1 janus[3723]: JANUS NoSIP plugin initialized!
Feb 18 21:21:58 ncs1 janus[3723]: #011Version: 1 (0.0.1)
Feb 18 21:21:58 ncs1 janus[3723]: #011 [janus.plugin.nosip] JANUS NoSIP plugin
Feb 18 21:21:58 ncs1 janus[3723]: #011 This is a simple RTP bridging plugin that leaves signalling details (e.g., SIP) up to the application.
Feb 18 21:21:58 ncs1 janus[3723]: #011 Plugin API version: 101
Feb 18 21:21:58 ncs1 janus[3723]: Loading plugin ‘libjanus_echotest.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS EchoTest plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.plugin.echotest.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.plugin.echotest.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: Registering extra Duktape functions
Feb 18 21:21:58 ncs1 janus[3723]: Joining NoSIP handler thread
Feb 18 21:21:58 ncs1 janus[3723]: Joining VideoCall handler thread
Feb 18 21:21:58 ncs1 janus[3723]: [#033[36mechotest.js#033[0m] Loading script…
Feb 18 21:21:58 ncs1 janus[3723]: [#033[36mechotest.js#033[0m] Modules folder: /usr/share/janus/duktape
Feb 18 21:21:58 ncs1 janus[3723]: [#033[36mechotest.js#033[0m] Loading module: janus-sdp
Feb 18 21:21:58 ncs1 janus[3723]: [#033[36mechotest.js#033[0m] Module loaded
Feb 18 21:21:58 ncs1 janus[3723]: [#033[36mechotest.js#033[0m] Script loaded
Feb 18 21:21:58 ncs1 janus[3723]: [#033[36mechotest.js#033[0m] Initializing…
Feb 18 21:21:58 ncs1 janus[3723]: [#033[36mechotest.js#033[0m] Initialized
Feb 18 21:21:58 ncs1 janus[3723]: Janus JavaScript plugin (Duktape) initialized!
Feb 18 21:21:58 ncs1 janus[3723]: #011Version: 12 (0.0.12)
Feb 18 21:21:58 ncs1 janus[3723]: #011 [janus.plugin.echojs] JavaScript based EchoTest
Feb 18 21:21:58 ncs1 janus[3723]: #011 This is echotest.js, a JavaScript/Duktape based clone of janus.plugin.echotest
Feb 18 21:21:58 ncs1 janus[3723]: #011 Plugin API version: 101
Feb 18 21:21:58 ncs1 janus[3723]: Loading plugin ‘libjanus_videoroom.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS VideoRoom plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.plugin.videoroom.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.plugin.videoroom.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: room-1234: {
Feb 18 21:21:58 ncs1 janus[3723]: description: Demo Room
Feb 18 21:21:58 ncs1 janus[3723]: secret: adminpwd
Feb 18 21:21:58 ncs1 janus[3723]: publishers: 6
Feb 18 21:21:58 ncs1 janus[3723]: bitrate: 128000
Feb 18 21:21:58 ncs1 janus[3723]: fir_freq: 10
Feb 18 21:21:58 ncs1 janus[3723]: JANUS TextRoom plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.plugin.textroom.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.plugin.textroom.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: json: indented
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: room-1234: {
Feb 18 21:21:58 ncs1 janus[3723]: description: Demo Room
Feb 18 21:21:58 ncs1 janus[3723]: secret: adminpwd
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: Adding TextRoom room ‘room-1234’
Feb 18 21:21:58 ncs1 janus[3723]: Registering extra Lua functions
Feb 18 21:21:58 ncs1 janus[3723]: Joining Duktape scheduler thread
Feb 18 21:21:58 ncs1 janus[3723]: Joining Duktape timer loop
Feb 18 21:21:58 ncs1 janus[3723]: Joining VideoRoom handler thread
Feb 18 21:21:58 ncs1 janus[3723]: Joining TextRoom handler thread
Feb 18 21:21:58 ncs1 janus[3723]: Joining RTCP thread for RTP forwarders…
Feb 18 21:21:58 ncs1 janus[3723]: #033[0m[#033[34mechotest.lua#033[0m]#033[0m Loading…
Feb 18 21:21:58 ncs1 janus[3723]: #033[0m[#033[34mechotest.lua#033[0m]#033[0m Loaded
Feb 18 21:21:58 ncs1 janus[3723]: #033[0m[#033[34mechotest.lua#033[0m]#033[0m Initializing…
Feb 18 21:21:58 ncs1 janus[3723]: #033[0m[#033[34mechotest.lua#033[0m]#033[0m Initialized
Feb 18 21:21:58 ncs1 janus[3723]: Joining Lua scheduler thread
Feb 18 21:21:58 ncs1 janus[3723]: Janus Lua plugin initialized!
Feb 18 21:21:58 ncs1 janus[3723]: #011Version: 12 (0.0.12)
Feb 18 21:21:58 ncs1 janus[3723]: #011 [janus.plugin.echolua] Lua based EchoTest
Feb 18 21:21:58 ncs1 janus[3723]: #011 This is echotest.lua, a Lua based clone of janus.plugin.echotest
Feb 18 21:21:58 ncs1 janus[3723]: #011 Plugin API version: 101
Feb 18 21:21:58 ncs1 janus[3723]: Loading plugin ‘libjanus_audiobridge.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS AudioBridge plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.plugin.audiobridge.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.plugin.audiobridge.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: room-1234: {
Feb 18 21:21:58 ncs1 janus[3723]: description: Demo Room
Feb 18 21:21:58 ncs1 janus[3723]: secret: adminpwd
Feb 18 21:21:58 ncs1 janus[3723]: sampling_rate: 16000
Feb 18 21:21:58 ncs1 janus[3723]: record: false
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: Local IP set to (Server 2 IP)
Feb 18 21:21:58 ncs1 janus[3723]: Adding AudioBridge room ‘room-1234’
Feb 18 21:21:58 ncs1 janus[3723]: Created AudioBridge room: 1234 (Demo Room, public, secret: adminpwd, pin: no pin)
Feb 18 21:21:58 ncs1 janus[3723]: ::: [1234][Demo Room] 16000 (will NOT be recorded)
Feb 18 21:21:58 ncs1 janus[3723]: JANUS AudioBridge plugin initialized!
Feb 18 21:21:58 ncs1 janus[3723]: #011Version: 12 (0.0.12)
Feb 18 21:21:58 ncs1 janus[3723]: #011 [janus.plugin.audiobridge] JANUS AudioBridge plugin
Feb 18 21:21:58 ncs1 janus[3723]: #011 This is a plugin implementing an audio conference bridge for Janus, mixing Opus streams.
Feb 18 21:21:58 ncs1 janus[3723]: #011 Plugin API version: 101
Feb 18 21:21:58 ncs1 janus[3723]: Loading plugin ‘libjanus_sip.so’…
Feb 18 21:21:58 ncs1 janus[3723]: Joining Lua timer loop
Feb 18 21:21:58 ncs1 janus[3723]: Audio bridge thread starting…
Feb 18 21:21:58 ncs1 janus[3723]: Joining AudioBridge handler thread
Feb 18 21:21:58 ncs1 janus[3723]: Thread is for mixing room 1234 (Demo Room) at rate 16000…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS SIP plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.plugin.sip.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.plugin.sip.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: keepalive_interval: 120
Feb 18 21:21:58 ncs1 janus[3723]: behind_nat: false
Feb 18 21:21:58 ncs1 janus[3723]: register_ttl: 3600
Feb 18 21:21:58 ncs1 janus[3723]: rtp_port_range: 20000-40000
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: SIP keep-alive interval set to 120 seconds
Feb 18 21:21:58 ncs1 janus[3723]: SIP registration TTL set to 3600 seconds
Feb 18 21:21:58 ncs1 janus[3723]: JANUS RabbitMQ transport plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Joining SIP handler thread
Feb 18 21:21:58 ncs1 janus[3723]: Joining VoiceMail handler thread
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.transport.rabbitmq.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.transport.rabbitmq.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: enabled: false
Feb 18 21:21:58 ncs1 janus[3723]: json: indented
Feb 18 21:21:58 ncs1 janus[3723]: host: localhost
Feb 18 21:21:58 ncs1 janus[3723]: to_janus: to-janus
Feb 18 21:21:58 ncs1 janus[3723]: from_janus: from-janus
Feb 18 21:21:58 ncs1 janus[3723]: ssl_cert: /etc/ssl/certs/ssl-cert-snakeoil.pem
Feb 18 21:21:58 ncs1 janus[3723]: ssl_key: /etc/ssl/private/ssl-cert-snakeoil.key
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: admin: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: RabbitMQ SSL support disabled
Feb 18 21:21:58 ncs1 janus[3723]: RabbitMQ support disabled (Janus API)
Feb 18 21:21:58 ncs1 janus[3723]: RabbitMQ support disabled (Admin API)
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] RabbitMQ support disabled for both Janus and Admin API, giving up
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] The ‘janus.transport.rabbitmq’ plugin could not be initialized
Feb 18 21:21:58 ncs1 janus[3723]: Loading transport plugin ‘libjanus_websockets.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS WebSockets transport plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.transport.websockets.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.transport.websockets.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: json: indented
Feb 18 21:21:58 ncs1 janus[3723]: ws: true
Feb 18 21:21:58 ncs1 janus[3723]: ws_port: 8188
Feb 18 21:21:58 ncs1 janus[3723]: ws_interface: lo
Feb 18 21:21:58 ncs1 janus[3723]: wss: false
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: admin: {
Feb 18 21:21:58 ncs1 janus[3723]: admin_ws: false
Feb 18 21:21:58 ncs1 janus[3723]: admin_ws_port: 7188
Feb 18 21:21:58 ncs1 janus[3723]: admin_wss: false
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: cors: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: certificates: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: libwebsockets logging: 0
Feb 18 21:21:58 ncs1 janus[3723]: Websockets server started (port 8188)…
Feb 18 21:21:58 ncs1 janus[3723]: Secure Websockets server disabled
Feb 18 21:21:58 ncs1 janus[3723]: Admin Websockets server disabled
Feb 18 21:21:58 ncs1 janus[3723]: Secure Admin Websockets server disabled
Feb 18 21:21:58 ncs1 janus[3723]: JANUS WebSockets transport plugin initialized!
Feb 18 21:21:58 ncs1 janus[3723]: WebSockets thread started
Feb 18 21:21:58 ncs1 janus[3723]: #011Version: 1 (0.0.1)
Feb 18 21:21:58 ncs1 janus[3723]: #011 [janus.transport.websockets] JANUS WebSockets transport plugin
Feb 18 21:21:58 ncs1 janus[3723]: #011 This transport plugin adds WebSockets support to the Janus API via libwebsockets.
Feb 18 21:21:58 ncs1 janus[3723]: #011 Plugin API version: 8
Feb 18 21:21:58 ncs1 janus[3723]: #011 Janus API: enabled
Feb 18 21:21:58 ncs1 janus[3723]: #011 Admin API: disabled
Feb 18 21:21:58 ncs1 janus[3723]: Loading transport plugin ‘libjanus_mqtt.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS MQTT transport plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.transport.mqtt.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [ERR] [config.c:janus_config_parse:205] Error parsing config file at line 30: syntax error
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] Couldn’t find .jcfg configuration file (janus.transport.mqtt), trying .cfg
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.transport.mqtt.cfg
Feb 18 21:21:58 ncs1 janus[3723]: [ERR] [config.c:janus_config_parse:191] – Error reading configuration file ‘janus.transport.mqtt.cfg’… error 2 (No such file or directory)
Feb 18 21:21:58 ncs1 janus[3723]: MQTT SSL support disabled
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] MQTT support disabled for both Janus and Admin API, giving up
Feb 18 21:21:58 ncs1 janus[3723]: JANUS MQTT transport plugin destroyed!
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] The ‘janus.transport.mqtt’ plugin could not be initialized
Feb 18 21:21:58 ncs1 janus[3723]: Loading transport plugin ‘libjanus_pfunix.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS Unix Sockets transport plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.transport.pfunix.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.transport.pfunix.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: enabled: false
Feb 18 21:21:58 ncs1 janus[3723]: json: indented
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: admin: {
Feb 18 21:21:58 ncs1 janus[3723]: admin_enabled: false
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: Unix Sockets server disabled (Janus API)
Feb 18 21:21:58 ncs1 janus[3723]: Unix Sockets server disabled (Admin API)
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] No Unix Sockets server started, giving up…
Feb 18 21:21:58 ncs1 janus[3723]: [WARN] The ‘janus.transport.pfunix’ plugin could not be initialized
Feb 18 21:21:58 ncs1 janus[3723]: Loading transport plugin ‘libjanus_nanomsg.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS Nanomsg transport plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.transport.nanomsg.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: [janus.transport.nanomsg.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: enabled: true
Feb 18 21:21:58 ncs1 janus[3723]: json: indented
Feb 18 21:21:58 ncs1 janus[3723]: address: ipc:///tmp/janus.ipc
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: admin: {
Feb 18 21:21:58 ncs1 janus[3723]: admin_enabled: false
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: Nanomsg server disabled (Admin API)
Feb 18 21:21:58 ncs1 janus[3723]: Nanomsg thread started
Feb 18 21:21:58 ncs1 janus[3723]: Nanomsg thread ended
Feb 18 21:21:58 ncs1 janus[3723]: JANUS Nanomsg transport plugin initialized!
Feb 18 21:21:58 ncs1 janus[3723]: #011Version: 1 (0.0.1)
Feb 18 21:21:58 ncs1 janus[3723]: #011 [janus.transport.nanomsg] JANUS Nanomsg transport plugin
Feb 18 21:21:58 ncs1 janus[3723]: #011 This transport plugin adds Nanomsg support to the Janus API.
Feb 18 21:21:58 ncs1 janus[3723]: #011 Plugin API version: 8
Feb 18 21:21:58 ncs1 janus[3723]: #011 Janus API: enabled
Feb 18 21:21:58 ncs1 janus[3723]: #011 Admin API: disabled
Feb 18 21:21:58 ncs1 janus[3723]: Loading transport plugin ‘libjanus_http.so’…
Feb 18 21:21:58 ncs1 janus[3723]: JANUS REST (HTTP/HTTPS) transport plugin created!
Feb 18 21:21:58 ncs1 janus[3723]: Configuration file: /etc/janus/janus.transport.http.jcfg
Feb 18 21:21:58 ncs1 janus[3723]: HTTP transport timer started
Feb 18 21:21:58 ncs1 janus[3723]: [janus.transport.http.jcfg]
Feb 18 21:21:58 ncs1 janus[3723]: general: {
Feb 18 21:21:58 ncs1 janus[3723]: json: indented
Feb 18 21:21:58 ncs1 janus[3723]: base_path: /janus
Feb 18 21:21:58 ncs1 janus[3723]: http: true
Feb 18 21:21:58 ncs1 janus[3723]: port: 8088
Feb 18 21:21:58 ncs1 janus[3723]: interface: lo
Feb 18 21:21:58 ncs1 janus[3723]: https: false
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: admin: {
Feb 18 21:21:58 ncs1 janus[3723]: admin_base_path: /admin
Feb 18 21:21:58 ncs1 janus[3723]: admin_http: false
Feb 18 21:21:58 ncs1 janus[3723]: admin_port: 7088
Feb 18 21:21:58 ncs1 janus[3723]: admin_https: false
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: cors: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: certificates: {
Feb 18 21:21:58 ncs1 janus[3723]: }
Feb 18 21:21:58 ncs1 janus[3723]: Going to bind the Janus API HTTP webserver to 127.0.0.1 (asked for lo)
Feb 18 21:21:58 ncs1 janus[3723]: Binding to interface ‘lo’ for the Janus API HTTP webserver
Feb 18 21:21:58 ncs1 janus[3723]: HTTP webserver started (port 8088, /janus path listener)…
Feb 18 21:21:58 ncs1 janus[3723]: HTTPS webserver disabled
Feb 18 21:21:58 ncs1 janus[3723]: Admin/monitor HTTP webserver disabled
Feb 18 21:21:58 ncs1 janus[3723]: Admin/monitor HTTPS webserver disabled
Feb 18 21:21:58 ncs1 janus[3723]: JANUS REST (HTTP/HTTPS) transport plugin initialized!
Feb 18 21:21:58 ncs1 janus[3723]: #011Version: 2 (0.0.2)
Feb 18 21:21:58 ncs1 janus[3723]: #011 [janus.transport.http] JANUS REST (HTTP/HTTPS) transport plugin
Feb 18 21:21:58 ncs1 janus[3723]: #011 This transport plugin adds REST (HTTP/HTTPS) support to the Janus API via libmicrohttpd.
Feb 18 21:21:58 ncs1 janus[3723]: #011 Plugin API version: 8
Feb 18 21:21:58 ncs1 janus[3723]: #011 Janus API: enabled
Feb 18 21:21:58 ncs1 janus[3723]: #011 Admin API: disabled
Feb 18 21:21:58 ncs1 janus[3723]: Starting streaming relay thread
Feb 18 21:21:58 ncs1 janus[3723]: Joining Streaming handler thread
Feb 18 21:21:58 ncs1 janus[3723]: Starting streaming relay thread
Feb 18 21:21:58 ncs1 janus[3723]: Joining EchoTest handler thread
Feb 18 21:21:58 ncs1 janus[3723]: Joining Record&Play handler thread
Feb 18 21:21:58 ncs1 systemd[1]: Started Janus WebRTC gateway.

Coturn Start Output when starting
This is the output when starting coturn.

Feb 18 21:14:29 ncs1 systemd[1]: coturn.service: Succeeded.
Feb 18 21:14:29 ncs1 systemd[1]: Stopped coTURN STUN/TURN Server.
Feb 18 21:16:38 ncs1 systemd[1]: Starting coTURN STUN/TURN Server…
Feb 18 21:16:39 ncs1 turnserver: 0: : 0 bytes per second allowed, combined server capacity
Feb 18 21:16:39 ncs1 turnserver: 0: : #012RFC 3489/5389/5766/5780/6062/6156 STUN/TURN Server#012Version Coturn-4.5.2 ‘dan Eider’
Feb 18 21:16:39 ncs1 turnserver: 0: : #012Max number of open files/sockets allowed for this process: 524288
Feb 18 21:16:39 ncs1 turnserver: 0: : #012Due to the open files/sockets limitation,#012max supported number of TURN Sessions possible is: 262000 (approximately)
Feb 18 21:16:39 ncs1 turnserver: 0: : #012#012==== Show him the instruments, Practical Frost: ====#012
Feb 18 21:16:39 ncs1 turnserver: 0: : TLS supported
Feb 18 21:16:39 ncs1 turnserver: 0: : DTLS supported
Feb 18 21:16:39 ncs1 turnserver: 0: : DTLS 1.2 supported
Feb 18 21:16:39 ncs1 turnserver: 0: : TURN/STUN ALPN supported
Feb 18 21:16:39 ncs1 turnserver: 0: : Third-party authorization (oAuth) supported
Feb 18 21:16:39 ncs1 turnserver: 0: : GCM (AEAD) supported
Feb 18 21:16:39 ncs1 turnserver: 0: : OpenSSL compile-time version: OpenSSL 1.1.1k 25 Mar 2021 (0x101010bf)
Feb 18 21:16:39 ncs1 turnserver: 0: :
Feb 18 21:16:39 ncs1 turnserver: 0: : SQLite supported, default database location is /var/lib/turn/turndb
Feb 18 21:16:39 ncs1 turnserver: 0: : Redis supported
Feb 18 21:16:39 ncs1 turnserver: 0: : PostgreSQL supported
Feb 18 21:16:39 ncs1 turnserver: 0: : MySQL supported
Feb 18 21:16:39 ncs1 turnserver: 0: : MongoDB is not supported
Feb 18 21:16:39 ncs1 turnserver: 0: :
Feb 18 21:16:39 ncs1 turnserver: 0: : Default Net Engine version: 3 (UDP thread per CPU core)#012#012=====================================================#012
Feb 18 21:16:39 ncs1 turnserver: 0: : Domain name:
Feb 18 21:16:39 ncs1 turnserver: 0: : Default realm:
Feb 18 21:16:39 ncs1 turnserver: 0: : ERROR: #012CONFIG ERROR: Empty cli-password, and so telnet cli interface is disabled! Please set a non empty cli-password!
Feb 18 21:16:39 ncs1 turnserver: 0: : #012CONFIGURATION ALERT: you did specify the long-term credentials usage#012 but you did not specify the default realm option (-r option).#012#011#011Check your configuration.
Feb 18 21:16:39 ncs1 turnserver: 0: : SSL23: Certificate file found: /etc/turnserver/fullchain.pem
Feb 18 21:16:39 ncs1 turnserver: 0: : SSL23: Private key file found: /etc/turnserver/privkey.pem
Feb 18 21:16:39 ncs1 turnserver: 0: : TLS1.2: Certificate file found: /etc/turnserver/fullchain.pem
Feb 18 21:16:39 ncs1 turnserver: 0: : TLS1.2: Private key file found: /etc/turnserver/privkey.pem
Feb 18 21:16:39 ncs1 turnserver: 0: : TLS cipher suite: DEFAULT
Feb 18 21:16:39 ncs1 turnserver: 0: : DTLS: Certificate file found: /etc/turnserver/fullchain.pem
Feb 18 21:16:39 ncs1 turnserver: 0: : DTLS: Private key file found: /etc/turnserver/privkey.pem
Feb 18 21:16:39 ncs1 turnserver: 0: : DTLS1.2: Certificate file found: /etc/turnserver/fullchain.pem
Feb 18 21:16:39 ncs1 turnserver: 0: : DTLS1.2: Private key file found: /etc/turnserver/privkey.pem
Feb 18 21:16:39 ncs1 turnserver: 0: : DTLS cipher suite: DEFAULT
Feb 18 21:16:39 ncs1 turnserver: 0: : NO EXPLICIT LISTENER ADDRESS(ES) ARE CONFIGURED
Feb 18 21:16:39 ncs1 turnserver: 0: : ===========Discovering listener addresses: =========
Feb 18 21:16:39 ncs1 turnserver: 0: : Listener address to use: 127.0.0.1
Feb 18 21:16:39 ncs1 turnserver: 0: : Listener address to use: (Server 2 IP)
Feb 18 21:16:39 ncs1 turnserver: 0: : Listener address to use: ::1
Feb 18 21:16:39 ncs1 turnserver: 0: : =====================================================
Feb 18 21:16:39 ncs1 turnserver: 0: : Total: 1 ‘real’ addresses discovered
Feb 18 21:16:39 ncs1 turnserver: 0: : =====================================================
Feb 18 21:16:39 ncs1 turnserver: 0: : NO EXPLICIT RELAY ADDRESS(ES) ARE CONFIGURED
Feb 18 21:16:39 ncs1 turnserver: 0: : ===========Discovering relay addresses: =============
Feb 18 21:16:39 ncs1 turnserver: 0: : Relay address to use: (Server 2 IP)
Feb 18 21:16:39 ncs1 turnserver: 0: : Relay address to use: ::1
Feb 18 21:16:39 ncs1 turnserver: 0: : =====================================================
Feb 18 21:16:39 ncs1 turnserver: 0: : Total: 2 relay addresses discovered
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : 0 bytes per second allowed, combined server capacity
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: :
Feb 18 21:16:39 ncs1 turnserver[3561]: RFC 3489/5389/5766/5780/6062/6156 STUN/TURN Server
Feb 18 21:16:39 ncs1 turnserver[3561]: Version Coturn-4.5.2 ‘dan Eider’
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: :
Feb 18 21:16:39 ncs1 turnserver[3561]: Max number of open files/sockets allowed for this process: 524288
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: :
Feb 18 21:16:39 ncs1 turnserver[3561]: Due to the open files/sockets limitation,
Feb 18 21:16:39 ncs1 turnserver[3561]: max supported number of TURN Sessions possible is: 262000 (approximately)
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: :
Feb 18 21:16:39 ncs1 turnserver[3561]: ==== Show him the instruments, Practical Frost: ====
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : TLS supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : DTLS supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : DTLS 1.2 supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : TURN/STUN ALPN supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : Third-party authorization (oAuth) supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : GCM (AEAD) supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : OpenSSL compile-time version: OpenSSL 1.1.1k 25 Mar 2021 (0x101010bf)
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: :
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : SQLite supported, default database location is /var/lib/turn/turndb
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : Redis supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : PostgreSQL supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : MySQL supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : MongoDB is not supported
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: :
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : Default Net Engine version: 3 (UDP thread per CPU core)
Feb 18 21:16:39 ncs1 turnserver[3561]: =====================================================
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : Domain name:
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : Default realm:
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: : ERROR:
Feb 18 21:16:39 ncs1 turnserver[3561]: CONFIG ERROR: Empty cli-password, and so telnet cli interface is disabled! Please set a non empty cli-password!
Feb 18 21:16:39 ncs1 turnserver[3561]: 0: :
Feb 18 21:16:39 ncs1 turnserver[3561]: CONFIGURATION ALERT: you did specify the long-term credentials usage
Feb 18 21:16:39 ncs1 turnserver[3561]: but you did not specify the default realm option (-r option).

Feb 18 21:16:39 ncs1 turnserver: 0: : turn server id=1 created
Feb 18 21:16:39 ncs1 turnserver: 0: : IO method (general relay thread): epoll (with changelist)

Feb 18 21:16:39 ncs1 turnserver: 0: : Total General servers: 32
Feb 18 21:16:39 ncs1 turnserver: 0: : SQLite DB connection success: /var/lib/turn/turndb
Feb 18 21:16:39 ncs1 systemd[1]: Started coTURN STUN/TURN Server.

Conclusion
After hours of searching for the answer and double/triple checking everyhting I still can’t seem to determain what is causing the issue. According to the signaling server output it seems to be connecting to everything properly and the browser talk client is connecting to the server its getting the “invalid token” responce back from the server.

Thank you in anvance for any help you can give.

33dc5a554b496bd253bedbecc6755de514a64867 looks like version 1.0.0

There is a similar issue in No connection to signaling server possible, Logs show incomplete OCS response · Issue #380 · strukturag/nextcloud-spreed-signaling · GitHub

Can you try to build and update to the latest version or probably use packaging / Nextcloud Talk High Performance Back-end · GitLab

Hey All!

Thank you for your response @morph027.

Well after many hours of trouble shooting, one setting at a time, I’ve solved the issue. And it was a simple and stupid one on top of it.

And since someone else might have issues getting this going, here is what I did to narrow it down.

Troubleshooting

Step 1 - Upgrade Software
Thinking along the same line as @morph027, that it might be the version of Janus/Signaling backend that might be causing the issue.

I began trying to update both Janus and the Signaling backend to the newest version on the Debian LXC Signaling Server container. Which proved to be more difficult than on might think since there was no repositories available and manually installing Ubuntu packages didn’t go very well either do to many missing dependencies in Debian.

Not wanting to build packages myself, I decided to spin up a Ubuntu 20 (Focal) container and installed all the software again using @morph027 repositories, and copied all my configs from the original container.

This did not solve my problem, still got the same error, even though all the software was at the newest version.

Step 2 - Docker
Being really puzzled and annoyed at this point, I decided to install a docker release of Nextcloud AIO in my home lab. To test the Talk/HPB setup, but mostly to look at all the config files and see if there was any difference. The docker instance worked as expected, without errors, in my home lab.

So I copied all the configs from the docker Signaling instance to my new Ubuntu LXC Signaling container. AND… The same problem continued.

Step 3 - Which Server is the issue
Being even more puzzled and annoyed at this point, I decided to figure out which server was the issue. Was it the NC Core LXC container or the NC HPB LXC container.

The quickest way to do this was to point the my new docker instance to the Ubuntu HPB LXC container. Since I copied all the configs it was just a matter of changing the domain in the Nextcloud docker instance and changing the backend domain in container.

To my surprise, it worked. No more error. This confirmed that, Ubuntu LXC HPB container was working properly.

Step 4 - What is wrong with my NC Core LXC container
Being even more puzzled but less annoyed since I was making progress, I stated looking at all the differences between the docker NC Core and LXC NC Core.

At first I thought many the Talk app, did not upgrade properly from a previous version or had some old files that where causing the issues since the LXC NC Core had been running for a few years. I manually removed all the files and settings using the CLI, then reinstalled and setup the talk app. To my disappointment this did not work, same error.

Then thinking that there was something wrong with my NC Core installation, I spun up a new LXC container and manually installed Nextcloud and pointed the Talk app at the existing Ubuntu HPB LXC container and added an extra backend for my new LXC NC instance to the HPB. To my amazement, everything worked. No more error.

Conclusion
Still puzzled, why the new instance works and the old one does not, I began looking at all the differences and ruling them out one by one.

Was it IPv6? Since my new NC Core instance did not have IPv6 assigned yet, I assigned an address and tested… Yup everything still works as it should.

At this point it was down to a difference in NC Core configs or a bad upgrade on the original container. So I started looking at the configs, and started coping all the configs from the old container to the new container and testing as I added configs for Memcahed, Redis, Email, Etc. To my surprise the new container continued to work properly… No errors… But the old instance still did not work.

At this point I only had one section left in the configs, trusted domains. In my old instance I had 3 domains (a FQDN server name domain, and two user friendly domains) and in my new one I had one (FQDN server name domain).

Light bulb moment… Was my old NC Core instance using a different domain when contacting the HPB instance? So I added every domain, in my old NC Core instance as a separate backed in the HPB instance. And to my amazement and joy the talk app on the old installation worked! (Had a drink at this point to celebrate. :smile: )

So the moral of this story my friends is that NC uses the domain that you are accessing the GUI through, in its signaling to the HPB. So if you have multiple domains setup in the NC Core instance, that you are accessing the GUI through, you also need to setup those domains in your HPB backend. (I did not see this in any documentation, so it was news to me) Hopefully this helps someone in the future.

Hey All,

I forgot to mention in my previous post, that i did test the old LXC HPB Signaling server afterwards that was mentioned in the original post that was based on Debian 11 with an older version of Janus 1.0.1 and an old version of the NC Spreed software. This worked also, without errors, once I added the extra domains.

Hello! I have the same issue. Maybe you can say where you add the extra domains?

Morning @butters,

I added the extra domains in the cool.xml.

If i remember correctly the issue was caused because inside the cool.xml I was using the servers domain “srv1.example.com” and the user domain was “drive.userdomain.com”.

Sebastian

Thank you for your reply! But i can’t find cool.xml.

Sorry, the file is coolwsd.xml and it is usually in the “/etc/coolwsd” folder, on the system that you have Collabora installed on.