HVV期间,如何使用SSH隧道绕过内外网隔离限制?

hello 大家好。想必,HVV护网期间大家办公效率直线下降吧,其中多数最主要因素是网络环境各种限制,导致原有的网络通信不能访问。

还有场景是多个网络因业务不能双向通信,进行限制网络等等问题...。 总之, 我们的诉求只有一个,那就是将网络打通,可以让网络正常通信。

那么,请各位同学跟随我将本篇文章阅读完,带大家解决手头上的网络限制问题~

本篇文章用到SSH三种隧道模式:

  • 本地转发:将远程服务器的某个端口映射到本地机器的指定端口上,使得本地应用程序可以通过本地端口访问远程服务器上的服务。
  • 远程端口转发:将本地机器的某个端口映射到远程服务器上,使得远程服务器上的应用程序可以通过远程服务器上的端口访问本地服务。
  • 动态转发:允许通过配置一个本地端口,把通过隧道到数据转发到远端的所有地址。本地的应用程序需要使用socks协议与本地端口通讯。此时SSH充当socks代理服务器的角色。

下面演示的案例中,需要将SSH配置文件 /etc/ssh/sshd_config 更改如下参数

shell 复制代码
AllowTcpForwarding yes

注意:隧道是采用SSH,所有经过的计算机设备,需要安装SSH。 比如windows需要安装OpenSSH

场景一:双向隧道

环境描述

内网环境和办公网环境之间是无法访问的,这里通过笔记本电脑连接双方网络后,在网络限制的情况下,也是只能实现单向连接。

这时,我们要实现内网设备与办公网设备网络连接,需要借助中间的笔记本电脑网络,下面使用SSH隧道方式,实现内外网打通,双向连接。

步骤中,将两端的22端口映射,通过隧道的方式,进行双向连接:

(1)PC电脑访问服务器建立隧道

笔记本电脑 -> 服务器

shell 复制代码
ssh -NL 1022:127.0.0.1:22 root@192.168.1.11

笔记本电脑 -> PC电脑

shell 复制代码
ssh -NR 1022:127.0.0.1:1022 root@192.168.3.33

首先,在笔记本电脑本地监听1022端口映射到192.168.1.11服务器中22端口;

然后,在笔记本电脑通过ssh远程代理方式,将192.168.3.33PC电脑建立1022端口及监听,并映射到本地的1022端口,这样一条单向SSH隧道就建立成功了。

外网PC电脑访问内网192.168.1.11服务器。比如,PC电脑执行 ssh -p 1022 root@127.0.0.1 进行连接,则代表1022映射向了192.168.1.11:22端口。

访问成功。

(2)服务器访问PC电脑建立隧道

笔记本电脑 -> 服务器

shell 复制代码
ssh -NR 1022:127.0.0.1:1023 root@192.168.1.11

笔记本电脑 -> PC电脑

shell 复制代码
ssh -NL 1023:127.0.0.1:22 root@192.168.1.33

到此为止,SSH双向隧道就建立完成了, 内网服务器和外网PC电脑可以互相连接了。各自访问1022端口就能连接对方的SSH服务。

场景二:socks代理上网

环境描述

很多时候内网服务器需要下载一些依赖包,但是无法访问互联网非常麻烦。 这里通过SSH隧道动态转发,实现socks5代理上网。

(1)服务器访问PC电脑建立隧道

笔记本 -> PC电脑

shell 复制代码
ssh -ND 10801 root@192.168.3.33

笔记本 -> 服务器

shell 复制代码
ssh -NR 10801:127.0.0.1:10801 -p 2222 root@192.168.1.11

(2)在内网192.168.1.11服务器上,验证是否可以访问外网

shell 复制代码
curl -v http://www.baidu.com -I -x socks5://localhost:10801

测试成功!

技术文章持续更新,请大家多多关注呀~~

搜索微信公众号,关注我【 帽儿山的枪手 】

相关推荐
Zach_yuan4 小时前
深入浅出 JSONCpp
linux·服务器·网络·c++
桌面运维家5 小时前
vDisk安全启动策略怎么应用?防止恶意引导攻击
安全
北京迅为5 小时前
《【北京迅为】itop-3568开发板NPU使用手册》- 第 7章 使用RKNN-Toolkit-lite2
linux·人工智能·嵌入式·npu
我是一只puppy5 小时前
使用AI进行代码审查
javascript·人工智能·git·安全·源代码管理
Dragon~Snow5 小时前
Linux Centos9 安装 Elasticsearch
linux·elasticsearch·jenkins
熊延5 小时前
麒麟V10系统安装部署elasticsearch
linux·运维·服务器·elasticsearch·搜索引擎·全文检索
Jia ming6 小时前
跟踪器与事件使用举例
linux·事件·跟踪器
生活很暖很治愈6 小时前
Linux——基础IO&软硬链接
linux·ubuntu
2401_858936886 小时前
【Linux C 编程】标准 IO 详解与实战:从基础接口到文件操作实战
linux·c语言
Roc.Chang6 小时前
Ubuntu 下 VLC 无法启动(Segmentation fault)终极解决方案
linux·ubuntu·vlc·媒体播放