Linux Deepin系统安装x11vnc+cpolar实现Windows系统电脑远程其桌面

文章目录

    • 1. 安装x11vnc
    • 2. 本地远程连接测试
    • 3. Deepin安装Cpolar
    • 4. 配置公网远程地址
    • 5. 公网远程连接Deepin桌面
    • 6. 固定连接公网地址
    • 7. 固定公网地址连接测试

x11vnc是一种在Linux系统中实现远程桌面控制的工具,它的原理是通过X Window系统的协议来实现远程桌面的展示和控制。在Linux系统中,X Window系统是用于图形界面显示的基础架构,它通过客户端-服务器的方式工作,x11vnc就是作为一个服务器程序来运行,接受客户端的连接并提供远程桌面服务。

Cpolar内网穿透是一种安全的内网穿透云服务,可以将内网下的本地服务器通过安全隧道暴露至公网,使得公网用户可以正常访问内网服务。它支持HTTP、HTTPS、TCP协议端口映射。

下面介绍在Deepin中安装x11vnc工具,并结合Cpolar内网穿透工具实现无公网IP也可以远程连接Deepin精美的桌面.

1. 安装x11vnc

首先更新仓库

sudo apt update

执行下面命令安装x11vnc

sudo apt install x11vnc -y

安装完成后设置密码,注意该密码是连接时需要输入的密码!

x11vnc -storepasswd

执行后会提示输入两遍密码,按照提示输入即可

image-20231205133319015

上面密码设置后,保存在这个位置/home/jon/.vnc/passwd(具体以自己显示路径为准),需要把这个密码文件复制一份到/etc/x11vnc.pass这个路径,执行下面命令复制

sudo cp /home/jon/.vnc/passwd /etc/x11vnc.pass

复制完成后,设置x11vnc开机启动,创建系统服务文件

sudo vim  /lib/systemd/system/x11vnc.service

把下面内容复制到里面,复制完成后记得保存

