I created a simple script to automatically request a port to ProtonVPN servers and assign it to qbittorrent:
Giu176
I created a script exactly for that, I'm using it for months now and it's working fine: https://github.com/giu176/ProtonVPN-auto-NATPMP
Me and my friend were stupid I can't blame the school
I know, I know. But when I learned how to use a computer at school 20 years ago it wasn't an option or if it was the teachers didn't want to take any risk.
Same, and remember, go to the windows logo and press shutdown, don't use the power button on the case!
Martin Router King, from my wireless internet exam last semester
If you are using Linux I wrote a script just for that!
https://github.com/giu176/ProtonVPN-auto-NATPMP
I'm using it on my headless server and it worked fine for the last two months. Tell me if you need help in the setup (the Readme should be exhaustive).
To connect your domain to your IP use godaddy website, it should have a section where you can configure a dns entry, you can specify an IP address (your public IP) and, after a while, every device on the internet connecting to YOURDOMAIN.COM will be send to your home. If godaddy doesn't offer a dns service you have to buy it somewhere else like on cloudflare, here I think you will need to prove that you own YOURDOMAIN.COM and then setup your IP in the dns. If you don't have a static IP you need a DDNS (Dynamic DNS). After that you open the port number 443 on your home router so that https requests will be send to a device of your choice, this device will host your reverse proxy, the reverse proxy binds a domain name (the one you brought) or a sub domain to a service of you choice on your local network, doing this you don't expose the local server directly and you need to open a single port only.
I bought a domain on namecheap.com and it has a configurable dns built in so I hope that godaddy has one too. I use Caddy as a reverse proxy for my jellyfin instance instead of Nginex, I think that they are both valid, another thing other people said in the comment is to access jellyfin via wireguard tunnel and I confirm that is the best choice if you don't have specific needs, let me explain. The reverse proxy automatically generates ssl certificates using let's encrypt allowing you to cast from an android phone to a Google chromecast (this seems to be the only way to do it and works very well for me). I also configured other services on caddy, in my setup I block every request to the reverse proxy that doesn't arrive from inside my local network (except jellyfin so I can use it remotely), I know that it's not the intended use of a reverse proxy but it makes some things possible that otherwise will need more configuration:
- I have two separate networks in my home, my reverse proxy has a double interface so I can easily access all services from devices on the main network.
- I don't need to configure local dns rewrites to my services neither I have to add exceptions for dns rebind inside my router, I simply add a new rule to caddy and it just work.
- I have https for every service on my network without annoying messages on the browser.
If you think this lazy use of the reverse proxy could be a problem please tell me your thoughts!
It's me right now plus I have cat on my legs sleeping.. I can't move
Thanks for sharing! I still need the script because I already have a tunnel on a Mikrotik OS vm router to route all my containers through the vpn.