自建RustDesk中继服务器:10分钟跑通远程桌面

2 阅读5分钟

我了解远程桌面这个话题还得源于无界趣连这款软件,当时我想要实现在手机上可以操控电脑,我在无界趣连这款软件上实现了,我当时觉得非常神奇。于是我又在B站上找远程桌面的软件,发现了Parsec这款软件,看视频介绍说它可以远程流畅打游戏,然后我就试了试这个软件,因为当时几乎什么都不懂,不知道该怎么用,不过经过一番瞎琢磨还真连接上了。然后我就故意离家远一些,想看看我能不能连接成功,结果连接不上。后怎么样,时间太长了,我忘了,但是我记得后来我把它删了。

时间回到现在,在我有了一个vps之后,我围绕vps学习了很多东西。当然也包括了远程桌面相关的知识。

好,废话讲完了,让我们步入正题。

在远程桌面这个话题中,你绕不开一个工具--RustDesk。它是目前在GitHub上比较火的开源的远程桌面工具,你自建中继服务的话,所有的信息都有你自己掌控,所以有这方面需求的人我还是很推荐这款软件的。

虽然rustdesk也有一些缺点,其中最有特色的是在中国区域你没有搭建中继服务的话,会不能连接:

3-1.png

至于rustdesk的功能我就不介绍了,你能点开这个文章就证明你知道rustdesk是干什么的。

下面我介绍两种搭建rustdesk中继服务的方法:

1.用1panel面板搭建

2.直接用docker搭建

如果你的vps上面没有1panel面板或docker,请看这篇文章:

新VPS到手必做3件事:改密码+1panel可视化面板+安装Docker

1panel面板部署:

我推荐这个方法,点几下鼠标就搭建完成了。

打开应用商店,直接搜索rustdesk,搜索到之后点击安装。

3-2.png

按照我的截图配置一下:

3-3.png 我没截图到的,就是默认不用改。

注意: 我画红框的地方,你把你的vps的ip写上去就行了,假如你的vps的IP是:145.26.65.200,直接将这个IP写上去。 还有一点是将端口外部访问勾选上。

改完之后,点击编辑compose文件(你也可以不改,因为下面的代码只是改了一个路径),可以直接将下面的代码直接粘贴过去:

services:
  rustdesk-server:
    container_name: ${CONTAINER_NAME}
    restart: always
    networks:
      - 1panel-network
    ports:
      - "${PANEL_APP_PORT_NAT}:21115"
      - "${PANEL_APP_PORT_HBBS}:21116"
      - "${PANEL_APP_PORT_HBBS}:21116/udp"
      - "${PANEL_APP_PORT_HBBR}:21117"
      - "${PANEL_APP_PORT_WEB_CLIENT_1}:21118"
      - "${PANEL_APP_PORT_WEB_CLIENT_2}:21119"
    volumes:
      - "/opt/rustdesk:/data"
    environment:
      - "RELAY=${HOST_ADDRESS}:${PANEL_APP_PORT_HBBR}"
      - "ENCRYPTED_ONLY=1"
    image: rustdesk/rustdesk-server-s6:latest
    labels:  
      createdBy: "Apps"
networks:  
  1panel-network:  
    external: true

现在直接点击安装就行了。

3-4.png

出现这个界面就是rustdesk安装成功了。

现在打开1panel的文件管理,跟着截图走就行了(鼠标双击打开文件夹):

3-5.png

3-6.png

3-7.png

3-8.png

将这行密钥复制下来,待会要用。

接下来就是配置客户端了。 RustDesk官网地址:rustdesk.com/zh-cn/ Github地址:github.com/rustdesk/ru… 你可以看到rustdesk支持电脑和手机。

3-9.png

选择对应的安装包安装就好了。 安装完之后你看一下主界面:

3-10.png

虽然你现在是就绪状态,但其实你现在并不能使用,有限制。 打开rustdesk的设置(这里以电脑端为例):

3-11.png

这一步会让你使用管理员权限,同意一下就行了。

3-12.png

同意之后,你就会发现网络设置解锁了:

3-13.png

就会出现下面的界面:

3-14.png

这里说一下: ID服务器和中继服务器都填你的vps的IP。 API服务器不用填。 Key就填你刚才复制的那个密钥。

信息填写完整后,点击确定。

3-15.png

现在回到主界面,你会发现现在rustdesk就是就绪状态。

3-16.png

现在rustdesk就完全可以用了。 另一台电脑安装上rustdesk,像这样配置一下,配置好后,你就可以连接两台电脑了。 手机端我就不说了,因为和电脑端差不多,只是界面不一样,设置是一样的。配置好后,就可以手机连接电脑,电脑连接手机了。

Docker部署:

现在说一下,不借助1panel面板直接用docker怎么部署。 docker前面那篇文章说了怎么安装,这里就不说了。 我们用docker-compose的方式启动。

首先,如果你的vps上安装了UFW(这个其实就是防火墙),请使用以下命令配置防火墙:

ufw allow 21114:21119/tcp
ufw allow 21116/udp
sudo ufw enable

可以用这个命令查看有没有安装ufw:

ufw --version

出现版本号就是安装了,出现command not found就是没有安装。 然后我们新建一个rustdesk文件夹:

mkdir /opt/rustdesk

移动到rustdesk文件夹:

cd /opt/rustdesk

创建并编辑docker-compose.yml:

nano docker-compose.yml

如果你没装nano,会出现command not found这个错误: 运行这个命令安装nano:

sudo apt install nano -y

将下面这段代码直接粘贴上去(鼠标右键点一下就行了):

services:
  hbbs:
    container_name: hbbs
    image: rustdesk/rustdesk-server:latest
    command: hbbs
    volumes:
      - /opt/rustdesk:/root
    network_mode: "host"

    depends_on:
      - hbbr
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    image: rustdesk/rustdesk-server:latest
    command: hbbr
    volumes:
      - /opt/rustdesk:/root
    network_mode: "host"
    restart: unless-stopped

粘上去之后,先按Ctrl + O,再按回车,最后按Ctrl + X离开。 这段代码是官方提供的,我改了一下路径。 这是链接:rustdesk.com/docs/zh-cn/…

启动rustdesk:

docker compose up -d

启动完成后,查看当前文件夹内容:

ls

你会看到一个id_ed25519.pub文件。

3-17.png

如果你没有看到id_ed25519.pub文件,输入这条命令:

ls /opt/rustdesk

查看id_ed25519.pub文件:

cat id_ed25519.pub

你会看到:

jCS6MYOppxAJUYQOunICYdP3SCqKG1MNqLMVYvrSagc=root@server:/opt/rustdesk#

3-18.png

root@server:/opt/rustdesk#

这一串前面的就是密钥(注意:密钥里有等号)。 密钥就是:

jCS6MYOppxAJUYQOunICYdP3SCqKG1MNqLMVYvrSagc=

将这一串密钥复制一下,就可以配置电脑上的rustdesk了,配置和1panel面板部署的配置一模一样,跟着上面走就行了。