[Unit]
Description=Start x11vnc at startup.
After=multi-user.target[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared[Install]
WantedBy=multi-user.target

设置好后, 通过下面系列命令设置启动和开机自启

#设置开机自启
sudo systemctl enable x11vnc#启动x11vnc
sudo systemctl start x11vnc#查看状态
sudo systemctl status x11vnc

执行上面启动和设置开机自启后,再执行查看状态命令,可以看到x11vnc运行正常,x11vnc安装完毕,下面进行本地测试连接

image-20231205135839866

2. 本地远程连接测试

Windows 需要下载vnc客户端,进入官网下载https://www.realvnc.com/en/connect/download/viewer/

image-20231205145239626

下载后直接安装即可,安装完成打开软件,输入局域网IP,然后回车

image-20231205145609766

出现提示框,选择勾选不再提示,点击continue

image-20231205145729793

然后输入安装时候设置的密码,可以选择保存密码,点击OK

image-20231205145902266

这样就可以看到了Deepin精美的桌面,本地安装测试就算完成了,下面进行远程访问连接设置,首先安装cpolar内网穿透工具

image-20231205145934243

3. Deepin安装Cpolar

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

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

  • 使用一键脚本安装命令(执行命令后如果卡住表示需要输入Deepin sudo的密码)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

cpolar安装和成功启动服务后,浏览器上访问9200端口即:【http://127.0.0.1:9200】,使用cpolar官网注销的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可

image-20231205142602657

4. 配置公网远程地址

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

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:5900 (x11vnc默认端口)
  • 域名类型:临时随机TCP端口
  • 地区:选择China

点击创建

image-20231205150158690

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

image-20231205150315832

5. 公网远程连接Deepin桌面

上面在Cpolar中创建了远程Deepin 桌面的VNC公网地址,现在再次打开VNC客户端,输入Cpolar中的公网地址,然后回车

image-20231205150548536

出现提示框,勾选不再提示,然后点击continue

image-20231205150741743

输入登录的密码

image-20231205150914192

我们可以看到远程连接成功,看到了我们精美的Deepin 桌面,这样我们一个远程Deepin桌面的公网地址就设置好了

image-20231205150940080

小结

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

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

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

6. 固定连接公网地址

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

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

保留一个固定tcp地址

登录Cpolar官网,点击左侧的预留,找到保留的tcp地址,为VNC隧道保留一个固定tcp地址:

  • 地区:选择China vip
  • 描述:即备注,可自定义

点击保留

image-20231205151316925

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

image-20231205151339737

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

image-20231205151418021

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

  • 端口类型:修改为固定tcp端口
  • 预留的tcp地址:填写官网保留成功的地址,

点击更新

image-20231205151512844

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

image-20231205151542504

7. 固定公网地址连接测试

固定好了地址后,使用我们固定的TCP地址进行连接,打开VNC客户端,输入Cpolar中的固定公网地址,然后回车

image-20231205151704348

同样勾选不再提示,然后点击continue

输入vnc密码,这次可以选择记住密码,然后点击OK

可以看到,固定地址远程桌面成功,这样一个固定的远程Deepin桌面公网地址就设置好了,所有的设置都已经配置完成,接下来就可以使用公网地址在随时随地任意设备远程精美的Deepin桌面了
image-20231205151933512

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

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

相关文章

MySQL中replace into详解、批量更新、不存在插入存在则更新、replace into的坑

文章目录 一、replace into原理二、replace into的三种形式三、replace into 使用案例3.1、replace into values3.1.1、只有主键且主键冲突3.1.2、有主键有唯一索引且主键冲突3.1.3、有主键有唯一索引且唯一索引冲突(有坑)3.1.4、有主键有唯一索引且与一条主键冲突与另一条唯一…

开发Android Launcher的技术难点

开发Android Launcher可能会面临一些技术难点,以下是开发Android Launcher可能面临的一些技术难点,解决这些难点需要开发团队具备扎实的Android开发经验和技术水平,同时需要不断地进行优化和改进。北京木奇移动技术有限公司,专业的…

Redis缓存穿透的几种解决方案

目录 缓存穿透原理: 缓存穿透一般有几种解决方案: 1.缓存空值 2.使用锁 3.布隆过滤器 优缺点 布隆过滤器误判理解 布隆过滤器的简单使用流程 4.组合方案 那么当我们高并发的访问短链接或者人为的去穿透的时候呢? 最近做项目遇到了缓…

淘宝API接口开发系列——淘宝详情数据采集

淘宝详情数据采集涉及多种技术和方法,下面列举几种常见的方式: 请求示例,API接口接入Anzexi58 爬虫技术:使用编程语言(如Python)编写网络爬虫程序,通过模拟浏览器行为访问淘宝网站,…

atoi函数及模拟实现

✅博客主页:爆打维c-CSDN博客​​​​​​ 🐾 🔹分享c语言知识及代码 文章目录 一、atoi函数的简要介绍 1.函数原型 二、atoi函数的使用示例 💠正数示例: 💠负数示例: 💠带有符号示例&am…

【C语言步行梯】C语言实现扫雷游戏(含详细分析)

🎯每日努力一点点,技术进步看得见 🏠专栏介绍:【C语言步行梯】专栏用于介绍C语言相关内容,每篇文章将通过图片代码片段网络相关题目的方式编写,欢迎订阅~~ 文章目录 需求分析具体实现主函数体菜单实现游戏实…

Docker 从0安装 nacos集群

前提条件 Docker支持一下的CentOs版本 Centos7(64-bit),系统内核版本为 3.10 以上Centos6.5(64-bit) 或者更高版本,系统内核版本为 2.6.32-431 或者更高版本 安装步骤 使用 yum 安装(CentOS 7下) 通过 uname -r 命令查看你当…

MFC界面美化第四篇----自绘list列表(重绘列表)

1.前言 最近发现读者对我的mfc美化的专栏比较感兴趣,因此在这里进行续写,这里我会计划写几个连续的篇章,包括对MFC按钮的美化,菜单栏的美化,标题栏的美化,list列表的美化,直到最后形成一个完整…

Codeforces Round 935 (Div. 3)(A,B,C,D,E,F)

比赛链接 阳间场,阴间题,最考阅读理解的一场。题目本身的难度不大。 A. Setting up Camp 题意: 组委会计划在奥运会结束后带领参赛者进行一次徒步旅行。目前,需要携带的帐篷数量正在计算中。据了解,每个帐篷最多可容…

前端vue3-手动设置滚动条位置/自动定位

从B页面进行xx操作后需要跳转到A页面,并定位到AA职位,上图为A页面。 A页面的左侧是div,内层包裹List组件 给div定义refleftRef,在代码中写如下: function scrollTop() {if (leftRef.value) {console.log(99, leftRef.value);next…

0基础 三个月掌握C语言(13)

数据在内存中的存储 整数在内存中的存储 在讲解操作符时 我们就已经学习了该部分的内容 这里我们回顾一下 整数的二进制表示方法有三种:原码 反码 补码 有符号的整数(unsigned) 三种表达方式均有符号位和数值位两部分 最高位的一位被当…

文件包含漏洞之包含SESSION(CTF题目)

这次使用的环境是ubuntunginxphpmysql 首先四个文件源码在以下链接中: 一道CTF题:PHP文件包含 | Chybeta 我们注册一个用户名111密码111,然后登录查看cookie和linux的session,因为我们的de服务器 是手动搭建的,所以…

Java IO模型

NIO Java IO 模型1. 什么是IO计算机结构角度应用程序角度 2. 常见的内存模型3. Java中常见的IO模型3.1 BIO(Blocking I/O)3.2 NIO(Non-blocking/New I/O)同步非阻塞 IO 模型I/O 多路复用模型 3.3 AIO(Asynchronous I/O…

Spring6.1新特性,四种方式调用REST接口(RestClient、WebClient、RestTemplate、HTTP Interface)

个人博客:无奈何杨(wnhyang) 个人语雀:wnhyang 共享语雀:在线知识共享 Github:wnhyang - Overview 官网 REST Clients :: Spring Framework The Spring Framework provides the following choices for…

电子元器件批发采购中的供应链透明度与可追溯性

电子元器件批发采购中的供应链透明度与可追溯性是非常重要的,特别是考虑到供应链的复杂性和全球化。以下是一些关于如何增强供应链透明度和可追溯性的建议: 供应商审核与选择:对潜在的供应商进行全面的审核和评估,了解其供应链结构…

【Leetcode】1793. 好子数组的最大分数

文章目录 题目思路代码复杂度分析时间复杂度空间复杂度 结果总结 题目 题目链接🔗 给你一个整数数组 n u m s nums nums (下标从 0 0 0 开始)和一个整数 k k k 。 一个子数组 ( i , j ) (i, j) (i,j) 的 分数 定义为 m i n ( n u m s …

ROS2从入门到精通0-3:VSCode 搭建 ROS2 工程环境

目录 0 专栏介绍1 Ubuntu下安装VSCode1.1 基本安装1.2 将VSCode添加到侧边栏 2 VSCode集成相关插件3 VSCode运行ROS2环境步骤3.1 安装编译依赖项3.2 创建工作空间和源码空间3.3 启动VSCode与配置 4 测试工程环境4.1 C版本4.2 Python版本 0 专栏介绍 本专栏旨在通过对ROS2的系统…

一、初识 web3

瑾以此系列文章,献给那些出于好奇并且想要学习这方面知识的开发者们 在多数时间里,我们对 web3 的理解是非常模糊的 就好比提及什么是 web1 以及 web2,相关概念的解释是: 1. 从 Web3 的开始 Web3,也被称为Web3.0&…

idea error java:compilation failed:internal java compiler error

idea中编译运行maven项目报错如下 idea error java:compilation failed:internal java compiler error 尝试如下操作 注意:jdk8 需要设置4个地方 1.首先打开File->Project Structure中的Project,将SDK和language level都设置一致,如下…

基于Java的考研专业课程管理系统(Vue.js+SpringBoot)

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 考研高校模块2.3 高校教师管理模块2.4 考研专业模块2.5 考研政策模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 考研高校表3.2.2 高校教师表3.2.3 考研专业表3.2.4 考研政策表 四、系统展示五、核…