Files
yourpart3/websocket-config-guide.md
Torsten Schulz (local) d1359ccc36 Refactor proposal mapping in FalukantService to handle null characters
- Updated the proposal mapping logic to filter out proposals with null proposed characters, enhancing data integrity.
- Ensured that noble title is safely accessed with a fallback to null, improving robustness in character data handling.
2026-01-14 14:58:59 +01:00

2.9 KiB

WebSocket-Konfiguration für direkte Verbindungen

Port-Aufteilung

  • Port 2020: API (HTTP, intern, über Apache-Proxy)
  • Port 4443: Socket.io (HTTPS, extern, direkt erreichbar)
  • Port 4551: Daemon-WebSocket (HTTPS, extern, direkt erreichbar)

Umgebungsvariablen für Backend-Server (Socket.io auf Port 4443)

Füge diese Variablen zur Backend .env oder Systemd-Service-Datei hinzu:

# Socket.io HTTPS-Server
SOCKET_IO_PORT=4443
SOCKET_IO_TLS=1
SOCKET_IO_TLS_KEY_PATH=/etc/letsencrypt/live/www.your-part.de/privkey.pem
SOCKET_IO_TLS_CERT_PATH=/etc/letsencrypt/live/www.your-part.de/fullchain.pem
# Optional:
# SOCKET_IO_TLS_CA_PATH=/etc/letsencrypt/live/www.your-part.de/chain.pem

Umgebungsvariablen für Daemon (Port 4551)

Füge diese Variablen zur Daemon-Systemd-Service-Datei hinzu:

# Daemon WebSocket HTTPS-Server
DAEMON_PORT=4551
DAEMON_TLS=1
DAEMON_TLS_KEY_PATH=/etc/letsencrypt/live/www.your-part.de/privkey.pem
DAEMON_TLS_CERT_PATH=/etc/letsencrypt/live/www.your-part.de/fullchain.pem
# Optional:
# DAEMON_TLS_CA_PATH=/etc/letsencrypt/live/www.your-part.de/chain.pem

Prüfen der Konfiguration

1. Backend-Server-Logs prüfen

sudo journalctl -u yourpart-backend -n 50 -f

Du solltest sehen:

  • [Socket.io] HTTPS-Server für Socket.io konfiguriert auf Port 4443
  • [Socket.io] HTTPS-Server läuft auf Port 4443 (direkt erreichbar)

Wenn du stattdessen siehst:

  • [Socket.io] TLS nicht konfiguriert - Socket.io wird nicht verfügbar sein

Dann sind die Umgebungsvariablen nicht gesetzt.

2. Ports prüfen

sudo netstat -tlnp | grep -E "(4443|4551|2020)"

Du solltest sehen:

  • Port 2020: Backend API (HTTP)
  • Port 4443: Backend Socket.io (HTTPS)
  • Port 4551: Daemon WebSocket (HTTPS)

3. Firewall prüfen

sudo ufw status | grep -E "(4443|4551)"

Beide Ports sollten erlaubt sein.

Systemd-Service-Dateien aktualisieren

Backend-Service (/etc/systemd/system/yourpart-backend.service)

Stelle sicher, dass die Umgebungsvariablen in der [Service]-Sektion gesetzt sind:

[Service]
Environment="SOCKET_IO_PORT=4443"
Environment="SOCKET_IO_TLS=1"
Environment="SOCKET_IO_TLS_KEY_PATH=/etc/letsencrypt/live/www.your-part.de/privkey.pem"
Environment="SOCKET_IO_TLS_CERT_PATH=/etc/letsencrypt/live/www.your-part.de/fullchain.pem"

Daemon-Service (/etc/systemd/system/yourpart-daemon.service)

Stelle sicher, dass die Umgebungsvariablen in der [Service]-Sektion gesetzt sind:

[Service]
Environment="DAEMON_PORT=4551"
Environment="DAEMON_TLS=1"
Environment="DAEMON_TLS_KEY_PATH=/etc/letsencrypt/live/www.your-part.de/privkey.pem"
Environment="DAEMON_TLS_CERT_PATH=/etc/letsencrypt/live/www.your-part.de/fullchain.pem"

Nach dem Ändern der Service-Dateien:

sudo systemctl daemon-reload
sudo systemctl restart yourpart-backend
sudo systemctl restart yourpart-daemon