Below steps allow you to setup Websocket support for your Bitwarden_rs installation running on Synology Diskstation. You can do all steps using the GUI so there is no SSH Access needed.
- Working HTTPS Reverse proxy Setup (Control Panel -> Application Portal -> Reverse Proxy)
- Set Enviourment Variable
WEBSOCKET_ENABLED=true
in your Bitwarden container and expose the container port3012
to a local port, in my case5556
.
- Download enable_ws.sh
- Upload the script "enable_ws.sh" onto your Diskstation. I would recommand putting it in your Bitwarden directory. In my case
/volume1/docker/bitwarden
Control Panel -> Task Scheduler -> Create -> Scheduled Task -> User-defined Script
Make sure to amend the command according to your setup.
/volume1/docker/bitwarden/enable_ws.sh
= Full path to previously uploaded scriptvault.example.com
= Hostname of your Bitwarden_rs as configured in the Reverse Proxy5555
= Exposed ROCKET_PORT by Docker (The same as in your Reverse Proxy setup)5556
= Exposed WEBSOCKET_PORT by Docker
Run Command (My example):
bash /volume1/docker/bitwarden/enable_ws.sh vault.example.com 5555 5556
General Settings
Task -> Enable BW WS
User -> root
Enabled -> Tick
Schedule
Run on the following days -> Daily
Frequency -> Every hour
Task Settings:
(Optional) Enable Notifications
Run Command: <Paste Command Crafted Above>
Save and run the new task by selecting Run
. Login into your Webvault and confirm in your web browsers developer console that the connection to wss://
succeded.
Hi guys and thanks for the script :)
I recently hosted another application on my NAS and needed a reverse proxy for that, too. I noticed that the script adds the websocket include statement to all DSM Reverse Proxy entries in the nginx configuration file. I updated the script to only add the include statement to the reverse proxy part for vaultwarden. The next text part to identify the vaultwarden part was the Reverse Proxy Source Port (most probably your https port). For that I added the Source Port as a parameter. Also I made the the IP_NAS variable into a parameter, since it is a configuration value from my point of view.