SecureCRT隧道,跳板机+端口转发,内网穿透
创始人
2024-04-16 18:52:55
0

背景

ServerA(Linux系统):
内网:192.168.111.201
公网:10.121.8.88(虚构的ip方便理解)

ServerB:
内网:192.168.111.202

本机:
安装有SecureCRT软件

注意上图中的箭头。箭头指向可以粗略地认为可以ping通就可以了。

这里为了方便测试,准备了2台虚拟机,ServerA(192.168.111.201)、ServerB(192.168.111.202)
并在ServerB(192.168.111.202)做如下配置,表示ServerB只允许ServerA连接。

# 允许登陆ssh的ip
vi /etc/hosts.allow
sshd:192.168.111.201:allow# 除了上面允许的,其他的ip都拒绝登陆ssh
vi /etc/hosts.deny
sshd:ALL

ssh安全隧道(一):本地端口转发。
目标:本机直接访问ServerB

ssh安全隧道(二):远程端口转发。内网穿透。
目标:ServerB直接访问本机

一、本地(windows)SecureCRT隧道远程ServerB

远程端口转发
SecureCRT菜单 》 File 》Quick Connect...

 需要注意的是,这个登录ServerA后,需要一直保持登录状态。 窗口不能关闭。

这一步配置好后,关闭连接后重新打开。

本地直连ssh登录ServerB。
SecureCRT菜单 》 File 》Quick Connect...

 

 这是测试的ssh的22端口,其他mysql的3306等端口是一样的

二、本地(windows)SecureCRT隧道方式连接mysql

SecureCRT菜单 》 File 》Quick Connect...

 需要注意的是,这个登录ServerA后,需要一直保持登录状态。 窗口不能关闭。

 这一步配置好后,关闭连接后重新打开。

本地直连登录ServerB的mysql。

三、本地(windows)SecureCRT远程端口转发,内网穿透

远程端口转发

原理是把服务器的端口转发到本机的端口上,
比如把服务器的 8081 端口转发给本机的 8080 端口,服务器使用nginx反向代理到 8081 端口绑定域名就可以正常访问本地电脑中web应用了。

本机启动一个web服务如下: 

    // http://127.0.0.1:8080/test@GetMapping("/test")public String test() {return "test ok";}

本机配置如下:

SecureCRT菜单 》 File 》Quick Connect...

这里做本地测试用的内网ip,这里的ip可改为ServerA的公网ip

 需要注意的是,这个登录ServerA后,需要一直保持登录状态。 窗口不能关闭。

 这里做本地测试用的内网ip,这里的ip可改为ServerA的公网ip

 这一步配置好后,关闭连接后重新打开。
到这一步,已经可以使用 ServerA的127.0.0.1:8081 访问,本机的 127.0.0.1:8080端口了。
但是只能用127.0.0.1:8081 转发访问,并不能使用ServerA的内网(192.168.111.201:8081)或者外网(10.121.8.88:8081)转发访问,
需要使用nginx将内网(192.168.111.201:8081)或者外网(10.121.8.88:8081)转发到127.0.0.1:8081。127.0.0.1:8081再转发到本机。

 ServerA配置

在ServerA(192.168.111.201)安装Nginx。Linux下安装nginx详细步骤
配置如下:

worker_processes  1;
events {worker_connections  1024;
}
http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       8082;server_name  localhost;location / {proxy_pass http://127.0.0.1:8081;}}
}

本机浏览器访问:http://127.0.0.1:8080/test

ServerA(内网192.168.111.201)访问本机:curl http://127.0.0.1:8081/test
ServerA(公网10.121.8.88)浏览器访问本机:http://10.121.8.88:8082/test

ServerB(192.168.111.202)访问本机:curl http://192.168.111.201:8082/test

真实案例

我有台公网Linux服务器:124.223.x.x:8080

nginx配置如下 

worker_processes  1;
events {worker_connections  1024;
}
http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       8080;server_name  localhost;location / {proxy_pass http://127.0.0.1:8081;}}
}

本机web服务

    // http://127.0.0.1:8080/test@GetMapping("/test")public String test() {return "test ok";}

参考:

SecureCRT和Putty隧道方式连接Mysql、远程登录内网服务器_MarshalEagle的博客-CSDN博客_securecrt 隧道

[Linux] 使用secureCRT实现SSH隧道服务器端口转发到本机内网穿透 - 走看看

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...