在工作中,咱们经常要使用向日葵、TeamViewer 等远程控制工具,来远程操控项目上的主机去解决一些部署在现场的系统问题,亦或是在家偶尔加班时用家里的电脑远程公司的电脑处理工作。但不爽的是,TeamViewer 用一用试用期就过了,而免费的向日葵在网络环境不是很好的情况下,延迟会有些高,画质也比较差。
同时,公司要求的安全问题也提上了日程,使用第三方的远程控制工具总会有安全隐患。如何解决远程控制工具收费、速度慢、非私有化的这几个问题呢?今天就给大家推荐这款超级好用的开源远程控制工具——RustDesk。
项目简介
RustDesk 是一个开源的远程支持和远程桌面软件,它提供了跨平台的远程连接和协助功能,旨在帮助用户远程访问和管理其他计算机。使用了一段时间后,感觉 RustDesk 除了包含了远程控制工具最常见的功能以外,它最大的优点就是可以私有化部署,进而保证网络传输的稳定性和安全性!
项目使用
如果只是简单体验一下 RustDesk 的功能,其实非常简单。直接到官网首页下载适用自己系统的客户端即可,控制端和被控端都要安装哦。
官网地址:https://rustdesk.com/
打开软件之后,和其他的远程控制工具一样,会展示本机的 ID 和密码。你也可以在输入框里填写被控制端的 ID 和密码,点击连接,就可以通过 RustDesk 提供的中继服务器进行远程控制了。
私有化部署
当然,RustDesk 提供的免费服务器,网速和安全性保障还是差一些,可以保证能用,但是没法让我们感觉用的爽。下面我就介绍一下,如何用自己的服务器搭建远程控制的中继服务,实现稳定且安全的数据传输。
服务端部署
RustDesk 对服务器的性能要求非常的低,只需要最低配置的云服务器即可。
我们需要部署两个服务:
-
hbbs - RustDesk ID 注册服务器
-
hbbr - RustDesk 中继服务器
这里我们使用 docker 来安装这两个服务。非常简单,命令如下:
sudo docker image pull rustdesk/rustdesk-server
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbs
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr
这里要注意的是,hbbs 和 hbbr 需要监听以下端口:
-
TCP(21115, 21116, 21117, 21118, 21119)
-
UDP(21116)
所以大家需要在云服务器的管理后台上,将防火墙的这几个端口打开,保证服务的正常连接。
这样我们的服务就搭建好啦~
客户端配置
服务端搭建完毕之后,我们的客户端也需要做一些相应的配置。
因为客户端默认连接的是 RustDesk 的后端服务,所以这里我们需要将客户端的连接信息配置成我们自己搭建的服务地址。
首先需要获取服务端的 key。
执行 docker 命令docker exec -it 466a0f8e3ba0 bash
(其中466a0f8e3ba0
是 hbbs 容器的 id),进入 hbbs 的容器根目录下,执行cat ./id_ed25519.pub
查看自动生成的 key 值,如图所示。
之后在客户端界面点击 ID 右侧的菜单按钮如下,选择“ ID/中继服务器”。
在弹出的界面填写“ID 服务器”和“Key”这两个选项,内容分别是你服务器的 IP 地址和刚才查看的 Key 值。
注意,控制端和被控端都要填写哈。
再来试试
客户端配置好后,我们再重新开启远程控制,成功啦~
我们可以点击上方的小电脑图标,来选择画面的比例以及画质,方便我们在不同的网络环境下获得最好的远程控制体验。
点击顶部的小闪电按钮,可以设置远程主机的登录密码,方便下次登录。也支持传输文件,远程锁定等基本的功能。
总结
RustDesk 真的是非常好用的一款远程控制工具,个人体验来看,在网络环境稍差的情况下,RustDesk 的画质和流畅程度比向日葵要好,文件传输的交互也能舒服很多。感兴趣的朋友,一定要来试试!
客户端项目地址:https://github.com/rustdesk/rustdesk
服务端项目地址:https://github.com/rustdesk/rustdesk-server
官方文档:https://rustdesk.com/docs/zh-cn/
写在最后
给大家分享一套基于Springboot+Vue的酒店管理系统源码,在实际项目中可以直接复用。(免费提供,文末自取)
一、系统运行图(管理端和用户端)
1、管理登陆
2、房间管理
3、订单管理
4、用户登陆
5、房间预定
二、系统搭建视频教程和源码
源码免费领取方式
扫码关注本号,后台回复 酒店
扫码关注本号,后台回复 酒店
持续关注本号,分享更多项目源码
分享一些关于学习Java编程方面的经验
Java是一种广泛应用于软件开发领域的编程语言,具有跨平台、面向对象等特点。在开发Java项目时,我们需要遵循一些基本原则和步骤,以确保项目的顺利进行和高质量的交付。本文将为您介绍如何开发Java项目的一般流程和注意事项。
1. 需求分析:在开始开发之前,我们需要与客户或项目组成员充分沟通,了解项目的需求和目标。明确项目的功能、性能、安全等方面的要求,以便后续的开发工作能够有针对性地进行。
2. 系统设计:在需求分析的基础上,我们需要进行系统设计。这包括确定项目的架构、模块划分、数据库设计等。合理的系统设计可以提高项目的可扩展性和可维护性。
3. 编码实现:根据系统设计的结果,我们开始进行编码实现。在编写代码时,我们应该遵循良好的编码规范和设计原则,保证代码的可读性和可维护性。同时,我们也可以利用一些常用的开发框架和工具来提高开发效率。
4. 单元测试:在编码完成后,我们需要进行单元测试。通过编写测试用例,对每个模块进行测试,以确保代码的正确性和稳定性。单元测试可以帮助我们及早发现和修复潜在的问题。
5. 集成与部署:当所有模块都通过了单元测试后,我们需要进行集成测试。将各个模块组合起来,并进行整体的功能测试和性能测试。在测试通过后,我们可以将项目部署到生产环境中,供用户使用。
6. 维护与优化:项目上线后,并不意味着开发工作的结束。我们需要持续关注项目的运行情况,及时修复bug,并根据用户反馈进行功能优化和性能优化。这样可以提高项目的稳定性和用户体验。
Java项目开发是一个复杂而又有挑战性的过程,但只要我们按照以上步骤进行,就能够有效地提高开发效率和项目质量。同时,我们也应该不断学习和掌握新的技术和工具,以跟上行业的发展和变化。希望本文对您在Java项目开发方面有所帮助!