autossh 实现反向代理实现通过外网访问内网环境
当我们环境搭建起来仅公司内部网络可以访问环境,在公司之外没有办法访问环境。当环境出现问题需要远程support 的时候,远程访问环境是个大问题。
有什么方法可以能够远程的就访问到公司内部的环境?
了解到需求提出来以下的解决方案实现可以远程访问环境需求。
真实环境肯定是不能拿出来给大家参考的所以使用虚机给大家分享演示一下。
1. 准备工作
server | ip | 描述 |
test1 | 10.150.117.208/20 (外网地址) | 可以通过外网访问的server ,可以组一个阿里云虚机 |
test3 |
10.150.116.249/20 (公司网和外网地址打通)
192.168.1.3/24(内网ip ) |
和阿里云可以通信的server ,且这台server 可以访问内部环境 |
test4 |
192.168.1.4/24 |
环境 |
2. 在test1 上通过防火墙做一些ip 限制,允许那些网络可以访问,并且放通指定端口
3. 在test3 上安装autossh
autossh -M 12345 -TfN -R 10022:192.168.1.4:22 root@10.150.117.208
-M 12345 本机的12345端口是用来监控ssh 连接状态出了问题会自己重连
-f 后台执行ssh指令
-C 允许压缩数据
-N 不执行远程指令
-R 将远程主机(服务器)的某个端口转发到本地主机指定的端口
-L 将本地机(客户机)的某个端口转发到远端指定机器的指定端口
-p 指定远程主机的端口
10022:192.168.1.4:22 相当于将192.168.1.4 的22 端口映射到公网主机10022 端口
root@10.150.117.208 公网主机ip
3, 执行成后在test1 上ssh -p 10022 localhost 可以直接跳到我们的192.168.1.4 server 上
4. 验证
在test1 上检查ip ping 我们想要访问的环境ip
检查我们去环境是直接ping 不通的
我们ssh 我们指定端口可以直接到我们的目的环境中
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