ssh tunneling is amazing but can be confusing to understand and configureespecially when dealing with reverse ssh tunnel recall that our goal in all of this is to run commands that we type in an ssh client on remote ssh server when using an ssh tunnelinstead of typed commands being sent to the servernetwork traffic is sent packaged inside of ssh and then unpackaged and delivered by the ssh server imagine that you're in the following situationyou have remote access to an ssh server on an internal networkbut you want access to the web server on the same network you can' access the web server directlybut the server with ssh installed does have access and the ssh server doesn' have the tools you want to use installed on it one way to overcome this problem is to set up forward ssh tunnel without getting into too much detailrunning the command ssh - :web: justin@sshserver will connect to the ssh server as the user justin and set up port on your local system anything sent to port will be sent down the existing ssh tunnel to the ssh server and delivered to the web server figure - shows this in action figure - ssh forward tunneling that' pretty coolbut recall that not many windows systems are running an ssh server service not all is lostthough we can configure reverse ssh tunnelling connection in this casewe connect to our own ssh server from the windows client in the usual fashion through that ssh connectionwe also specify remote port on the ssh server that will be tunnelled to the local host and port (as shown in figure - this local host and port can be usedfor exampleto expose port to access an internal system using remote desktopor to another system that the windows client can access (like the web server in our example