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
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
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.
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 ?
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?
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
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.
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)
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.
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'?
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?
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).
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?
Is it possible between two windows pc? I can't set a ssh tunneling to have an encrypted vnc connection (in a local connection I can, but remotely I can't). Any idea?
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?
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
Hi. I'm newbie with SSH. Can you please tell me, does it possible have remote connection via SSH between two computers ( I mean between two different countries) and transfer files between them, without involving third party servers? And if possible, how I can do this in Ubuntu terminal. Thanks
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)?
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.
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!
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
I have read so many articles and I was really struggling understand what happens behind the scenes.
Brilliant explanation and visuals, thanks you!
Having difficulty to wrapped this concept around my head and you absolutely nailed the explanation!
Clear, to the point, no BS explanation.
Well done!
Your teaching clip was the best of any video I have ever seen and full understandable and simple, thanks 👍
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!
Man, you are the guru of back-end engineering
Wow, such an amazing explanation! Thank you a lot! Finally, I have understood ssh port forwarding:)
super super helpful. This single video cleared all the confusion I had about local and remote port forwarding. Thanks man!!!
This is the best explanation I have found so far... Thank you so much ^^
i can understand this lesson very well because of terminal practice of you
Thanks for taking the time and effort of making this great video and sharing Your knowledge !! :)
Best regards
this is exactly what I needed. Thanks.
Your video helped me understand a lot of things, thank 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
Excellent explanation Hussein !! Thank you
Really thanks for the explanation!
It was great!
Super Video, Exactly what I need!
Also a wonderful video with explanation and examples. Thank you!
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 👍
Thanks for this! You have a really good way of explaining things. Appreciate it :)
Thanks, definately had a woah moment when the web interface of process on my aws server popped up
So usefull!
Been waiting for this.
Great video by the way
Enjoy 😊
Thanks for such a greate explanation🎉
You explained that very well. Thank you
R M thanks😊 appreciate it!
Very well explained dude. Thnk u so much!😉
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!
Love your video bro! Keep working on them 💪🏼💪🏼
The best ssh tunneling tutorial ever!!! Thanks for your hard work, Hussein.
Could you also talk about dynamic tunneling if possible?
So clear my man. Thank you
Many thanks man for this simple way 👏🏻
Great video, really helped, thanks!!
This was extremely well explained and easy to understand. You have a calling as a teacher I believe ;)
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 ?
Brilliant tutorial!!!!!!!!!!!!!!!! Thank you Hussein!)
Thanks for this great video, it helped alot.
Thanks pal, greetings from Ecuador.
awesome, got everything in the shot !!!
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!
Thanks for the video Hussein
Thank you ! fantastic explanation :)
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
Wello Done, bro... Awesome Explanation!!
Thanks Carlos 😊🙏
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 ...
Very detail explaining, thanks
Thanks a lot! That's pretty clear and useful.
this helped me a lot. thank you.
You are a nice person... : Stay awesome...
Excellent explanation
Really good video. Thank you!
Thanks dear it helped me alot
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
Great explanation, Hussein. Thank you!
Yah habibi. I love the accent. Thank you for the video!
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.
Great video👌🏻
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)
thank you for making such a great content
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.
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'?
Getting below error in public port forwarding:
Warning: remote port forwarding failed for listen port XXXX
Any reasons?
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?
This was great Thanks ✌
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).
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
thanks alot
Hey you got some cool stuff. 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
I am trying to find a place to buy SSH Tunnel no-login servers. Have any ideas?
do we have to install frontier communications or what. I am completely new. Kindly guide
Is it possible between two windows pc? I can't set a ssh tunneling to have an encrypted vnc connection (in a local connection I can, but remotely I can't). Any idea?
is the same possible to do using putty settings?
Thankyou so much!
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.
Thank you soo much brather i hoop you happy
This is possible use this with 4g cg-nat connection. I need port for dvr.For ssh this is possible to use with rpi model b and vps with public ip.
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 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
Hi. I'm newbie with SSH. Can you please tell me, does it possible have remote connection via SSH between two computers ( I mean between two different countries) and transfer files between them, without involving third party servers? And if possible, how I can do this in Ubuntu terminal. Thanks
Anyone else get a port conflict on port 22 in the port forwarding example (in the router setup) ?
amazin video, TY !!!!
Thank you!
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)?
How to use this with SNI To access internet freely using content base packages from ISP
Awesome! Thanks
what happens if a captive portal has port 22 blocked, how do i make a tunnel?
Good video! What's the software that produce the red mouse pointer trailing in your video BTW?
Hello, can you please tell me where I can get SSH No-Login servers from?
ruclips.net/video/RfolgB-rVe8/видео.html
What is "raspberry2" pointing to. I mean, do you have that in your hosts file to be something like 127.0.0.1?
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.
How do I do this with nginx in WinNMP, a step by step please, thank you very much.
Can you do a video on Dynamic port forwarding using SOCKS5 protocol?
i believe the local port forwarding is more confusing to me 😅