2025-06-18 01:59:54 +09:00

49 lines
2.5 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: 自架伺服器
weight: 5
pre: "<b>2. </b>"
---
如果您使用 RustDesk您應該擁有自己的 RustDesk 伺服器,這些文檔將在您的 RustDesk 之旅中提供幫助。
支援服務可透過我們的 [Discord](https://discord.com/invite/nDceKgxnkV) 獲得開源版本的協助,以及透過[Email](mailto:support@rustdesk.com)獲得專業版支援。
## 自架伺服器如何運作?
從技術上講,有兩個可執行檔案(伺服器):
- `hbbs` - RustDesk ID會合 / 信號)伺服器,監聽 TCP`21114` - 僅用於 Pro 版的 HTTP、`21115``21116``21118` 用於 WebSocket和 UDP`21116`
- `hbbr` - RustDesk 中繼伺服器,監聽 TCP`21117``21119` 用於 WebSocket
當您透過安裝腳本 / docker compose / deb 安裝時,這兩個服務都會被安裝。
這裡有 RustDesk 客戶端如何與 `hbbr` / `hbbs` 通信的[圖解](https://github.com/rustdesk/rustdesk/wiki/How-does-RustDesk-work%3F)。
只要 RustDesk 在機器上運行,該機器就會不斷地 ping ID 伺服器(`hbbs`),以使其當前的 IP 位址和連接埠被知悉。
當您從電腦 A 啟動到電腦 B 的連接時,電腦 A 會聯繫 ID 伺服器並要求與電腦 B 通信。
ID 伺服器然後嘗試使用打洞技術將 A 和 B 直接連接。
如果打洞失敗A 將透過中繼伺服器(`hbbr`)與 B 通信。
在大多數情況下,打洞是成功的,並且永遠不會使用中繼伺服器。
這裡有一個關於[您是否應該自架 RustDesk 伺服器?](https://www.reddit.com/r/rustdesk/comments/1cr8kfv/should_you_selfhost_a_rustdesk_server/)的討論
## 所需的連結埠
自架 RustDesk 伺服器所需的連接埠在很大程度上取決於您的環境以及您想要使用 RustDesk 做什麼。整個文檔中顯示的範例通常會建議開啟所有連接埠。
核心連接埠:\
TCP `21114-21119` \
UDP `21116`
上述的 `21115-21117` 是 RustDesk 運作所需的最低要求連接埠,這些處理信號和中繼連接埠以及 NAT 穿透。
TCP 連接埠 `21118``21119` 是 [RustDesk Web 客戶端](https://rustdesk.com/web/)的 WebSocket 連接埠,您需要反向代理來支援 HTTPS請參考這個 [Nginx 配置範例](/docs/en/self-host/rustdesk-server-pro/faq/#8-add-websocket-secure-wss-support-for-the-id-server-and-relay-server-to-enable-secure-communication-for-the-web-client)。
對於沒有 SSL 代理的專業版用戶,您需要開啟 TCP 連接埠 `21114` 以使 API 運作,或者使用 SSL 代理開啟 TCP 連接埠 `443`
{{% children depth="4" showhidden="true" %}}