首页 > 系统相关 >【Xshell】高级用法: “隧道转发”

【Xshell】高级用法: “隧道转发”

时间:2024-11-06 18:22:13浏览次数:1  
标签:端口 用法 本地 转发 Xshell 服务器 远程

原创 大龙山悟道 IT运维不跑路

xshell隧道转发类型

类型一:本地拨出 Local(Outgoing)

作用:将本地计算机指定的某个端口连接到远程服务器的一个指定端口上。

应用场景:当从本地机器安全地访问位于远程服务器上的服务(如数据库、web服务等)时使用。

工作原理:通过SSH连接,用户在本地机器上指定一个端口,Xshell会创建一个隧道,把这个本地端口上的所有数据发送到远程服务器的指定端口。

类型二:远程传入Remote(Incoming)

作用:将远程服务器的一个端口连接到本地计算机的一个指定端口上。

应用场景:当远程服务器需要访问本地机器上的服务(例如,你在本地运行的web应用或者使用本地的网络环境)时使用。

工作原理:通过SSH连接,用户在远程服务器上指定一个端口,Xshell会创建一个隧道,把这个远程端口上的所有数据发送到本地计算机的指定端口。

类型三:Dynamic(SOCKS4/5)

作用:建立一个SOCKS代理服务器,通过这个代理服务器转发网络流量。

应用场景:常用于访问通过常规网络无法直接访问的服务,比如绕过网络审查或访问局域网内的资源。

工作原理:用户指定一个本地端口用作SOCKS代理,Xshell会将通过这个端口的数据通过SSH隧道转发到任意目的地。这种方式提供了更多的灵活性,可以转发到多个远程服务。

示例说明

应用场景一:利用XShell隧道本地拨出 Local(Outgoing)连接服务器上部署的数据库服务。出于安全考虑服务器不对外网开放3306数据库端口,仅用于服务器上连接操作数据库,有时候需要数据库客户端工具从本地电脑连接,配置Xshell隧道本地拨出即可实现!

在xshell会话中,配置转移规则如下:

类型(方向):本地(拨出)
源主机:192.168.11.189(本地电脑的内网ip,也可以是localhost)
侦听端口:3306(服务器传入的端口)
目标主机:localhost(服务器IP,我的数据库就在这台服务器上所以填写localhost)
目标端口:3306(服务器上数据库端口)

使用数据库客户端工具连接验证

应用场景二:在某个云平台购买了一台大陆境内的服务器,需要部署k8s集群,因此需要下载官方镜像,因网络限制会导致下载失败!而本地电脑没有网络限制可以直接下载。这时可以通过xshell远程传入Remote(Incoming)功能将服务器http_proxy转发到本地计算机,从而实现网络资源下载。

配置远程传入规则
首先在服务器上执行export,http_proxy将请求代理转发到9999.

export http_proxy=http://127.0.0.1:9999/ https_proxy=http://127.0.0.1:9999/

在xshell会话中,配置远程传入规则,转移规则如下:

类型(方向):远程(传入)
源主机:localhost(服务器代理传入的ip)
侦听端口:9999(服务器传入的端口)
目标主机:localhost(本机fiddler)
目标端口:8888(fiddler监听的端口)

应用场景三:购买一台国外服务器(服务器可以访问公网),我本地电脑无法访问外网。使用Xshell隧道Dynamic(SOCKS4/5)可以让本地电脑浏览器访问外网。

在xshell会话中,配置远程转移规则如下:

类型(方向):Dynamic(SOCKS4/5)
源主机:默认为空
侦听端口:9999(自定义端口,默认1080)
目标主机:默认为空
目标端口:默认为空

浏览器代理配置自行研究配置!!!

个人观点,仅供参考

标签:端口,用法,本地,转发,Xshell,服务器,远程
From: https://www.cnblogs.com/o-O-oO/p/18523782

