Per-node proxy instance?

Hi, we are running Jupyterhub with BatchSpawner and we would like to secure the communication between the hub and the jupyterlab session.
Also, we would like to have a fixed port which handles all communication to simplify the firewall communication. Currently, the random port range that jupyterlab needs required us to completely disable the firewall between the jupyterhub and the compute nodes.

Therefore, we’d like to run a Traefik-Proxy on every node that encrypts + redirects all communication with the jupyterlab sessions:

Is this possible with Jupyterhub + Batchspawner?