nextcloud signaling server.conf Failed to start signaling.service

hello, I have a problem with starting the signaling server and I don’t know how to deal with it. I send systemctl status signaling.service

× signaling.service - Nextcloud Talk signaling server
Loaded: loaded (/etc/systemd/system/signaling.service; enabled; preset: enabled)
Active: failed (Result: exit-code) since Mon 2025-06-23 09:20:11 UTC; 5 minutes ago
   Duration: 32ms
    Process: 353486 ExecStart=/usr/local/bin/signaling --config /etc/signaling/server.conf (code=exited, status=1/FAILURE)
   Main PID: 353486 (code=exited, status=1/FAILURE)
        CPU: 36ms

Jun 23 09:20:11 zzz systemd[1]: signaling.service: Scheduled restart job, restart counter is at 5.
Jun 23 09:20:11 zzz systemd[1]: signaling.service: Start request repeated too quickly.
Jun 23 09:20:11 zzz systemd[1]: signaling.service: Failed with result 'exit-code'.
Jun 23 09:20:11 zzz systemd[1]: Failed to start signaling.service - Nextcloud Talk signaling server.
root@zzz:/opt/nextcloud-spreed-signaling# ^C
root@zzz:/opt/nextcloud-spreed-signaling#
and config:
{
  "server": {
    "listen": ":8085",
    "domain": "192.168.1.24"
  },
  "turn": {
    "secret": "MySecretTurnAuthKey123",
    "uris": [
      "turn:192.168.1.24:3478?transport=udp",
      "turns:192.168.1.24:5349?transport=tcp"
    ]
  },
  "auth": {
    "type": "static",
    "credentials": {
      "user": "secretPassword123"
    }
  },
  "logging": {
    "level": "info"
  },
  "session_hash_key": "Bo6iIZfUAAUlPZiu56KqjI2cbPbTLYaHDHq65jWG8wg=",
  "shared_secret": "Bo6iIZfUAAUlPZiu56KqjI2cbPbTLYaHDHq65jWG8wg=",
  "backend": {
    "type": "static"
  }
}

what could cause the error?

The config you posted is the one in /etc/signaling/server.conf ?

1 Like

yes, this is my configuration

I wonder if signaling is a good solution. I’ve been working on it for two days and no result. I want to have it locally for the needs of the company only, or remote work, people connect via vpn.

I am just wondering, because usually the config is not in json… where did it come from?

from Poland, I installed the standard Ubuntu server 20.04 package, but it probably wasn’t a good idea because when installing everything on var/snap I don’t have access to the latest talk that supports HPB

maybe this will do the trick for you:

1 Like

turn is easy to install, problem only in HPB, will try again on clean install. only ubuntu without built-in nexcloud

If someone has done it a few times it may be easy, but it’s my first time configuring it :slight_smile:

assuming you mean the Nextcloud snap?

see

and this may help you too

its not difficult and we’re all glad to help :waving_hand:

you should understand, that you cannot install anything within the snap. you can however host another service on the same device without issues. thus the above method of installing Talk:HBP for Nextcloud with Docker is the easiest solution, provided you’re behind a reverse proxy.

thank you for the information, I will try. If I have any problems I will write

Hello, I have a problem with the configuration, it doesn’t display an error but it doesn’t connect correctly, what could be wrong?


without a valid SSL certicate you will not be able to validate the SSL certificate!

did you see this: High Performance Backend for Talk on Nextcloud with Docker ?

get your signal domain certified to be able to validate the certificate. that URL must be https://…

locally am I able to do this ? https verification ? without external server ?

which configs are important, can someone take a look at what’s wrong?

I would like someone to install each step step by step and only those things that are necessary for HPB to work

what could be wrong?

