有三台机器A,B,C ,A和B分别处于一个局域网内,C是一个允许Linux的公网服务器,如果通过ssh命令让A通过C访问B的指定端口?

devtools/2024/10/11 6:56:52/

有三台机器A,B,C ,A和B分别处于一个局域网内,C是一个允许Linux的公网服务器,如果通过ssh命令让A通过C访问B的指定端口?

要让机器A通过机器C访问机器B的指定端口,并且使用SSH,你可以设置一个SSH隧道。SSH隧道允许你通过SSH连接转发TCP端口。在这个例子中,你需要设置一个反向SSH隧道从机器B到机器C,然后在机器A上设置一个本地端口转发到机器C上的隧道端口。

这里是如何设置的步骤:
1. 在机器B上设置反向SSH隧道到机器C

首先,你需要在机器B上设置一个反向SSH隧道到机器C。你可以使用ssh命令的-R选项来做到这一点。

在机器B上执行以下命令:

bash
ssh -fN -R <local_port_on_C>:<host_or_ip_of_B>:<port_on_B> user@C -p C的端口

    <local_port_on_C> 是你希望在机器C上打开的端口,用于转发到机器B的<port_on_B>。
    <host_or_ip_of_B> 是机器B的IP地址或主机名。
    <port_on_B> 是机器B上你想要访问的端口。
    user@C 是机器C上的用户名和机器C的地址。

例如,如果你想要转发机器B上的22端口(SSH端口)到机器C上的3306端口,你可以这样做:

ssh -fN -R 3306:127.0.0.1:22 user@C -p C的端口

2. 在机器A上设置本地端口转发到机器C

现在,你需要在机器A上设置一个本地端口转发,将某个本地端口转发到机器C上的<local_port_on_C>。这样,当你连接到机器A的这个本地端口时,流量会被转发到机器C,然后通过SSH隧道转发到机器B。

在机器A上执行以下命令:

bash
ssh -L <local_port_on_A>:<host_or_ip_of_B>:<local_port_on_C> user@C -p C的端口

    <local_port_on_A> 是机器A上的本地端口,用于接收连接。
    <host_or_ip_of_B> 和 <local_port_on_C> 应该是你在机器B上设置的反向SSH隧道时使用的相同值。
    user@C 是机器C上的用户名和机器C的地址。

例如,如果你想要在机器A上使用本地端口4444来访问机器B的22端口,并且机器C上的隧道端口是3306,你可以这样做:


ssh -L 4444:127.0.0.1:3306 user@C -p C的端口


http://www.ppmy.cn/devtools/44988.html

相关文章

Apache Impala 4.4.0正式发布了!

历时半年多&#xff0c;Impala 4.4终于发布了&#xff01;本次更新带来了不少新功能&#xff0c;受限于篇幅&#xff0c;这里简要列举一些&#xff0c;后续文章再挑重点的进行介绍。 支持更多Iceberg表上的语句 支持对 Iceberg V2 表的 UPDATE 语句&#xff0c;用来更新已有数…

lynis安全漏洞扫描工具

Lynis是一款Unix系统的安全审计以及加固工具&#xff0c;能够进行深层次的安全扫描&#xff0c;其目的是检测潜在的时间并对未来的系统加固提供建议。这款软件会扫描一般系统信息&#xff0c;脆弱软件包以及潜在的错误配置。 安装 方式1 git下载使用git clone https://github…

Unity UGUI实现无限滚动列表

Demo链接: ​​​https://download.csdn.net/download/qq_41973169/89364284 在游戏开发中&#xff0c;列表视图是一个常见的UI组件。实现一个高效的列表视图尤其重要&#xff0c;尤其是在需要展示大量数据时。本文将介绍如何在Unity中实现一个高效的无限滚动列表&#xff0c;…

vue3 前端实现导出下载pdf文件

这样的数据实现导出 yourArrayBufferOrByteArray 就是后端返回数据 // 创建Blob对象const blob new Blob([new Uint8Array(res)], { type: application/pdf })// 创建一个表示该Blob的URLconst url URL.createObjectURL(blob);// 创建一个a标签用于下载const a document.cr…

高性能服务器网络模型详解

1999年Dan Kegel在发表的论文中提出了The C10K problem&#xff0c;这篇论文对传统服务器架构处理大规模并发连接时的挑战进行了详细描述&#xff0c;并提出了一些解决方案和优化技术。这里的C指的是Concurrent(并发)的缩写&#xff0c;C10K问题是指怎么在单台服务器上并发一万…

前端 CSS 经典:3D Hover Effect 效果

前言&#xff1a;有趣的 3D Hover Effect 效果&#xff0c;通过 js 监听鼠标移动&#xff0c;动态赋值 rotateX&#xff0c;rotateY 的旋转度来实现。 效果图&#xff1a; 代码实现&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta …

python作业:实现一个任务列表管理系统,使用到python类、对象、循环等知识

实现一个简单的任务列表管理系统&#xff0c;可以用于python学习的作业或者练习。系统的功能包括&#xff1a; 用户可以添加任务、查看任务列表、标记任务为已完成&#xff0c;以及删除任务。 代码如下&#xff1a; class Task: def __init__(self, name, completedFalse):…

修改ModelLink在RTX3090完成预训练、微调、推理、评估以及TRT-LLM转换、推理、性能测试

修改ModelLink在RTX3090完成预训练、微调、推理、评估以及TRT-LLM转换、推理、性能测试 1 参考文档2 测试环境3 创建容器4 安装AscendSpeed、ModelLink5 下载LLAMA2-7B预训练权重和词表6 huggingface模型的推理及性能测试7.1 修改torch,deepspeed规避缺失npu环境的问题7.2 修改…