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

openKylin系统SSH服务配置结合cpolar轻松实现开放麒麟远程连接

前言

本文主要介绍如何在openKlyin系统中设置ssh连接,并结合cpolar内网穿透工具实现远程也可以ssh连接本地局域网内部署的openKlyin系统.

openKylin是中国首个基于Linux 的桌面操作系统开发者平台,通过开放操作系统源代码的方式,打造具有自主创新技术的开源桌面操作系统,目前多数使用方式都是桌面操作,openKylin是基于Linux 开发的系统,同样支持ssh连接。

cpolar是一款强大的内网穿透软件,它能够在多个操作系统上无缝运行,包括Windows、MacOS和Linux,因此无论您使用哪种操作系统,都可以轻松将本地内网服务器的HTTP、HTTPS、TCP协议端口映射为公网地址端口,使得公网用户可以轻松访问您的内网服务器,无需部署至公网服务器.

目录

1. 安装SSH服务

2. 本地SSH连接测试

3. openKylin安装Cpolar

 4. 配置 SSH公网地址

5. 公网远程SSH连接

6. 固定SSH公网地址

 7. SSH固定地址连接


1. 安装SSH服务

通常默认的openKylin系统版本都没有预装ssh服务,我们需要安装一下,安装前,首先更新包管理器,打开终端输入:

```shell

sudo apt update

```

然后安装ssh服务:

```shell

sudo apt install ssh -y

```

安装完成后,我们可以通过下面方式来操作ssh服务

```shell

# 启动ssh服务

sudo systemctl start sshd

#加入系统服务设置开机启动

sudo systemctl enable sshd

#查看状态

sudo systemctl status sshd

#重启

sudo systemctl restart sshd

```

首先执行上面启动命令,执行启动命令后,再执行查看状态命令,出现active表示正常,安装完成后,下面进行本地测试连接

2. 本地SSH连接测试

上面安装ssh 服务后,我们进行一个本地局域网IP连接,输入命令: ` ip address`,查看局域网IP(注意,每个人局域网IP不一样,具体以自己的为准!)

然后我们通过windwos cmd命令窗口创建进行连接测试,在cmd出入ssh 连接命令,可以看到,连接成功,局域网测试通过了,下面我们安装cpolar工具,实现远程访问操作

3. openKylin安装Cpolar

openKylin是一个基于Linux 开发的系统,可以使用cpolar Linux 安装方式一键快捷安装,终端的命令界面,我们输入下面指令,如首次使用,可以在下方官网链接中注册账号!