root@zzz:/etc/signaling/certs# sudo systemctl daemon-reload
sudo systemctl restart signaling
sudo journalctl -u signaling -n 30 --no-pager
cze 27 11:03:51 zzz signaling-hpb[213930]: hub.go:283: No trusted proxies configured, only allowing for [127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16]
cze 27 11:03:51 zzz signaling-hpb[213930]: hub.go:325: Not using GeoIP database
cze 27 11:03:51 zzz signaling-hpb[213930]: hub.go:403: No candidates allowlist
cze 27 11:03:51 zzz signaling-hpb[213930]: hub.go:414: No candidates blocklist
cze 27 11:03:51 zzz signaling-hpb[213930]: backend_server.go:118: No IPs configured for the stats endpoint, only allowing access from 127.0.0.1
cze 27 11:05:51 zzz systemd[1]: Stopping signaling.service - Nextcloud Talk signaling server (HPB)...
cze 27 11:05:51 zzz systemd[1]: signaling.service: Deactivated successfully.
cze 27 11:05:51 zzz systemd[1]: Stopped signaling.service - Nextcloud Talk signaling server (HPB).
cze 27 11:05:51 zzz systemd[1]: Started signaling.service - Nextcloud Talk signaling server (HPB).
cze 27 11:05:51 zzz signaling-hpb[214609]: main.go:162: Starting up version unreleased/go1.23.0 as pid 214609
cze 27 11:05:51 zzz signaling-hpb[214609]: main.go:169: Using a maximum of 16 CPUs
cze 27 11:05:51 zzz signaling-hpb[214609]: natsclient.go:108: Connection established to nats://127.0.0.1:4222 (NAEL5R5HSVP3BLTUOM4UZIGPYOPCEHYQGXU5HHCWKGNLB5X53D476QO5)
cze 27 11:05:51 zzz signaling-hpb[214609]: grpc_common.go:176: WARNING: No GRPC server certificate and/or key configured, running unencrypted
cze 27 11:05:51 zzz signaling-hpb[214609]: grpc_common.go:178: WARNING: No GRPC CA configured, expecting unencrypted connections
cze 27 11:05:51 zzz signaling-hpb[214609]: hub.go:214: WARNING: The sessions hash key should be 32 or 64 bytes but is 0 bytes
cze 27 11:05:51 zzz signaling-hpb[214609]: hub.go:231: WARNING: No shared secret has been set for internal clients.
cze 27 11:05:51 zzz signaling-hpb[214609]: backend_storage_static.go:122: WARNING: No backends configured, client connections will not be possible.
cze 27 11:05:51 zzz signaling-hpb[214609]: hub.go:243: Using a maximum of 8 concurrent backend connections per host
cze 27 11:05:51 zzz signaling-hpb[214609]: hub.go:250: Using a timeout of 10s for backend connections
cze 27 11:05:51 zzz signaling-hpb[214609]: hub.go:283: No trusted proxies configured, only allowing for [127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16]
cze 27 11:05:51 zzz signaling-hpb[214609]: hub.go:325: Not using GeoIP database
cze 27 11:05:51 zzz signaling-hpb[214609]: hub.go:403: No candidates allowlist
cze 27 11:05:51 zzz signaling-hpb[214609]: hub.go:414: No candidates blocklist
cze 27 11:05:51 zzz signaling-hpb[214609]: backend_server.go:118: No IPs configured for the stats endpoint, only allowing access from 127.0.0.1
cze 27 11:06:31 zzz systemd[1]: Stopping signaling.service - Nextcloud Talk signaling server (HPB)...
cze 27 11:06:31 zzz systemd[1]: signaling.service: Deactivated successfully.
cze 27 11:06:31 zzz systemd[1]: Stopped signaling.service - Nextcloud Talk signaling server (HPB).
cze 27 11:06:31 zzz systemd[1]: Started signaling.service - Nextcloud Talk signaling server (HPB).
cze 27 11:06:31 zzz signaling-hpb[214749]: main.go:162: Starting up version unreleased/go1.23.0 as pid 214749
cze 27 11:06:31 zzz signaling-hpb[214749]: main.go:169: Using a maximum of 16 CPUs
root@zzz:/etc/signaling/certs#

etc/signaling/server.conf
listen = "0.0.0.0:8444"

nats_url = "nats://127.0.0.1:4222"

backend = "https://127.0.0.1:8443"

grpc_tls_cert_file = "/etc/signaling/certs/server.crt"
grpc_tls_key_file = "/etc/signaling/certs/server.key"
grpc_tls_ca_file = "/etc/signaling/certs/ca.crt"

trusted_proxies = ["127.0.0.1", "192.168.0.0/16"]

stats_listen = "127.0.0.1:9090"
stats_trusted_ips = ["127.0.0.1"]

shared_secret = "SuperSekretInternal12345"
sessions_hash_key = "IVWskT+qsLzo/u0Bh9rPYswn3HCjaCod8iNFVbjRXwc="
[WARN] Janus is deployed on a private address (172.18.0.2) but you didn't specify any STUN server! Expect trouble if this is supposed to work over the internet and not just in a LAN...


