Rust製リモートデスクトップソフト、RustDeskをセルフホストします 構築の難易度は低めだと思います
セルフホストの利点
やっぱり遅延が少ない
↓比較動画
建てる
ドキュメント読めって話なんだけど日本語化も含めて書きます
まぁ公式ドキュメントの日本語も自分が書いたんですが
主の環境はUbuntu 22.04 LTS x86_64です
最初にnpmをインストールします
sudo apt update
apt install npm
pm2をインストールします
npm install -g pm2
rustdesk-serverの最新版をダウンロードして解凍(以下の例は1.1.5です 特別な理由がなければ最新版をダウンロードしてください)
最新版はGithubから確認してください
wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.5/rustdesk-server-linux-x64.zip
unzip rustdesk-server-linux-x64.zip -d rustdesk-server
rm rustdesk-server-linux-x64.zip
cd rustdesk-server
動かす
サーバーのみを使う、リレーサーバーのみを使う用途じゃなければサーバーとリレーサーバーをどちらも動かしてください
hbbsがリレーサーバーでhbbrがサーバーです
pm2 start hbbs
pm2 start hbbr
リレーサーバーをサーバーのlocalhost以外で動かす場合は -r オプションを付けてアドレスを指定してください
pm2 start hbbs -- -r <relay-server-ip[:port]>
Docker
Dockerで建て直すのも面倒なので参考になりそうなリンクを貼っておきます
ポート開放
外でも使いたい場合はポート開放をする必要があります
hbbsがサーバーでhbbrがリレーサーバーです
サーバー | ポート | プロトコル | 用途 |
hbbs | 21115 | TCP | NATタイプ確認 |
hbbs | 21116 | TCP | TCPホールパンチング、コネクションサービス |
hbbs | 21116 | UDP | サービスID登録とハートビートサービス |
hbbs | 21118 | TCP | Webクライアント |
hbbr | 21117 | TCP | リレーサービス |
hbbr | 21119 | TCP | Webクライアント |
Webクライアントで使うことが無ければWebクライアント用のポートは開放しなくて良いです
21116はTCPとUDPをどちらも開放しなければならないことに注意してください
クライアント側
メニューからID/Relay Serverを選択後ID Serverにipアドレスを入力します
Relay ServerとAPI ServerとKeyは空白だと自動で設定してくれます
遠隔操作される側とする側は同じサーバーが指定されてないといけません
終わりに
遅延をもっとどうにか出来ないのかって思う
4Kモニターなど高解像度のモニターを使うと特に遅延がひどい(回線の問題かもしれないが)