Synology Erreur websocket avec Reverse Proxy Synology

kefran95

Nouveau membre
10 Mars 2023
2
0
1
Bonjour,
Je me permet de créer ce sujet suite à un problème que je rencontre. J'ai cherché sur le forum une solution, mais je n'ai pas trouvé pour mon cas.
Voilà ma configuration. j'ai un Synology (sans configuration docker) sur lequel j'utilise la partie reverse proxy pour me donner accès à des ressources en externe. Là dans mon cas c'est pour un accès à mon Home Assistant (qui ne tourne pas sur mon Synology).

Capture.JPG

Capture2.JPG

Mais j'ai une erreur pour y accéder :

Capture3.JPG

Merci d'avance si quelqu'un peut m'aider.
Franck
 
En fait le reverse proxy de DSM ne gère pas le websocket sur les "subfolders" comme l'est .../api/websocket
Il faut configurer à la main le fichier en SSH, mais c'est un peu galère.
Si le cœur t'en dit, et surtout la motivation et les compétences, tu peux adapter le script que j'avais fait pour Vaultwarden, voir le §5- Ajout d'un script pour les notifications Websocket de mon tuto Vaultwarden (voir ma signature).
 
Merci pour ton retour. Je vais regarder tes explications, mais effectivement ça sort de mes compétences... :)

Juste, est-ce que dans mon cas les informations à mettre en paramètre dans le script (bash /volume1/docker/bitwarden/enable_ws.sh vault.example.com 5555 5556) je mets l'url ha.xxxx.fr 443 8123 ?
 
Merci pour ton retour. Je vais regarder tes explications, mais effectivement ça sort de mes compétences... :)

Juste, est-ce que dans mon cas les informations à mettre en paramètre dans le script (bash /volume1/docker/bitwarden/enable_ws.sh vault.example.com 5555 5556) je mets l'url ha.xxxx.fr 443 8123 ?
Hmmm, presque.
Il faudra modifier la partie où le fichier ws.location est créé avec ton IP, et changer les subfolders pour ton api :
Bash:
echo """
location /api/websocket {
    proxy_pass http://192.168.X.XXX:$PORT_CONT;
    proxy_set_header Upgrade \$http_upgrade;
    proxy_set_header Connection \"upgrade\";
}

""" >>$LOC_DIR/websocket.locations.tonapplication
Plus loin faudra remplacer websocket.locations.vaultwarden par websocket.locations.tonapplication

edit : avant de lancer le script, je te suggère fortement de faire une copie de sauvegarde du fichier qui sera modifié (en occurrence ici ce sera /etc/nginx/app.d/server.ReverseProxy.conf si tu es sous DSM7).

Et fait attention, le nom du script n'est plus enable_ws.sh !
Relis bien la partie sur le websocket.

PPS : il faudrait que des utilisateurs de DSM 7.1.1 me confirme le bon fonctionnement du script pour DSM7, car je n'utilise plus ce script car je passer par SWAG/Nginx.