ソフトウェア環境
- サーバーOS:Ubuntu 20.04 LTS
- RustDeskクライアント: Windows、Android
- 次のチュートリアルでは、デフォルトでサーバーによって提供される root ユーザーを使用します。権限が不十分な場合は、自分で参加してください。
sudo
背景を使用する
遠隔操作ソフトを長らく使ってきましたが、最初にTeamviwer、次にTodeskと次々とログインを強いられて使用するようになりました。後で知ったのですが、オープンソースのリモートコントロールソフトウェア「RustDesk」はクライアントがPCや携帯電話などマルチプラットフォームに対応しており、さまざまな利用条件に制限がないのがポイントです。もちろん、オープンソースソフトウェアは愛を利用して発電するため、上記のソフトウェアのように安定した接続を確保するために多数のサーバーを設置することはできません。rustdesk にも公開サーバーがありますが、ユーザーが多すぎるためか、サーバーは海外にあります使用効果は満足できるものではありませんが、自分で中継サーバーを構築できるのがRustDeskの最大の特徴です この記事ではUbuntu 20.04サーバーシステムを使用してRustDesk-Serverサービスを構築し、リモートでの自立を実現します機器の制御。サーバーのセットアップ後、実際のテストの安定性は良好です。このチュートリアルは急いで作成したため、記述にいくつかの間違いがあるかもしれません。間違いがある場合は、ご指摘ください。フォローアップは継続されます。改善するために。
本稿での実装方法の特徴:公式推奨のpm2プロセス管理ソフトは使用せず、nohupとsystemctlを組み合わせてバックグラウンド動作とブート自動起動を実現し、最も単純かつシンプルな方法でサーバを実現している構築には、解凍ソフトウェア unzip (一部のシステムには自己完結型もあります) をインストールするだけで済み、残りはサーバーによって自己完結型であるため、追加のソフトウェアのインストールを回避できます。
1. RustDesk-Serverのダウンロードとインストール
1.1 Rustdesk-Serverを入手する
サーバー側ソフトウェアのダウンロード リンク:リリース Rustdesk/rustdesk-server (github.com)
1. 希望のバージョンを選択します
2. wget コマンドを使用してサーバー ソフトウェアを入手します。
プログラム ファイルを保存するディレクトリを入力します。ここでは /home ディレクトリに置きます。
cd /home
ファイルを取得する
wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.7-4/rustdesk-server-linux-i386.zip
3. ファイルを解凍します。
サーバーに解凍ソフトウェアがない場合は、まず unzip をインストールしてください (一般的に使用されている解凍ソフトウェアも将来役立つ可能性があります)
apt install unzip
unzipを使用してファイルを解凍します
unzip rustdesk-server-linux-i386.zip
名前を変更する
mv i386/ rustdesk
実行効果
以上の手順でRustDeskのダウンロードは完了です。
2. RustDesk-Serverの起動
1. 起動スクリプトを作成する
Rustdesk ディレクトリに新しいスクリプト ファイルを作成して、バックグラウンドで Rustdesk を起動します。
vi rustdesk-run.sh
以下を追加します
#!/bin/sh
workdir=$(dirname "$0")
cd $workdir
nohup $workdir/hbbs -k _ >> $workdir/nohup.out 2>&1 &
nohup $workdir/hbbr -k _ >> $workdir/nohup.out 2>&1 &
exit 0
スクリプトファイルを変更した後は、実行可能権限を追加することを忘れないでください。
chmod +x /home/rustdesk/rustdesk-run.sh
上記の手順の実行結果(画像内のファイルの内容が変更されています。上記の内容が優先されます)
2. スクリプトが自動的に開始されるように設定します。
パス/etc/systemd/system/
に自己起動サービス ファイルを作成します
vi /etc/systemd/system/rustdesk-autostart.service
次の内容をファイルに追加し(スクリプト ファイルのパスの変更にも注意してください)、編集後に保存して終了します。
[Unit]
Description=rustdesk-autostart Server
After=network-online.target
[Service]
Type=simple
ExecStart=/home/rustdesk/rustdesk-run.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
実行効果
次に、起動時にサービスが自動的に開始されるようにします。
systemctl enable rustdesk-autostart.service
最後に以下のコマンドを実行してサービスを起動しますが、後でシステムを再起動すると自動起動が完了するため、手動でサービスを起動する必要はありません。
systemctl daemon-reload
systemctl start rustdesk-autostart.servicesystemctl
プログラムが起動したかどうかを確認し、プロセス内に hbbs および hbbr プロセスが表示されていれば、起動は成功しています。
ps -ef | grep hbb
3. ファイアウォールを設定する
プログラムはデフォルトでポート 21115 ~ 21119/tcp、8000/tcp、および 21116/udp を使用します。上記のポートはファイアウォールで解放する必要があります。
ufw allow 21115:21119/tcp
ufw allow 8000/tcp
ufw allow 21116/udp
ufw enable
補足: このチュートリアルでは、ソフトウェアの設定はデフォルト値を使用し、ポートは変更しませんが、クライアント接続を使用する場合は、サーバーの IP を直接使用して接続し、ポート番号を設定する必要はありません。
4. クライアント接続テスト
Windows を使用して Android クライアントとの接続をテストする
1. Windowsクライアントの設定
メニューで ID/リレー サーバーを選択し
、ポップアップ メニューに対応する情報を入力します。ID サーバーとリレー サーバーの両方に、サーバーのパブリック ネットワーク IP を入力します (ここでは私のものをコピーせず、パブリック ネットワーク IP を入力します)自身のサーバーのネットワーク IP )、4 列目のキーはサーバー ソフトウェアの格納ディレクトリにあり、プログラムが正常に起動すると、そのディレクトリにキー ファイルid_ed25519
とid_ed25519.pub
。キーの内容を表示しますid_ed25519.pub
(サフィックスに注意し、間違ったファイルを読み取らないようにしてください) 4 番目の列の内容をコピーし、キーを入力します (空白のままでもかまいませんが、入力しない場合は、暗号化されたキーが表示されます)。デフォルトでは送信は有効になっていません。通常は使用できますが、推奨されません)
cat id_ed25519.pub
2. Androidクライアントの設定
ソフトウェアを起動し、ID/中継サーバーを設定
Windows クライアントと同じ情報を入力するだけです
参考リンク:公式ドキュメント
出典を明記してください