[37] 2025/07/08 13:41:36.467792 [INF] Starting nats-server
[37] 2025/07/08 13:41:36.467895 [INF]   Version:  2.11.0
[37] 2025/07/08 13:41:36.467902 [INF]   Git:      [99e836e]
[37] 2025/07/08 13:41:36.467906 [INF]   Name:     NB5H2IAJNQPMQ3OBFAYCDHX3SMPR73KSTLBJ5MJXXA3PPFXJTX64T3LG
[37] 2025/07/08 13:41:36.467911 [INF]   ID:       NB5H2IAJNQPMQ3OBFAYCDHX3SMPR73KSTLBJ5MJXXA3PPFXJTX64T3LG
[37] 2025/07/08 13:41:36.467922 [INF] Using configuration file: /etc/nats.conf (sha256:bfa037b94ac399931a51e64559d5b8b099a1777b0832b8f5c14fee855e33b59c)
[37] 2025/07/08 13:41:36.469259 [INF] Listening for client connections on 127.0.0.1:4222
[37] 2025/07/08 13:41:36.469292 [INF] Server is ready
main.go:162: Starting up version 2.0.2~docker/go1.23.5 as pid 38
main.go:171: Using a maximum of 20 CPUs
natsclient.go:104: Connection established to nats://127.0.0.1:4222 (NB5H2IAJNQPMQ3OBFAYCDHX3SMPR73KSTLBJ5MJXXA3PPFXJTX64T3LG)
grpc_common.go:176: WARNING: No GRPC server certificate and/or key configured, running unencrypted
grpc_common.go:178: WARNING: No GRPC CA configured, expecting unencrypted connections
backend_storage_static.go:73: Backend backend-1 added for
hub.go:224: Using a maximum of 8 concurrent backend connections per host
hub.go:231: Using a timeout of 10s for backend connections
hub.go:264: No trusted proxies configured, only allowing for [127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16]
hub.go:306: Not using GeoIP database
mcu_common.go:110: Maximum bandwidth 1048576 bits/sec per publishing stream
mcu_common.go:117: Maximum bandwidth 2097152 bits/sec per screensharing stream
mcu_janus.go:161: Using a timeout of 10s for MCU requests
main.go:268: Could not initialize janus MCU (dial tcp 127.0.0.1:8188: connect: connection refused) will retry in 1s
[WARN] libcurl not available, Streaming plugin will not have RTSP support
[WARN] libogg not available, Streaming plugin will not have file-based Opus streaming
[WARN] No Unix Sockets server started, giving up...
[WARN] The 'janus.transport.pfunix' plugin could not be initialized
Exec: /opt/eturnal/erts-15.1.2/bin/erlexec -noinput +Bd -boot /opt/eturnal/releases/1.12.1/start -mode embedded -boot_var SYSTEM_LIB_DIR /opt/eturnal/lib -config /opt/eturnal/releases/1.12.1/sys.config -args_file /opt/eturnal/releases/1.12.1/vm.args -erl_epmd_port 3470 -start_epmd false -- foreground
Root: /opt/eturnal
/opt/eturnal
mcu_common.go:110: Maximum bandwidth 1048576 bits/sec per publishing stream
mcu_common.go:117: Maximum bandwidth 2097152 bits/sec per screensharing stream
mcu_janus.go:161: Using a timeout of 10s for MCU requests
mcu_janus.go:342: Connected to Janus WebRTC Server 1.3.1 by Meetecho s.r.l.
mcu_janus.go:350: Found JANUS VideoRoom plugin 0.0.10 by Meetecho s.r.l.
mcu_janus.go:355: Data channels are supported
mcu_janus.go:359: Full-Trickle is enabled
mcu_janus.go:366: Created Janus session 6551719960120561
mcu_janus.go:373: Created Janus handle 1315055834449870
main.go:303: Using janus MCU
hub.go:411: Using a timeout of 10s for MCU requests
backend_server.go:114: No IPs configured for the stats endpoint, only allowing access from 127.0.0.1
main.go:384: Listening on 0.0.0.0:8081

What could be wrong and where to look for the problem?

did you actually read this? nextcloud signaling server.conf Failed to start signaling.service - #13 by fakir_fakir

it almost works, but I have one more problem. please advise