自建RustDesk服务端以及Web管理
cipheror
对于RustDesk就不过多介绍了,自建服务端也很简单,本篇主要是介绍如何一次性搭建服务端以及使用第三方来达成Web管理,并且使用https来访问Web端
Server端
需要修改的变量说明:
| 变量 | 说明 | 
| your-web-domain.com | 你的Web访问域名 | 
| any-key | 用于加密的key | 
需要放行的端口:RustDesk文档
默认情况下Docker映射的端口是直接放行的,所以我也懒得测到底需要放行哪些端口
| 端口 | 类型 | 
| 21114 | TCP | 
| 21115 | TCP | 
| 21116 | TCP/UDP | 
| 21117 | TCP | 
| 21118 | TCP | 
| 21119 | TCP | 
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 
 | mkdir -p /home/rustdeskcd /home/rustdesk
 vim docker-compose.yml
 
 networks:
 rustdesk-net:
 external: false
 services:
 rustdesk-server:
 container_name: rustdesk-server
 ports:
 - 21115:21115
 - 21116:21116
 - 21116:21116/udp
 - 21117:21117
 - 21118:21118
 - 21119:21119
 image: lejianwen/rustdesk-server-s6:latest
 environment:
 - RELAY=your-web-domain.com
 - ENCRYPTED_ONLY=1
 volumes:
 - ./data/server:/data
 restart: unless-stopped
 rustdesk-api:
 container_name: rustdesk-api
 ports:
 - 21114:21114
 image: lejianwen/rustdesk-api
 environment:
 - TZ=Asia/Shanghai
 - RUSTDESK_API_RUSTDESK_ID_SERVER=your-web-domain.com
 - RUSTDESK_API_RUSTDESK_RELAY_SERVER=your-web-domain.com
 - RUSTDESK_API_RUSTDESK_API_SERVER=https://your-web-domain.com
 - RUSTDESK_API_RUSTDESK_KEY=any-key
 volumes:
 - ./data/api:/app/data
 networks:
 - rustdesk-net
 restart: unless-stopped
 
 | 
Nginx配置https 来源以及http配置参考
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 
 | server {server_name <YOUR_DOMAIN>;
 location / {
 proxy_set_header        X-Real-IP       $remote_addr;
 proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_pass http://127.0.0.1:21114/;
 }
 
 location /ws/id {
 proxy_pass http://localhost:21118;
 proxy_http_version 1.1;
 proxy_set_header Upgrade $http_upgrade;
 proxy_set_header Connection "Upgrade";
 proxy_set_header Host $host;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header X-Forwarded-Proto $scheme;
 }
 
 location /ws/relay {
 proxy_pass http://localhost:21119;
 proxy_http_version 1.1;
 proxy_set_header Upgrade $http_upgrade;
 proxy_set_header Connection "Upgrade";
 proxy_set_header Host $host;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header X-Forwarded-Proto $scheme;
 }
 
 listen 443 ssl; # managed by Certbot
 ssl_certificate /etc/letsencrypt/live/<YOUR_DOMAIN>/fullchain.pem; # managed by Certbot
 ssl_certificate_key /etc/letsencrypt/live/<YOUR_DOMAIN>/privkey.pem; # managed by Certbot
 include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
 ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
 }
 
 server {
 if ($host = <YOUR_DOMAIN>) {
 return 301 https://$host$request_uri;
 } # managed by Certbot
 
 server_name <YOUR_DOMAIN>;
 listen 80;
 return 404; # managed by Certbot
 }
 
 
 | 
Web端
访问地址:
- http://ip:port/_admin/
- https://your-web-domain.com/_admin/
登录密码获取方式:
| 1
 | docker logs rustdesk-api
 | 

用户名:admin
密码:在上面步骤中看到的密码

Web远程的访问地址:
https://your-web-domain.com/webclient2/
客户端
下载地址
安装好之后打开客户端 点击右上角的按钮

选择安全 点击解锁安全设置

设置你的远程访问方式

配置服务端 选择网络 解锁之后点击ID/中继服务器

前三个都填你的Web访问域名 key为docker-compose.yml文件中配置的key 填写完毕后点击确认保存

如果要使用账户进行管理就点击账户进行登录,可以使用admin,也可以在Web端新建用户

其他的Web功能自行研究,功能太多了,不一一介绍了