无需公网IP 使用SSH远程连接Linux CentOS服务器【内网穿透】

news2025/1/23 17:31:06

文章目录

  • 视频教程
  • 1. Linux CentOS安装cpolar
  • 2. 创建TCP隧道
  • 3. 随机地址公网远程连接
  • 4. 固定TCP地址
  • 5. 使用固定公网TCP地址SSH远程

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

视频教程

公网SSH远程Linux CentOS服务器【内网穿透】

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

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

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

20230310092513

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

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 端口号 用户名@公网地址 

这里需要注意,由于我们的本地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端口号 用户名@公网地址

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

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

image-20230308184643363

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/468487.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SDK_examples问题汇总

CompParameter 看起来可以用 拖动中间的dialog框 调整下面的参数 GraphicsViewDropEvent 点击“模型库”或者“用户模型”会弹出如下,点击“中止”后退出页面 MassSpringDamperApp 成功过,现在点击“开始仿真”会显示仿真失败 MwBatchSimPlu…

Coremail RSAC大会观察:在邮件安全领域AI既是矛也是盾

《Coremail RSAC大会观察:在邮件安全领域AI既是矛也是盾》 全球网络安全界的盛会——2023年RSAC大会于当地时间4月24日-27日在美国旧金山召开,大会以“Stronger Together(一起变得更强大)”为主题,议程主要包含安全研…

想入门网络安全?先来看看网络安全行业人才需求!

如果你是一个想要入门网络安全行业的小白、如果你是网络安全专业在读的大学生、如果你是正在找工作的新手,那么这篇文章你一定要仔细看。毕竟知己知彼百战百胜,知道行业的人才需求才能更好得发挥自己的优势。 当你打开BOSS直聘、拉钩等招聘网站&#xf…

【CTF WriteUp】2023数字中国创新大赛网络数据安全赛道决赛WP(1)

2023数字中国创新大赛网络数据安全赛道决赛WP(1) 比赛感想 不多说了,还是菜,各种不会,还得学 数据安全题目 Crypto-ddddmm import os from Crypto.Util.number import * from secret import flagdef genkey(bits):p getPrime(bits)q g…

网络模型与 IO 多路复用

一、基础概念1. socket2. FD:file descriptor**3. 内核态和用户态 二、 IO 多路复用1. 常见的IO模型2. 同步和异步3. 阻塞和非阻塞 三、 阻塞IO四、非阻塞 IO1、针对 read 函数造成的阻塞2、针对 accept函数造成的阻塞3、 select 模型4、poll模型5、epoll模型 一、基…

点成分享丨液滴生成解决方案

电源及电线为了满足用户的液滴生成需求,点成生物联合cellix推出了点成生物液滴生成解决方案,该套装可以一站式轻松满足用户液滴生成实验的需求。 Part.01 点成小科普 液滴生成,是一种在具备某种几何形状的微流控芯片中使用微流控泵精确控制…

Drools 规则引擎(包括动态加载数据库中规则引擎)

Drools 规则引擎 文章目录 Drools 规则引擎前言一、规则引擎是什么?二、Drools 简介1.引入规则引擎前后程序架构:2.Drools API 开发步骤:在这里插入图片描述 三、Drools 快速入门1.使用项目文件作为规则引擎2.使用数据库存储规则引擎 四、Dro…

【shell脚本】条件语句

一、条件测试操作 1.1test命令与 [ ] 符号 测试表达试是否成立,若成立返回0,否则返回其它数值 1.1.1文件测试常用的测试操作符 符号作用-d测试是否为目录-e测试是否为目录或文件-f测试是否为文件-r测试当前用户是否有读取权限-w测试当前用户是否有写…

2023-4-27-深入理解C++指针类型间强制转换

🍿*★,*:.☆( ̄▽ ̄)/$:*.★* 🍿 💥💥💥欢迎来到🤞汤姆🤞的csdn博文💥💥💥 💟💟喜欢的朋友可以关注一下&#xf…

