I’ve just replied to another post with the exact same suggestion.
Have you tried CloudFlare tunnel? It’s a great option if you have control of your domain’s DNS.
It’s a great option for you because you wouldn’t have to open any ports. CloudFlare will setup the DNS for you and tunnel it to your application. All you need to do is get your domain on their DNS servers, setup the tunnel and install the add-on with your token.
SSL and access config comes free.