I’m a beginner in networking things but due to my ISP I can only open a certain range of ports in my router to be accessible from the outside of my network (something like ports 11000-11500).
That means I can’t open port 443 to access my reverse proxy from the outside. Is it possible to redirect all traffic that’s coming from one of the ports in the range to port 443 of my server?
I haven’t found that possibility in my router (Fritzbox 7530) so is there a way to do this on my server (running Fedora Server)?
Get a cheap VPS on digital ocean, and make a wireguard tunnel from there to your server. Then you don’t need any open ports on your home network
This is what I do. I have a VPS that handles all the 443 traffic and then proxies it back to my home server on the correct port. I also just serve some things directly from the VPS since I have it already. It also works well to have a second box for things like uptime monitoring.
Yes that is possible. You can select in the UI that port A forwards to local Host B to Port B.
You could’ve only posted less info if you hadn’t posted at all…
Edit: Anyone who downvotes me here: This comment I commented doesn’t specifiy which UI of which software therefore it’s a pretty useless comment.
- you are not entitled to an answer by anyone.
- you are already there. Your router does support that, you just need to select it in the UI.
So, here’s a page from the online manual that specifies how to do this specifically for the FritzBox 7530
Based on the original post though I am 100% sure that OP has already seen this page, already tried it, and therefore knows that the warning under 2.10.b. applies to the OP’s case (i.e. FritzBox doesn’t allow it from UI because the ISP doesn’t allow it - that honestly had me wondering just how the FritzBox knows the ISP doesn’t allow it, but that’s a different topic).
that honestly had me wondering just how the FritzBox knows the ISP doesn’t allow it, but that’s a different topic
Because the Fritzbox uses a DS-Lite tunnel.
At the firewall level, port forwarding forwards traffic bound for one port to another machine on your network on an arbitrary port, but the UI built on top of it in your router may not include this.
If it’s not an option in your Fritzbox, your options are:
- Make the service running on your internal network listen on one of those high-number ports instead.
- Introduce another machine on the network that also performs NAT between your router and your machine
- Try to access the underlying firewall in your router to tweak the rules manually. Some routers have an admin console accessible via telnet or SSH that may allow this.
- Get a new router.
The first and last options on this list are probably the best.
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters | More Letters |
---|---|
IP | Internet Protocol |
NAT | Network Address Translation |
SSH | Secure Shell for remote terminal access |
VPS | Virtual Private Server (opposed to shared hosting) |
[Thread #949 for this sub, first seen 3rd Sep 2024, 14:45] [FAQ] [Full list] [Contact] [Source code]
Yes, you can do it on your server with a simple iptable rule.
I’m a little rusted, but something like this should work.
iptables -t nat -A PREROUTING -d [your IP] -p tcp --dport 11500 -j DNAT --to-destination [your IP:443]
You can find more information searching for “iptables dnat”. What you are saying here is: in the prerouting table (ie: before we decide what to do with this packet) tcp connections to my IP at the port 11500 must be forwarded to my IP at port 443.