美文网首页程序员Java学习笔记
一个可以从公网穿透内网的ssh连接--sshs

一个可以从公网穿透内网的ssh连接--sshs

作者: cvi | 来源:发表于2016-12-04 13:46 被阅读533次

    起源

    公司希望能有一个功能能够实现建立从公网上的平台到线下产品的ssh连接。而我们的产品一般是在学校或者公司的内网中是无法直接建立ssh连接的。经过实验与讨论决定通过反向连接的方式来建立ssh连接。

    方案

    如果你有一个公网上的服务器,并且你需要连接一台无法直接连接的局域网内的机器。那么下面这个思路会比较适合你。

    1. 公网服务器作为连接请求分发中心
    2. 局域网机器轮询服务器获取连接请求操作
    3. 局域网机器发现有连接请求后和服务器建立socket长连接
    4. 局域网机器在本地打开终端(通过编程语言),然后获取终端输入和输出流
    5. 将终端的输入、输出流和 socket的输入、输出流关联起来
    6. 公网服务器就能间接获取到局域网机器本地终端的输入输出流

    以上解决方案涉及到socket 编程和IO操作

    sshs

    sshs是以上方案的Java语言实现。
    sshs 主要实现的是客户端机器打开终端、获取终端输入输出流、与服务端建立socket和服务端获取socket输入输出流操作。不包含解决方案中的1,2步骤。因为这些操作需要调用sshs的使用者来完成
    更详细内容情况项目地址
    项目地址:sshs

    相关文章

      网友评论

        本文标题:一个可以从公网穿透内网的ssh连接--sshs

        本文链接:https://www.haomeiwen.com/subject/wodhmttx.html