Zrok for port forwarding (Windows)


I am a bit of a novice here and am trying to tunnel forward 3389 to connect to the PC in question using RDP (through the internet).
So first of all I know that I should invite myself but I can't seem to grab how to introduce the command into CMD
I can select the exe file but I can't give it commands as in this photo: Imgur: The magic of the Internet
I would also like to know what I have to do next.
Just to give you an idea, I used to do that through Ngrok by writing the command TCP 3389, and voila

Hi @CRIM. Welcome to the community and to zrok and OpenZiti!

Your photo didn't come through for some reason, sadly. :frowning:

I think you're bumping into a problem understanding what your "path" is. The "PATH" variable is where Windows will search if you don't provide a fully qualified path to an executable. By far, the easiest thing you can do is simply provide a full path to your zrok executable.

So for example, if you download the .exe and put it into "c:\tools" then just execute the commands using c:\tools\zrok.exe. Here's an example of what i jsut did locally, I downloaded the latest zrok and put it on my desktop and ran: C:\Users\clint\Desktop\zrok.exe invite and you can see that it works like you'd expect


Does that help? That give you enough information to move on? Assuming yes, you'd want to do a private share with --backend-mode tcpTunnel like this:

C:\Users\clint\Desktop\zrok.exe share private --backend-mode tcpTunnel localhost:3389

then on the machine you want to remote from you would run zrok access something like this:

zrok access private blahblahblah --bind localhost:33389

And when you RDP you would RDP to "localhost:33389" like this:

And bam, you're RDP'ed... Here you can see I've rdp'ed to the machine running the zrok private share :slight_smile:

Thank you so much
I managed to invite myself and create an account and then I enabled my environment so all good.
Now I think your command is for local networks only, I am looking to RDP through internet
What should I do, please?

Well, if you RDP as I showed, you'll be RDP'ing over the internet from 'your computer' to the remote computer, via zrok. The difference is you need a "tcpTunnel" which is only supported by zrok's "private" share/access.

So although the screen shot shows "localhost:33389", it's actually going over zrok. That looks like this:

Your RDP connection connects to zrok which is listening on 'localhost:33389' and transferred to the remote computer and offloaded there...

Thank you again for your reply.
This is a bit problematic since it also requires some configurations on the connect-from PC and since it is a work PC to which several ppl would sign-in to, it is not pragmatic :frowning:
I think I have to buy an Ngrok subscription for now until I find a cheaper solution

Your help is much appreciated

Gotcha. Yes, if you're looking for a PUBLIC tcp endpoint to connect to, zrok doesn't provide that at this time. Good luck out there, ngrok is a great option (maybe the only one?) for that use case.