> cpolar官网地址: [https://www.cpolar.com](https://www.cpolar.com)

- 安装curl

```shell

sudo apt install curl -y

```

- 然后使用cpolar一键脚本安装命令

```shell

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

```


 

- 安装完成后,可以通过如下方式来操作cpolar服务,首先执行加入系统服务设置开机启动,然后再启动服务

```shell

# 加入系统服务设置开机启动

sudo systemctl enable cpolar

# 启动cpolar服务

sudo systemctl start cpolar

# 重启cpolar服务

sudo systemctl restart cpolar

# 查看cpolar服务状态

sudo systemctl status cpolar

# 停止cpolar服务

sudo systemctl stop cpolar

```

Cpolar安装和成功启动服务后,内部或外部浏览器上通过局域网IP加9200端口即:【http://192.168.xxx.xxx:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可

 4. 配置 SSH公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

- 隧道名称:可自定义,注意不要与已有的隧道名称重复

- 协议:tcp

- 本地地址:22

- 域名类型:临时随机TCP端口  (首次使用 选择随机地址测试)

- 地区:选择China vip

点击`创建`

然后打开左侧在线隧道列表,查看刚刚创建隧道后生成的 ssh TCP连接的地址,这个地址就是公网连接地址,我们可以在任意设备上使用该地址进行ssh 连接

5. 公网远程SSH连接

上面在cpolar中创建了ssh 的 公网地址,接下来我们在其他设备上使用公网地址进行ssh 远程连接测试,在Windows 系统命令行,按照ssh 格式输入命令后,可以看到连接成功,执行命令可以列出相关目录!

同样我们使用ssh 连接工具,也可以正常连接,在工具中输入cpolar tcp 公网地址.以Secure CRT为例

我们可以看到也是可以连接成功,这样我们一个远程ssh 地址就设置好了,无需公网IP和公网服务器即可远程openKylin系统!

**小结**

为了更好地演示,我们在前述过程中使用了Cpolar生成的隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定TCP域名,原因是我希望将地址发送给同事或客户时,它是一个固定、易记的公网地址,这样更显正式,便于流交协作。



 

6. 固定SSH公网地址

以上步骤在cpolar中使用的是随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。我们接下来为其配置固定的TCP端口地址,该地址不会变化,设置后将无需每天重复修改地址。

> 配置固定tcp端口地址需要将Cpolar升级到专业版套餐或以上。

登录[Cpolar官网](https://www.cpolar.com),点击左侧的预留,找到保留的tcp地址,我们来为SSH保留一个固定tcp地址:

- 地区:选择China

- 描述:即备注,可自定义

点击`保留`

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来



 

再次打开cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的TCP隧道,点击右侧的`编辑`

修改隧道信息,将保留成功的固定tcp地址配置到隧道中

- 端口类型:修改为固定tcp端口

- 预留的TCP地址:填写官网保留成功的地址,

点击`更新`(只需要点击一次更新即可)

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新成为了和我们在官网固定的TCP地址和端口一致。



 

 7. SSH固定地址连接

固定好了地址后,使用我们固定的TCP地址进行连接,可以看到连接成功,一个永久不变的固定地址就设置好了,在任意设备都可以使用该公网地址进行远程ssh连接!

相关文章:

openKylin系统SSH服务配置结合cpolar轻松实现开放麒麟远程连接

前言 本文主要介绍如何在openKlyin系统中设置ssh连接,并结合cpolar内网穿透工具实现远程也可以ssh连接本地局域网内部署的openKlyin系统. openKylin是中国首个基于Linux 的桌面操作系统开发者平台,通过开放操作系统源代码的方式,打造具有自…...

我的世界之合成

合成(Crafting)是一种在Minecraft中获得多种方块、工具和其他资源的方法。合成时,玩家必须先把物品从物品栏移入合成方格中。22的简易合成方格可以直接在物品栏中找到,而33的合成方格需要使用工作台或合成器来打开。 目录 1合成系…...

java基于SpringBoot+Vue+uniapp微信小程序的自助点餐系统的详细设计和实现(源码+lw+部署文档+讲解等)

项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念,提供了一套默认的配置,让开发者可以更专注于业务逻辑而不是配置文件。Spring Boot 通过自动化配置和约…...

AI 编译器学习笔记之八 -- Python基础学习

2、正则表达式 re.sub 正则替换:cleaned_text re.sub(r"[^\w\s]", "", text) - CSDN文库 3、在Python中,shape 是一个用于描述数组维度的属性,通常用在NumPy数组对象上,而不是标准的列表。 【Python】解决Py…...

盘点近几年腾讯的精选面试题(c/c++研发岗)

map插入方式有几种&#xff1f; 1)用insert函数插入pair数据&#xff0c; mapStudent.insert(pair<int, string>(1, “student_one”)); 2)用insert函数插入value_type数据 mapStudent.insert(map<int, string>::value_type (1, “student_one”)); 3)在insert函…...

C++详细笔记(四)

1.类和对象 1.1拷贝构造函数&#xff08;补充&#xff09; class Date{ public:int _year;int _month;int _day; // 全缺省的构造函数Date(int year 1900, int month 1, int day 1){_year year;_month month;_day day;} } int main() {Date d1(2024, 4, 14);Date d2(d1…...

架构师备考-背诵精华(系统架构评估)

系统架构评估是在对架构分析、评估的基础上&#xff0c;对架构策略的选取进行决策。它利用数学或逻辑分析技术&#xff0c;针对系统的一致性、正确性、质量属性、规划结果等不同方面&#xff0c;提供描述性、预测性和指令性的分析结果。 重要概念 敏感点&#xff1a;敏感点是…...

QT 实现自定义水波进度条

1.界面实现效果 以下是具体的项目需要用到的效果展示。 2.简介 原理:随着进度的改变,在我们的绘制图像void paintEvent(QPaintEvent *) override;事件中绘制图形。 使用QPainter来绘制正弦波,通过定时器,不断的更新我们绘制的图形,动态改变正弦波的参数来创建动画效果…...

厨房老鼠数据集:掀起餐饮卫生监测的科技浪潮

厨房老鼠数据集&#xff1a;掀起餐饮卫生监测的科技浪潮 摘要&#xff1a;本文深入探讨了厨房老鼠数据集在餐饮行业卫生管理中的重要性及其相关技术应用。厨房老鼠数据集通过收集夜间厨房图像、老鼠标注信息以及环境数据&#xff0c;为深度学习模型提供了丰富的训练样本。基于…...

Linux系统:more命令

1、命令详解&#xff1a; more命令是Linux系统中的一个文本查看器&#xff0c;它可以一次显示一页内容&#xff0c;并提供了一些方便的浏览操作&#xff0c;比如向下滚动、向上滚动、搜索等。当需要查看大型文件或长文本时&#xff0c;通过分页显示可以很好地避免一次性将整个文…...

ESP32-S3学习笔记:分区表(Partition Table)的二进制分析

一、参考资料 用于研究的官方示例代码&#xff1a;esp-idf-v5.3\examples\storage\partition_api\partition_find参考的官方文档&#xff1a;ESP-IDF编程指南&#xff1a;分区表 二、准备工作 用VS Code打开示例代码&#xff0c;打开示例代码的CSV自定义分区表&#xff0c;如…...

04,perl

1 &#xff0c;作用 &#xff1a; 2 &#xff0c;原理 &#xff1a; 3 &#xff0c;使用场景 &#xff1a;...

Js 更加优雅地实现Form表单重置

文章目录 前言代码实现代码优化 前言 最近在做一个后台项目 不免大量使用表单 表单查询 编辑 还原 导入导出 不免要经常实现 记录下表单重置的一些方法 代码实现 <div class"Query"><el-form :model"ruleForm" ref"ruleFormref" labe…...

基于微信小程序的驾校预约系统设计与实现

文章目录 前言项目介绍技术介绍功能介绍核心代码数据库参考 系统效果图文章目录 前言 文章底部名片&#xff0c;获取项目的完整演示视频&#xff0c;免费解答技术疑问 项目介绍 当今社会已经步入了科学技术进步和经济社会快速发展的新时期&#xff0c;国际信息和学术交流也不…...

利用python进行数据处理,得到对自己有利的内容

一&#xff0c;介绍 在2025年的公务员录取信息发布后&#xff0c;许多考生和求职者可能会感到困惑&#xff0c;尤其是在面对庞大的职位列表时&#xff0c;如何快速找到适合自己的职位成为了一个亟待解决的问题。面对这样的问题&#xff0c;以下几点建议或许能够帮助大家更有效地…...

Java面试题五

一、谈谈你对Java内存模型&#xff08;JVM Memory Model&#xff09;的理解。 Java内存模型&#xff08;Java Memory Model&#xff0c;简称JMM&#xff09;是Java虚拟机&#xff08;JVM&#xff09;规范中定义的一种关于内存访问、共享变量在多线程之间的可见性、以及原子性、…...

2013 lost connection to MySQL server during query

1.问题 使用navicat连接doris&#xff0c;会有这个错误。 2.解决 换低版本的navicat比如navicat11。...

【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-1

文件下载与邀请翻译者 学习英特尔开发手册&#xff0c;最好手里这个手册文件。原版是PDF文件。点击下方链接了解下载方法。 讲解下载英特尔开发手册的文章 翻译英特尔开发手册&#xff0c;会是一件耗时费力的工作。如果有愿意和我一起来做这件事的&#xff0c;那么&#xff…...

Android便携式WLAN热点分析

Android便携式WLAN热点分析 Platform: RK3368 OS: Android 6.0 Kernel: 3.10.0 文章目录 Android便携式WLAN热点分析分析Android开启WLAN热点的路由策略和防火墙便携式WLAN热点开启流程路由表路由策略iptables(防火墙) 用hostapd命令手动开启WLAN热点1.加载驱动2.配置wlan0 …...

从经济学原理看团队分工合作

最近我接触到一个经济学概念叫"比较优势"。学过经济学的同学应该很熟悉&#xff0c;但为了让不了解经济学的朋友们也能明白&#xff0c;我们先来解释下什么是比较优势&#xff0c;然后再谈谈为什么我认为这个原理应当被用在团队合作的分工当中。 比较优势是19世纪初…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波&#xff1a;可以用来解决所提出的地质任务的波&#xff1b;干扰波&#xff1a;所有妨碍辨认、追踪有效波的其他波。 地震勘探中&#xff0c;有效波和干扰波是相对的。例如&#xff0c;在反射波…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子&#xff0c;再用 CNN-BiLSTM-Attention 来动态预测每个子序列&#xff0c;最后重构出总位移&#xff0c;预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵&#xff08;S…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

AspectJ 在 Android 中的完整使用指南

一、环境配置&#xff08;Gradle 7.0 适配&#xff09; 1. 项目级 build.gradle // 注意&#xff1a;沪江插件已停更&#xff0c;推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...

GO协程(Goroutine)问题总结

在使用Go语言来编写代码时&#xff0c;遇到的一些问题总结一下 [参考文档]&#xff1a;https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现&#xff1a; 今天在看到这个教程的时候&#xff0c;在自己的电…...

Qt的学习(一)

1.什么是Qt Qt特指用来进行桌面应用开发&#xff08;电脑上写的程序&#xff09;涉及到的一套技术Qt无法开发网页前端&#xff0c;也不能开发移动应用。 客户端开发的重要任务&#xff1a;编写和用户交互的界面。一般来说和用户交互的界面&#xff0c;有两种典型风格&…...