-
Notifications
You must be signed in to change notification settings - Fork 271
HTTPS Reverse Proxy
乐 edited this page Feb 16, 2025
·
7 revisions
下面的配置都是以docker
方式为例,镜像为官方s6镜像rustdesk/rustdesk-server-s6:latest
-
docker-compose
- 上面的
<server>
是你的域名或者ip,根据实际情况修改 - 如果nginx不是用docker方式,根据情况修改映射的端口并修改反向代理配置
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: rustdesk/rustdesk-server-s6:latest environment: - RELAY=<server> - ENCRYPTED_ONLY=1 volumes: - /data/rustdesk/server:/data networks: - rustdesk-net 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=<server> - RUSTDESK_API_RUSTDESK_RELAY_SERVER=<server> - RUSTDESK_API_RUSTDESK_API_SERVER=https://<server> #- RUSTDESK_API_RUSTDESK_KEY=<key> volumes: - /data/rustdesk/api:/app/data #将数据库挂载 - /data/rustdesk/server:/app/conf/data #挂载key文件到api容器,可以不用使用 RUSTDESK_API_RUSTDESK_KEY networks: - rustdesk-net restart: unless-stopped depends_on: - rustdesk-server nginx: container_name: rustdesk-nginx image: nginx:latest ports: - 80:80 - 443:443 - 4443:4443 # 你自己的https端口 volumes: - /data/rustdesk/nginx/conf.d:/etc/nginx/conf.d - /data/rustdesk/nginx/ssl:/etc/nginx/ssl networks: - rustdesk-net restart: unless-stopped depends_on: - rustdesk-api - rustdesk-server
- 上面的
-
nginx反向代理配置
- 这里的
<server>
是你的域名或者ip,根据实际情况修改,rustdesk-api
和rustdesk-server
是docker-compose
中的服务名,如果非docker方式,根据情况修改
server { server_name <server>; listen 443 ssl; #listen 4443 ssl; #你自己的端口 ssl_certificate /etc/nginx/ssl/<server>/fullchain.pem; ssl_certificate_key /etc/nginx/ssl/<server>/privkey.pem; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://rustdesk-api:21114/; } location /ws/id { proxy_pass http://rustdesk-server: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://rustdesk-server: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; } } server { if ($host = <server>) { return 301 https://$host$request_uri; } server_name <server>; listen 80; return 404; }
- 这里的
HTTPS 非`443`端口 反向代理(v2.6.9前)
如果443
端口不能使用,可以使用其他端口,这里以4443
为例
-
docker-compose配置
- 上面的
<server>
是你的域名或者ip,根据实际情况修改 - 如果nginx不是用docker方式,根据情况修改映射的端口并修改反向代理配置
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: rustdesk/rustdesk-server-s6:latest environment: - RELAY=<server> - ENCRYPTED_ONLY=1 volumes: - /data/rustdesk/server:/data networks: - rustdesk-net 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=<server>:21116 - RUSTDESK_API_RUSTDESK_RELAY_SERVER=<server>:21117 - RUSTDESK_API_RUSTDESK_API_SERVER=https://<server>:4443 #- RUSTDESK_API_RUSTDESK_KEY=<key> volumes: - /data/rustdesk/api:/app/data #将数据库挂载 - /data/rustdesk/server:/app/conf/data #挂载key文件到api容器,可以不用使用 RUSTDESK_API_RUSTDESK_KEY networks: - rustdesk-net restart: unless-stopped depends_on: - rustdesk-server nginx: container_name: rustdesk-nginx image: nginx:latest ports: - 80:80 - 4443:4443 - 21118:21118 - 21119:21119 volumes: - /data/rustdesk/nginx/conf.d:/etc/nginx/conf.d networks: - rustdesk-net restart: unless-stopped depends_on: - rustdesk-api - rustdesk-server
- 上面的
-
nginx反向代理配置
- 这里的
<server>
是你的域名或者ip,根据实际情况修改,rustdesk-api
和rustdesk-server
是docker-compose
中的服务名,如果非docker方式,根据情况修改
server { server_name <server>; listen 4443 ssl; ssl_certificate /etc/nginx/ssl/<server>/fullchain.pem; ssl_certificate_key /etc/nginx/ssl/<server>/privkey.pem; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://rustdesk-api:21114/; } } server { listen 21118 ssl; server_name <server>; ssl_certificate /etc/nginx/ssl/<server>/fullchain.pem; ssl_certificate_key /etc/nginx/ssl/<server>/privkey.pem; location / { proxy_pass http://rustdesk-server: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; } } server { listen 21119 ssl; server_name <server>; ssl_certificate /etc/nginx/ssl/<server>/fullchain.pem; ssl_certificate_key /etc/nginx/ssl/<server>/privkey.pem; location / { proxy_pass http://rustdesk-server: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; } }
- 这里的
-
被控PC客户端和WEB客户端的配置中,填端口