当前位置: 首页 > news >正文

外网ssh远程连接服务器

文章目录

  • 外网ssh远程连接服务器
    • 一、前言
    • 二、配置流程
      • 1. 在服务器上安装[cpolar](https://www.cpolar.com/)客户端
      • 2. 查看版本号,有正常显示版本号即为安装成功
      • 3. token认证
      • 4. 简单穿透测试
      • 5. 向系统添加服务
      • 6. 启动cpolar服务
      • 7. 查看服务状态
      • 8. 登录后台,查看隧道在线状态
      • 9. 在远程控制端,实现外网ssh远程连接服务器
    • 三、安装说明

外网ssh远程连接服务器

一、前言

同一个局域网内远程ssh连接服务器,只需要知道服务器的IP地址就可以实现连接。但是在不同的局域网下,我们想要通过外网远程连接服务器(应用场景:在家远程连接公司的服务器,在家远程连接学校实验室的服务器…)应该如何实现呢?

原理:通过内网穿透实现ssh远程连接

工具:cpolar内网穿透

二、配置流程

1. 在服务器上安装cpolar客户端

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

image-20240123110843905

2. 查看版本号,有正常显示版本号即为安装成功

cpolar version

3. token认证

登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里。

cpolar authtoken xxxxxxx

image-20240123101930505

image-20240123101621321

4. 简单穿透测试

cpolar http 8080

按ctrl+c退出

image-20240123102018175

5. 向系统添加服务

sudo systemctl enable cpolar

image-20240123102228668

6. 启动cpolar服务

sudo systemctl start cpolar

image-20240123102247578

7. 查看服务状态

sudo systemctl status cpolar

如下所示,正常显示为active则为正常启动状态

8. 登录后台,查看隧道在线状态

  • https://dashboard.cpolar.com/status

安装完成后,会默认配置一个简单的样例配置文件,创建了两个样例隧道,一个是web隧道指向 http 8080端口,一个是ssh隧道指向tcp 22端口。我们用到的就是ssh隧道,登录cpolar官网后台,点击左侧的状态,查看ssh隧道对应的URL。

image-20240123102757283

9. 在远程控制端,实现外网ssh远程连接服务器

ssh -p XXXXX username@公网地址# XXXXX为cpolar生成的端口号,为ssh隧道对应URL最后面的“:”后面的数字。
# username为服务器用户名,例如root。
# 公网地址为ssh隧道对应的URL中的地址,例如1.tcp.vip.cpolar.cn# example:ssh -p 11556 amax@2.tcp.vip.cpolar.cn

image-20240123115730858

成功连接!!!

【注】使用免费的cpoalr内网穿透所生成的公网地址为随机临时地址,24小时内会随机变化。如果需要长期远程访问建议配置固定TCP端口地址,并提高带宽,实现更为高效流畅的远程。

三、安装说明

  • cpolar默认安装路径 /usr/local/bin/cpolar
  • 安装脚本会自动配置systemd服务脚本,启动以后,可以开机自启动。
  • 如果第一次安装,会默认配置一个简单的样例配置文件,创建了两个样例隧道,一个web,一个ssh
  • cpolar配置文件路径: /usr/local/etc/cpolar/cpolar.yml

参考:

cpolar使用文档

Bash 脚本教程

😃😃😃

相关文章:

  • 【FINEBI】finebi中常用图表类型及其适用场景
  • C#的WPF使用OFFICE库播放PPT
  • 复合机器人颠覆传统上下料,实现高效精准生产
  • vue3-elementPlus部分组件样式修改
  • 71 C++ Linux下的 不用 g++优化行为,验证一些问题
  • 网络协议与攻击模拟_06攻击模拟SYN Flood
  • 2024-01-23(MongoDBElasticSearch)
  • 流动的边框用css怎么实现
  • 国标GB28181协议EasyCVR启动失败报错“Local Machine Check Error”的解决方法
  • Spring/Spring boot项目接入traceId
  • Golang TCP/IP服务器/客户端应用程序,设计一个简单可靠帧传送通信协议。(并且正确处理基于流式控制协议,带来的应用层沾帧[沾包]问题)
  • Linux调试器-gdb使用
  • 免费的WordPress插件大全
  • 生命在于折腾——WeChat机器人的研究和探索
  • c++ 中 什么是转交函数
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • Bytom交易说明(账户管理模式)
  • HTTP 简介
  • HTTP请求重发
  • input实现文字超出省略号功能
  • javascript面向对象之创建对象
  • JS学习笔记——闭包
  • Laravel 实践之路: 数据库迁移与数据填充
  • log4j2输出到kafka
  • Python十分钟制作属于你自己的个性logo
  • SpiderData 2019年2月13日 DApp数据排行榜
  • 回流、重绘及其优化
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 每个JavaScript开发人员应阅读的书【1】 - JavaScript: The Good Parts
  • 驱动程序原理
  • 首页查询功能的一次实现过程
  • 微信小程序设置上一页数据
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • #HarmonyOS:基础语法
  • (07)Hive——窗口函数详解
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (八)Flask之app.route装饰器函数的参数
  • (分类)KNN算法- 参数调优
  • (官网安装) 基于CentOS 7安装MangoDB和MangoDB Shell
  • (一)基于IDEA的JAVA基础10
  • (转)setTimeout 和 setInterval 的区别
  • (转)详解PHP处理密码的几种方式
  • (转)项目管理杂谈-我所期望的新人
  • * 论文笔记 【Wide Deep Learning for Recommender Systems】
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .NET Core 版本不支持的问题
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .NET 反射 Reflect
  • [ vulhub漏洞复现篇 ] AppWeb认证绕过漏洞(CVE-2018-8715)
  • [@Controller]4 详解@ModelAttribute
  • [2016.7.Test1] T1 三进制异或
  • [20171106]配置客户端连接注意.txt