相关文章

  • odoo中对多条数据按条件进行分类汇总 read_group的用法总结并抽取出公式
    今天在工作中遇到一个这样的问题。要求:做一个打印模板实现下面图中的分类汇总 py3o://for="oinobject.delivery_containers_line.read_group(domain=[('delivery_order_id','=',object.id)],fields=['customer_id','delivery_order_id','sales_order_......
  • Xshell5登录报“找不到匹配的host key 算法“的错误
    Xshell5登录报"找不到匹配的hostkey算法"的错误现象解决方法一:解决方法二 现象xshell5登录欧拉22.03时报错:找不到匹配的hostkey算法解决方法一:1.编辑/etc/ssh/sshd_config,如下所示: #在行尾增加",ecdh-sha2-nistp521",以满足ecdsa公钥方式登录(密钥长度521......
  • JavaScript用法
    JavaScript 用法HTML中的Javascript脚本代码必须位于 <script> 与 </script> 标签之间。Javascript脚本代码可被放置在HTML页面的 <body> 和 <head> 部分中。<script>标签如需在HTML页面中插入JavaScript,请使用<script>标签。<script>和</script>......
  • websocket用法
    WebSocket是一种在客户端和服务器之间建立持久化连接的协议,允许双向通信。它适用于实时应用程序,如聊天应用、在线游戏或实时数据流。以下是WebSocket在Vue.js中的基本用法:1.建立WebSocket连接首先,创建WebSocket连接:constsocket=newWebSocket('ws://your-server-u......
  • 队列的用法详解
    队列是一种常用的数据结构,具有先进先出(FIFO,First-In-First-Out)的特点。通常用来管理需要按顺序处理的任务,例如打印队列、任务调度、资源分配等。下面详细介绍队列的基本概念、常用操作、类型及其在C语言中的实现。队列的基本概念在队列中:入队(enqueue):将元素添加到队列的......
  • arkUI:文本框、文本域的创建和常见用法(TextInput 、TextArea)
    arkUI:文本框、文本域的创建和常见用法(TextInput、TextArea)1主要内容说明2例子2.1文本框、文本域的创建(TextInput、TextArea)2.1.1源码1(文本框、文本域的创建)2.1.2源码1运行效果2.2设置文本框的输入类型2.2.1源码2(设置输入框的输入类型)2.2.2源码2运行效果2.3......
  • Axios详解及用法
    文章目录Axios详解:用法、创作流程、优缺点、代码案例及使用场景Axios简介Axios的用法Axios的创作流程Axios的优缺点代码案例及详细解释Axios的使用场景Axios详解:用法、创作流程、优缺点、代码案例及使用场景Axios简介Axios是一个基于Promise的HTTP客户端,用于浏览......
  • Python学习笔记-yield用法及优点
    Python学习笔记-yield用法及优点概述yield用于定义生成器,它最终返回一个生成器对象,这个生成器对象可以被迭代。例子#encoding:utf8importsysn=200m=1000#定义一个生成器,yield必须在函数中使用defGenerators(n):foriinrange(n):ifi%2==0:......
  • 深入理解 `std::shared_ptr`:原理、用法及其线程安全性
    在C++中,智能指针是现代内存管理的重要工具,尤其是在复杂的多线程环境中,能显著减少内存泄漏和悬空指针等问题。std::shared_ptr是C++11引入的一种共享智能指针,通过引用计数机制管理对象的生命周期。本文将详细介绍std::shared_ptr的基本用法、循环引用问题、线程安全性及其局......
  • Vue.js 混入(Mixins)高级用法:提升代码复用与灵活性
    在Vue.js中,混入(Mixins)是一种灵活的方式来分散可复用的代码。它们允许你将组件的选项分散到多个组件中,从而提升代码的复用性和灵活性。以下是一些混入的高级用法及示例。1.基础概念混入是一个包含Vue组件选项的对象,任何包含该混入的组件都可以使用这些选项。//定义......