I have already created a reverse SSH tunnel on Windows using FreeSSHd and am able to connect to it when inside the network. However, my ISP has blocked port forwarding and our internet is behind a NAT. It there any way to connect to my SSH tunnel outside the network without port forwarding. Thanks!
I will try to answer. I don't have rep to comment.
Your question makes no sense, and i'd have left a comment to say so.
I have already created a reverse SSH tunnel on Windows using FreeSSHd and am able to connect to it when inside the network.
That just makes no sense.
If you're inside a network that is behind NAT, then you can connect Out. You'd then create a reverse tunnel but the computer that connects to it is from some other network.
You talk of your ISP doing this/that.
If your ISP is just blocking some port then I guess they might block some incoming. In which case you can run the ssh server on a port they don't block. I doubt the block outgoing but if they did then the other comp can run its server on an outgoing port that your ISP doesn't block.
If however your ISP is doing ISP level NAT, then AFAIK, you can't run a server.
But if the comp on the other network runs the server, and isn't behind ISP NAT then it's fine. You connect to him.
In order to do this you will need an SSH server outside your network to which you can create the tunnel, after which you can reverse-tunnel through that IP address.
Alternatively you could use a VPN system (again with the VPN breakout point on a world-reachable IP address).
There's a service called ngrok that allows tunnels to be set up allowing connections from outside on the internet.