【致敬未来的攻城狮计划】— 连续打卡第十四天:FSP固件库开发延时函数(时钟详解)

系列文章目录 1.连续打卡第一天:提前对CPK_RA2E1是瑞萨RA系列开发板的初体验,了解一下 2.开发环境的选择和调试(从零开始,加油) 3.欲速则不达,今天是对RA2E1 基础知识的补充学习。 4.e2 studio 使用教程 5.…

数据结构_线性表、顺序表、单链表

目录 1. 线性表的定义和基本操作 1.1 线性表的定义 1.2 线性表的特点 1.3 线性表的基本操作 2. 线性表的顺序表示 2.1 顺序表的定义 2.2 顺序表上基本操作的实现 2.2.1 插入操作 2.2.2 删除操作 2.2.3 按值查找 2.3 相关练习巩固 3. 线性表的链式表示 3.1 单链表的…

Zynq-7000、FMQL45T900的GPIO控制(五)---linux应用层配置GPIO输出控制

上文中详细阐述了对应原理图MIO/EMIO的编号,怎么计算获取linux下gpio的编号 本文涉及C代码上传,下载地址 Zynq-7000、FMQL45T900的GPIO控制c语言代码资源-CSDN文库 本文详细记录一下针对获取到gpio的编号,进行配置输出模式,并进…

RobotFramework——创建项目

创建项目 实际上在Robot Framework中创建测试项目和创建单元测试项目是一致的。 robotunittest(python)Test ProjectTest ProjectTest SuitTest SuitTest CaseTest Case 1、创建测试项目 选择菜单栏 file —> New Project Name输入"TestRobot01";…

从奈奎斯特采样定理推导FMCW雷达系统性能参数

本文编辑:调皮哥的小助理 上文从FMCW毫米波雷达系统的性能参数理解4D成像毫米波雷达的设计思路,谈到关于设计4D毫米波成像雷达的思路,其实我还忽略了一点,在这里补充说明一下。 在文中谈到的最小化公式中,分母的有效带…

vscode - 配置Prettier插件和.editorconfig文件使用介绍

文章目录 1,介绍2,Prettier插件安装3,全局配置(settings.json)4,局部配置(新建.prettierrc文件)5,Prettier格式化优先级(重要)6,使用p…

【教程分享】一键部署MySQL,轻松搞定Docker安装和配置!

1 下载 MySQL 我们就可以到 docker hub 来看: 点击后的页面: 直接执行docker pull mysql,会下载最新版本的 MySQL。 点击 tags,找到并下载经典的 MySQL5.7: [rootservice-monitoring ~]# docker pull mysql:5.7.42-o…

Speech and Language Processing-之N-gram语言模型

正如一句老话所说,预测是困难的,尤其是预测未来。但是,如何预测一些看起来容易得多的事情,比如某人接下来要说的几句话后面可能跟着哪个单词。 希望你们大多数人都能总结出一个很可能的词是in,或者可能是over&#x…

【hello Linux】进程间通信——命名管道

目录 1. 命令行的命名管道 2. 命名管道 1. 命名管道的创建 2. 命名管道的使用 Linux🌷 在上篇中我们说到,可以使用匿名管道完成父子进程间的通信,它是让子进程继承父进程,从而达到让两个进程看到同一份资源; 如果我们…

急急急!Kafka Topic 资源权限紧张怎么办?

我们都知道 Kafka 的 topic 资源比较“贵”,所以一般会给项目 topic 权限限制,按需申请。Milvus 会在建新表时自动申请 kafka topic 资源,这时候自动申请不到怎么办?手动配置 topic 要符合什么规范才能被 Milvus 使用?…

Vue 3 第十六章:组件五(内置组件-teleport)

文章目录 1. Teleport组件的基本用法2. Teleport组件的高级用法2.1. 禁用 Teleport2.2. 多个Teleport组件共享目标元素 1. Teleport组件的基本用法 <teleport>组件用于将组件的内容插入到指定的DOM元素中&#xff0c;而不是插入到组件自身的位置。例如&#xff0c;当我们…