• 无需公网IP,在家SSH远程连接公司内网服务器「cpolar内网穿透」


    本次教程我们来实现如何在外公网环境下,SSH远程连接家里/公司的Linux CentOS服务器,无需公网IP,也不需要设置路由器。

    1. Linux CentOS安装cpolar

    cpolar官网:https://www.cpolar.com/

    cpolar支持一键自动安装脚本

    • cpolar 安装(国内使用)
    curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
    
    • 1

    或 cpolar短链接安装方式:(国外使用)

    curl -sL https://git.io/cpolar | sudo bash
    
    • 1
    • 查看版本号,有正常显示版本号即为安装成功
    cpolar version
    
    • 1
    • token认证,登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里
    cpolar authtoken xxxxxxx
    
    • 1

    20230310092513

    • 简单穿透测试,如有正常生成公网地址则为穿透成功,按ctrl+c退出
    cpolar http 8080
    
    • 1
    • 向系统添加服务
    sudo systemctl enable cpolar
    
    • 1
    • 启动cpolar服务
    sudo systemctl start cpolar
    
    • 1
    • 查看服务状态,,正常显示为active则表示为启动成功在线状态
    sudo systemctl status cpolar
    
    • 1

    cpolar安装成功后,默认会安装2条样例隧道,可自行编辑或者删减

    • website隧道:使用http协议,指向本地8080端口
    • ssh隧道,使用tcp协议,指向本地22端口

    2. 创建TCP隧道

    centOS系统本地安装cpolar内网穿透之后,在外部浏览器上访问centOS本地9200端口,访问方式:局域网ip+:9200,打开cpolar web ui界面。

    安装cpolar后,会默认生成一个ssh名称的隧道,如果有ssh,则可以直接跳到查看在线隧道列表,然后远程连接

    image-20230308165855618

    如果没有,我们点击左侧仪表盘的隧道管理——创建隧道,由于ssh连接默认的是22端口,因此我们要来创建一条tcp隧道,指向22端口:

    • 隧道名称:可自定义,注意不要重复
    • 协议:tcp
    • 本地地址:22
    • 域名类型:选择随机域名
    • 地区:选择China VIP

    点击创建

    image-20230308170302490

    创建好后打开在线隧道列表,查看随机公网tcp地址

    image-20230308170602609

    3. 随机地址公网远程连接

    在外我们可以通过这个公网地址来SSH远程连接Linux CentOS,以windows系统为例,我们使用在cmd窗口即可远程连接centOS

    ssh -p 端口号 用户名@公网地址 
    
    • 1

    这里需要注意,由于我们的本地22端口到了公网被映射到了23075端口(您的公网端口可能不一样),所以,ssh命令需要加-p参数,后面加公网端口号

    image-20230308171327763

    同时我们也可以使用xshell工具也可以连接

    image-20230308180406308

    4. 固定TCP地址

    我们通过cpolar建立的临时TCP数据隧道,成功连接了位于局域网下的centos系统,,并能通过这条TCP连接隧道进行无差别操作。不过,此时的TCP数据隧道还是随机临时TCP隧道,每隔24小时端口号就会发生变化,更适合应用于系统调试、远程解决操作问题等环境。

    如果想要让这条数据隧道长期稳定存在,我们还需要进一步的设置。首先要登录cpolar官网,点击左侧的预留

    在这里插入图片描述

    在预留界面中,找到保留的TCP地址项目。在这个项目下,我们填入一些必要信息,如识别数据隧道的隧道名称、隧道使用区域等。

    • 地区:选择China VIP
    • 描述:即备注,可以自定义填写

    然后点击保留

    image-20230308182039249

    地址保留成功后,cpolar会返回一个固定公网地址+固定公网端口号,这就是我们ssh连接到centos系统的固定地址,将其复制下来

    image-20230308182152002

    接着我们回到cpolar web UI 管理界面,打开隧道列表,找到之前创建的随机临时TCP隧道,进入编辑页面

    image-20230308182613303

    将我们在cpolar官网获得的隧道端口粘贴进预留的TCP地址栏中,然后点击下方的更新按钮

    • 端口类型:改为选择固定TCP端口
    • 预留的TCP地址:填写刚刚保留成功的固定公网地址

    点击更新
    image-20230308182756937

    然后再次查看在线隧道列表,发现ssh的隧道对应的公网地址变成了我们官网保留的固定地址

    image-20230308182850431

    此时,我们就可以在其他设备和操作系统下,使用命令,稳定轻松的连接到Linux CentOS系统中,且不用再担心数据隧道端口号重置的问题。

    5. 使用固定公网TCP地址SSH远程

    打开cmd,执行ssh命令

    ssh -p端口号 用户名@公网地址
    
    • 1

    这里需要注意,还是需要加-p参数,后面加公网端口号
    image-20230308183641503

    同时使用xshell工具也可以连接。

    image-20230308184643363

    综上,成功实现了在外公网环境下也可以SSH远程连接到公司/家里的Linux CentOS服务器,不需要公网IP,也不用设置路由器,简单通过cpolar内网穿透工具映射本地22端口,通过所生成的公网地址来进行SSH远程连接。

    转载自cpolar内网穿透的文章:无公网IP,SSH远程连接Linux CentOS【内网穿透】

  • 相关阅读:
    buuctf crypto 【[GXYCTF2019]CheckIn】解题记录
    Go语言 Map
    request对象对请求体,请求头参数的解析
    CV学习——day32 读论文:顶会ICCV · 会议CV——2021 Swin Transformer
    图像阈值分割(一)
    你的工具包已到货「GitHub 热点速览 v.22.31」
    定制化图标——Element UI 组件图标替换指南
    【ONE·C++ || 网络基础(二)】
    《C++新经典》第16章 智能指针
    基于Ansys workbench进行发动机风扇非定常流固耦合计算
  • 原文地址:https://blog.csdn.net/m0_73879806/article/details/132679795