自建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 |
1 2 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/rustdesk cd /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配置参考
1 2 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功能自行研究,功能太多了,不一一介绍了