It is really, really great that there are still tech channels which actually share tech knowledge and don't just publish videos, such as "top languages to learn in 2025". I really hope you keep up with this great videos and don't become a slave to the algorithm.
Man tell me about it, I made a video last year ranting about videos claiming Top programming languages in 2020 ruclips.net/video/IjOjiF4_cQc/видео.html
Man tell me about it, I made a video last year ranting about videos claiming Top programming languages in 2020 ruclips.net/video/IjOjiF4_cQc/видео.html
This is BY FAR the best explanation of local & remote port forwarding that I have seen anywhere. It makes it very clear exactly who is requesting what from where at each point in the request, and the separation of resources is most helpful ; most other explanations will have the requested resource and the ssh server be on the same host, not making it clear that the requested resource can actually be running on a different host. Huge thanks to you for sharing such a great video with us!
This covered in 7 minutes (only needed local) what I've been trying to understand for a couple weeks... I normally don't "research" on youtube, but your practical example was great. Thanks so much!
Hey there - I stumbled upon your video when I was looking up reverse proxies and I just wanted to say that you're such an excellent explainer! I see from your profile that you update frequently and consistently. Thank you for doing what you do, I'd definitely recommend this site to my friends when you cover topics they like!
Thank you soo much cal for taking the time to write this 🙏 very happy you like the content ! I try to upload frequently and i talk about topics that i am interested on
this was such a clear and helpful explanation. I have been struggling with this concept for a while but you broke it down perfectly. Thank you for making it so easy to understand
Great Video, I am using this technique to create tunnel from my local to server, additionally, I am using "-fNL" params. The -f option tells the ssh command to run in the background and -N not to execute a remote command.
Thank you sir. This was exactly what I needed. I don't know why on Earth I had so much trouble building a remote ssh tunnel, but I did and it was only after viewing your video that I was able to get everything working solidly. Once again thank you for the clear explanation.
Thank you for making this video Hussein! I've been trying to wrap my head around remote port forwarding for the longest damn time. I live in an area with shared wifi and I've been looking forever for a way to circumvent the stupid firewall so I can get some of those sweet sweet LetsEncrypt certs for my Raspberry Pi's! I've watched so many videos on this and not found a single one that isn't either a) using PuTTY on Windows, which is useless since it doesn't show which command line args to use or b) a purely conceptual explanation with no examples or instructions!
Noah Williams thanks Noah! Glad I could help. This concept is very complex believe me I go back to my videos all the time to remember how I did things. So i try to put the commands .. which reminds me must make sure i put it on this YT description
This is a really good explanation of SSH tunneling and port forwarding! Unfortunately one can only appreciate the accuracy after seeing so many very confusing and even incorrect explanations on RUclips. It's important to get the terms right and use proper examples (e.g. "local" or "remote" from which machine's perspective) and where the connection is initiated etc. Too often something like "SSH -R 1080:localhost:1080" is used which is the worst way, as students can't see which machine each component is referring to and what's actually happening here. So, thank you for going the extra mile with the diagrams and being careful with how you use the terminology.
I don't have a public dynamic ip. My ISP shares my IP with others, it means I am behind a NAT. I tried to use remote port forwarding to see my DVR and NAS, but the problem is that I can not publish ports in my router. In the example described in the video that tunne it's not needed, you could configure the router to forward the ports of that internal resource with out needing a 3rd party server. However, I am able to see a port of an external database server and see it as a local resource.
@@hnasr what could I do with that? I have my own server in cloud at cost, that's where I tryied to do the tunneling solution , what do you suggest to install to achive my purpose?
2:00 local vs remote port forwarding 5:00 Clear example of local port forwarding Forwards local traffic originating from my machine to a public ssh server which then forwards it to the private server we’re accessing.
Glad its helpful! correct its rare to find a public ssh server that has port 22 open but very easy to spin one up with a $5 droplet from cloudflair even cheaper
Thank you very much for the great explanation! I have been wondering, if it is possible to achieve the same thing (hosting a web server) if my router gets a private IP from the ISP... I just cannot find a straight forward tutorial or explanation, how this thing may work. In your use case, if I understood correctly, you use the public IP of the router, but mine is private as it doesn't match with the IP what I see from "outside" ip tracking webpages, and the port forwarding simply doesn't work.
Marcelo, the only option I found is, to use a service like ngrok or other alternatives with similar functionality. Basically it is a service, which creates a channel between your server and an external hosting service. The mentioned one has some free possibilities, so you can try it out just by creating a free account. For a paid plan you can also create your own domain if you like. I hope this helps a little. Cheers!
@@TyphoonBeard thank Florián, I'm here breaking my head.. at the moment I'm trying ngrok without success. Actually I just wanna turn on my computer over the lan (Wake on LAN remotely - WOL/WOW).
Nice explained.. But I have a problem.. What do I do if I have access to only one device on the private network (in which my web/game server is running)?
Hi Hussein Even if we do not use ssh command to access the remote server, we can still access it by making a TCP req on public ssh server on port 22, right?
this man worked on my pc he has connected to my local network , he thought I didn't know but I figured it out he is in control of my MacBook, I don't really understand all this but this is what I have on my network I also have 3 utun,. I figured out he made a tunnel like using a vpn to bypass my firewall how in the world am I ever going to get him out of my network..
Hi Mr. Hussein. I like to ask some Question. How to fix Connection refused when run the ssh command and fix bad local forwarding specification 'ip adress'?
i'm trying to forward something from my NAS on port 8080 and i'm doing ssh -R 8080:localhost:8080 user@ip and i can't seem to connect to it from ym vps when i connect to the VPS IP address. do i have the wrong IP? if i do this on my PC, i can forward anything on the PC to my VPS as long as i'm connected to wireguard and if that user connects to my internal wireguard IP (10.190.x.x)
So i setup Pi-Hole on my Raspberry pi, with Pi-Vpn to install openvpn alongside my Pi-hole then i logged into my router made it a static ip, now im trying to setup port forwarding to the raspberry pi on port 1194 that openvpn uses What confuses me is my router asks for a internal host ip which i set to my Raspberry Pi's ip, and external host ip, i ended up leaving the external host ip blank, im trying to access my Pi-Hole Adserver while im at work does that require me to put a ip for the external host? I made my internal port, and external port 1194
for remote port forwading why are using two machines 10.0.0.3:8080 and 10.0.0.4? by the way 10.0.0.4 is not even used in the SSH command. can u please clarify?
Can I use port forwarding to bypass my router to use a VPN without unplugging everything? I think I would have to restart my modem every time to connect to my computer every time as well. A hassle. I have an Archer A6, I got from a friend, because it wouldn't work with Nord. Would a network switch work? Thanks.
Why did you have to create a name for your machine's IP on the public DNS server? (The noIP website @ 8:33) Is this a required step or can I just use the SSH server's IP?
On @9:05 I did not get one thing, when someone login using user ID pi on your machine, not on raspberry pi, how after logging in we reached to raspberry pi ?
It is really, really great that there are still tech channels which actually share tech knowledge and don't just publish videos, such as "top languages to learn in 2025". I really hope you keep up with this great videos and don't become a slave to the algorithm.
Man tell me about it, I made a video last year ranting about videos claiming Top programming languages in 2020 ruclips.net/video/IjOjiF4_cQc/видео.html
Man tell me about it, I made a video last year ranting about videos claiming Top programming languages in 2020 ruclips.net/video/IjOjiF4_cQc/видео.html
The only guy on the internet that explains SSH port forwarding and remote port forwarding properly.
This is BY FAR the best explanation of local & remote port forwarding that I have seen anywhere. It makes it very clear exactly who is requesting what from where at each point in the request, and the separation of resources is most helpful ; most other explanations will have the requested resource and the ssh server be on the same host, not making it clear that the requested resource can actually be running on a different host. Huge thanks to you for sharing such a great video with us!
Agree with you. This is the best tutorial video.
Completely agreed.
This covered in 7 minutes (only needed local) what I've been trying to understand for a couple weeks... I normally don't "research" on youtube, but your practical example was great. Thanks so much!
Having difficulty to wrapped this concept around my head and you absolutely nailed the explanation!
I have read so many articles and I was really struggling understand what happens behind the scenes.
Brilliant explanation and visuals, thanks you!
Hey there - I stumbled upon your video when I was looking up reverse proxies and I just wanted to say that you're such an excellent explainer! I see from your profile that you update frequently and consistently. Thank you for doing what you do, I'd definitely recommend this site to my friends when you cover topics they like!
Thank you soo much cal for taking the time to write this 🙏 very happy you like the content ! I try to upload frequently and i talk about topics that i am interested on
Man, you are the guru of back-end engineering
this was such a clear and helpful explanation. I have been struggling with this concept for a while but you broke it down perfectly. Thank you for making it so easy to understand
Awesome explaination! I read (*skimmed*) 5 articles on local vs remote port forwarding and didn't grok it until I saw your visuals. Thanks for this!
Clear, to the point, no BS explanation.
Well done!
Wow, such an amazing explanation! Thank you a lot! Finally, I have understood ssh port forwarding:)
Great Video, I am using this technique to create tunnel from my local to server, additionally, I am using "-fNL" params. The -f option tells the ssh command to run in the background and -N not to execute a remote command.
jatin seth thanks Jatin for sharing! Nice tips 👍
super super helpful. This single video cleared all the confusion I had about local and remote port forwarding. Thanks man!!!
i can understand this lesson very well because of terminal practice of you
Thank you sir. This was exactly what I needed. I don't know why on Earth I had so much trouble building a remote ssh tunnel, but I did and it was only after viewing your video that I was able to get everything working solidly. Once again thank you for the clear explanation.
Thank you for making this video Hussein! I've been trying to wrap my head around remote port forwarding for the longest damn time. I live in an area with shared wifi and I've been looking forever for a way to circumvent the stupid firewall so I can get some of those sweet sweet LetsEncrypt certs for my Raspberry Pi's!
I've watched so many videos on this and not found a single one that isn't either a) using PuTTY on Windows, which is useless since it doesn't show which command line args to use or b) a purely conceptual explanation with no examples or instructions!
Noah Williams thanks Noah! Glad I could help. This concept is very complex believe me I go back to my videos all the time to remember how I did things. So i try to put the commands .. which reminds me must make sure i put it on this YT description
This is the best explanation I have found so far... Thank you so much ^^
The best ssh tunneling tutorial ever!!! Thanks for your hard work, Hussein.
Could you also talk about dynamic tunneling if possible?
This is a really good explanation of SSH tunneling and port forwarding! Unfortunately one can only appreciate the accuracy after seeing so many very confusing and even incorrect explanations on RUclips. It's important to get the terms right and use proper examples (e.g. "local" or "remote" from which machine's perspective) and where the connection is initiated etc. Too often something like "SSH -R 1080:localhost:1080" is used which is the worst way, as students can't see which machine each component is referring to and what's actually happening here. So, thank you for going the extra mile with the diagrams and being careful with how you use the terminology.
Understood very well ..Thank you ... To make things very very clear and less confusing you could have used a cloud VM for public SSH server ...
Your video helped me understand a lot of things, thank you!
Thanks, definately had a woah moment when the web interface of process on my aws server popped up
So usefull!
Wow, this was a great video, I was able to learn a lot from this. Great examples, and great and clear speech. Thank you very much for this brother.
Glad you enjoyed it!
Also a wonderful video with explanation and examples. Thank you!
You explained that very well. Thank you
R M thanks😊 appreciate it!
This was extremely well explained and easy to understand. You have a calling as a teacher I believe ;)
I don't have a public dynamic ip. My ISP shares my IP with others, it means I am behind a NAT. I tried to use remote port forwarding to see my DVR and NAS, but the problem is that I can not publish ports in my router. In the example described in the video that tunne it's not needed, you could configure the router to forward the ports of that internal resource with out needing a 3rd party server. However, I am able to see a port of an external database server and see it as a local resource.
Ill make a video on this topic you can use ngrok.io
@@hnasr I evaluated that solution but it's limited :( thanks for your really quick answer
Yes it is very limited and terminates your connection.. best way is to purchase a tiny vm from linod
@@hnasr what could I do with that? I have my own server in cloud at cost, that's where I tryied to do the tunneling solution , what do you suggest to install to achive my purpose?
I'll try this superuser.com/questions/277218/ssh-access-to-office-host-behind-nat-router
Excellent explanation Hussein !! Thank you
Many thanks man for this simple way 👏🏻
Thanks for this! You have a really good way of explaining things. Appreciate it :)
2:00 local vs remote port forwarding
5:00 Clear example of local port forwarding
Forwards local traffic originating from my machine to a public ssh server which then forwards it to the private server we’re accessing.
This was an eye opener for me. This is so powerful actually. But the public SSH servers available will actually block these stuffs right?
Glad its helpful! correct its rare to find a public ssh server that has port 22 open but very easy to spin one up with a $5 droplet from cloudflair even cheaper
this is exactly what I needed. Thanks.
Thanks for such a greate explanation🎉
Really thanks for the explanation!
It was great!
Love your video bro! Keep working on them 💪🏼💪🏼
thanks alot
Thank you very much for the great explanation! I have been wondering, if it is possible to achieve the same thing (hosting a web server) if my router gets a private IP from the ISP... I just cannot find a straight forward tutorial or explanation, how this thing may work. In your use case, if I understood correctly, you use the public IP of the router, but mine is private as it doesn't match with the IP what I see from "outside" ip tracking webpages, and the port forwarding simply doesn't work.
Im also interesting to know about it, since i dont have a static IP and my ISP blocked the majority of the ports.
Marcelo, the only option I found is, to use a service like ngrok or other alternatives with similar functionality. Basically it is a service, which creates a channel between your server and an external hosting service. The mentioned one has some free possibilities, so you can try it out just by creating a free account. For a paid plan you can also create your own domain if you like. I hope this helps a little. Cheers!
@@TyphoonBeard thank Florián, I'm here breaking my head.. at the moment I'm trying ngrok without success. Actually I just wanna turn on my computer over the lan (Wake on LAN remotely - WOL/WOW).
Very well explained dude. Thnk u so much!😉
Good video! What's the software that produce the red mouse pointer trailing in your video BTW?
You are a nice person... : Stay awesome...
Super Video, Exactly what I need!
Thanks pal, greetings from Ecuador.
I think I love you.
Subscribed, liked, and added to favourites, GOOD JOB BRO, thank you very much!
Bionic ❤️❤️ *sending love back * enjoy the content
Thanks for the nudge in the right direction ... helped!
when i heard RRRRRouter i immediately glanced to the channel name , lol
Thanks for this great video, it helped alot.
So clear my man. Thank you
Very detail explaining, thanks
Brilliant tutorial!!!!!!!!!!!!!!!! Thank you Hussein!)
Thanks for the video Hussein
Great video, really helped, thanks!!
awesome, got everything in the shot !!!
Been waiting for this.
Great video by the way
Enjoy 😊
Thank you Hussein, I learned a lot ! Can you tell me how to know which ports I have?
Thanks Andrea! I think you can run netstats -a on windows or mac?
@@hnasr I see, thanks. I got a huge list on Linux now. My question might be not accurate. Like how do I know from that huge list on which I can use?
Excellent explanation
Nice explained.. But I have a problem.. What do I do if I have access to only one device on the private network (in which my web/game server is running)?
Wello Done, bro... Awesome Explanation!!
Thanks Carlos 😊🙏
Thank you ! fantastic explanation :)
i believe the local port forwarding is more confusing to me 😅
Thanks a lot! That's pretty clear and useful.
this helped me a lot. thank you.
Thanks dear it helped me alot
Really good video. Thank you!
fantastic video up until 7:45 when you jumped lightyears ahead and explained backwards...
yes, far too long of a jump from the beginning of the video to the next portion starting at 7:45
Thank you soo much brather i hoop you happy
Hi Hussein
Even if we do not use ssh command to access the remote server, we can still access it by making a TCP req on public ssh server on port 22, right?
هلاوالله بحسين، لهجتك فله 👌
❤️ هلا ولله
Apr 28 2024, good video
Great explanation, Hussein. Thank you!
Thankyou so much!
Great video👌🏻
Can you do a video on Dynamic port forwarding using SOCKS5 protocol?
Thank you!
This was great Thanks ✌
this man worked on my pc he has connected to my local network , he thought I didn't know but I figured it out he is in control of my MacBook, I don't really understand all this but this is what I have on my network I also have 3 utun,. I figured out he made a tunnel like using a vpn to bypass my firewall how in the world am I ever going to get him out of my network..
Hey you got some cool stuff. Thanks!!
Yah habibi. I love the accent. Thank you for the video!
thank you sir
amazin video, TY !!!!
Hi Mr. Hussein. I like to ask some Question. How to fix Connection refused when run the ssh command and fix bad local forwarding specification 'ip adress'?
do we have to install frontier communications or what. I am completely new. Kindly guide
thank you for making such a great content
i'm trying to forward something from my NAS on port 8080 and i'm doing ssh -R 8080:localhost:8080 user@ip and i can't seem to connect to it from ym vps when i connect to the VPS IP address. do i have the wrong IP? if i do this on my PC, i can forward anything on the PC to my VPS as long as i'm connected to wireguard and if that user connects to my internal wireguard IP (10.190.x.x)
Hi I am new to this field. May I ask if I open GateWay publically, will there be some hackers have an ability to access my server? Thanks.
How to set up Remove Port Forwarding if your ISP also blocks SSH access remotely?
Interested to know how do they block it.. wonder if it is on the port.. can you change port 22 and run openssh on a custom pprt?
@@hnasr Looks like they block all ports for incoming traffic. Even ports such as 80, 21,22, 23. I've tried them all
What is "raspberry2" pointing to. I mean, do you have that in your hosts file to be something like 127.0.0.1?
Do video about reverse ssh
How do I do this with nginx in WinNMP, a step by step please, thank you very much.
So i setup Pi-Hole on my Raspberry pi, with Pi-Vpn to install openvpn alongside my Pi-hole then i logged into my router made it a static ip, now im trying to setup port forwarding to the raspberry pi on port 1194 that openvpn uses
What confuses me is my router asks for a internal host ip which i set to my Raspberry Pi's ip, and external host ip, i ended up leaving the external host ip blank, im trying to access my Pi-Hole Adserver while im at work does that require me to put a ip for the external host? I made my internal port, and external port 1194
Awesome! Thanks
is the same possible to do using putty settings?
for remote port forwading why are using two machines 10.0.0.3:8080 and 10.0.0.4? by the way 10.0.0.4 is not even used in the SSH command. can u please clarify?
Can I use port forwarding to bypass my router to use a VPN without unplugging everything? I think I would have to restart my modem every time to connect to my computer every time as well. A hassle. I have an Archer A6, I got from a friend, because it wouldn't work with Nord. Would a network switch work? Thanks.
Why did you have to create a name for your machine's IP on the public DNS server? (The noIP website @ 8:33) Is this a required step or can I just use the SSH server's IP?
No reason you may use the public IP address just wanted an easy way to write it down
1:07 "temperally"
Next VPN Tunnel please..!!
🙏🙏
On @9:05 I did not get one thing, when someone login using user ID pi on your machine, not on raspberry pi, how after logging in we reached to raspberry pi ?
So remote port forwarding only in case of when we want world to access our local server.