宝塔Docker参考文档:https://www.bt.cn/bbs/thread-95674-1-1.html
RustDesk自建服务器参考文档:https://rustdesk.com/docs/zh-cn/self-host/install/
一、准备工作
!!请先完成宝塔面板的安装,然后再继续观看下文。
特别提示,Windows下的宝塔面板暂未支持Docker,所以本文只针对 Linux。
二、拉取rustdesk/rustdesk-server镜像
打开宝塔面板的Docker,将 rustdesk/rustdesk-server 拉取下来。
Tips:宝塔面板的Docker插件安装之后,可以直接在终端中执行 docker 命令;因此,上面的操作等同于:docker image pull rustdesk/rustdesk-server命令。
拉取成功后,就能得到下图的镜像
宝塔Docker参考文档:的容器端口添加似乎并不能进行 21116 -> 21116/udp 的操作,因此,我们需要在终端下执行 docker 命令,请继续按照下文进行。
三、运行RustDesk服务端(hhbs/hhbr)
RustDesk自建服务器参考文档: 中对于Docker的启动方式有以下两条命令。
原命令:
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 -r <relay-server-ip[:port]>
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr
这里有几个坑点:
1、
pwd
代表的引用当前目录。2、–net=host 造成的网络错误,(官方文档也强调将 –net=host 删除)。
3、relay-server-ip[:port] 的含义,表示:当前服务器的外网IP:指定的端口号;端口号可以省略。
因此,我们需要修改命令:
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -td rustdesk/rustdesk-server hbbs -r 当前服务器的外网IP:指定的端口号
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td rustdesk/rustdesk-server hbbr
对于 pwd
我们不予修改,只需要将 –net=host 删除即可。
然后,我们通过终端命令行工具连接到我们的远程服务器,本文使用的是 Xshell 7 个人免费版。
创建一个存放hhbs/hhbr运行之后,生成相关文件的文件夹,这里就直接命名为 rustdesk_server 了;接着cd rustdesk_server 进入 rustdesk_server 目录。
运行修改后的命令:
出现类似上图的提示则表示成功了;然后可以刷新宝塔面板查看运行结果,
四、配置RustDesk客户端
最后,就是配置RustDesk客户端了。
我们打开,RustDesk客户端软件,找到如下图的操作按钮。
输入ID服务器(也就是我们的服务器IP)即可,中继服务器可以不填,如果填,与IP服务器保持一致即可。
然后点击确定,通过如下图的提示,能看到 就绪 二字,则表示成功!
Tips:一旦采用自建服务器进行远程控制,所有客户端都需要进行 ID/中继器服务器 的配置;否则,将无法正常连接。
举个例子:你需要操作别人电脑,你的客户端配置了ID/中继器服务器 ,而别人的电脑使用的是官方默认服务器,则无法进行远程连接,反之亦然。
五、Key的设置
正如官方所述,默认的 hhbs/hhbr 命令执行后,虽然有key文件的生成。
然而并未强制所有客户端对key的使用;因此,你可以通过以下命令对所有客户端强制使用 key。
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -td rustdesk/rustdesk-server hbbs -r 当前服务器的外网IP:指定的端口号 -k 指定的key
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td rustdesk/rustdesk-server hbbr -k 指定的key
我们将宝塔面板的 docker 容器任务删除(hbbs/hbbr都删除掉,下面只放了一张图),然后强制指定 key 为 abc123,重新执行上述命令
切回远程终端命令行,将刚才的文件夹清空rm -rf *
执行上述命令
这时候,id_ed25519、id_ed25519.pub文件却没有再次生成,可能是强制指定key的缘故
这时候再连接服务器就需要加上我们刚刚设置的公共key:abc123了。
Tips:被控制端可以不用填写 key ,控制端则必须填写 key
至此,关于RustDesk自建服务器的搭建到此结束!