まとめ
-
RustDesk は、TeamViewer/AnyDesk に代わる無料のオープンソース、クロスプラットフォームのリモート デスクトップです。
-
Docker 経由で RustDesk をセルフホストすることで、より高速で安定した接続と完全なデータ プライバシーを実現できます。
-
Windows、Linux、macOS、Android にインストールされ、ファイル転送、画面録画、ターミナル アクセスなどの機能が備わっています。
RustDesk は、TeamViewer や AnyDesk などのアプリに代わる無料のオープンソースです。機能も豊富で使いやすいです。さらに、必要に応じて、より高速で安定した接続を実現するために、コンピューター上で自己ホストすることもできます。このリモート ビューアを自己ホストすることにより、データとアクティビティをプライベートに保つこともできます。
RustDesk の特別な点
RustDesk には TeamViewer のコア機能がすべて備わっており、同様に洗練されています。 Windows、Linux、macOS、Android で利用できます。
RustDesk の特別な点は、Docker を使用して自己ホストできることです。これにより、RustDesk クライアントのローカル インスタンスを起動できるようになり、ローカル ホスト上ですべてのアクティビティとデータをプライベートに保つことができます。ただし、たまにしか使用する必要がない場合は、パブリック RustDesk サーバーを使用してターゲット デバイスにリモート アクセスできます。
RustDeskをセットアップする
両方のデバイスに RustDesk クライアントをインストールする必要があります。このデモでは Linux PC と Windows ラップトップを使用していますが、プロセスはどのプラットフォームの組み合わせでも同じです。
まずは公式 GitHub リポジトリから RustDesk をダウンロードします。 .exe ファイルは RustDesk のポータブル バージョンで、.msi ファイルはそれを Windows デバイスにインストールします。 Linux システムでは、通常、公式パッケージ マネージャー リポジトリに RustDesk は見つかりません。 GitHub リポジトリからプリコンパイルされたパッケージをダウンロードし、手動でインストールする必要があります。
RustDeskでリモートアクセスを取得する
デバイスにインストールしたら、RustDesk クライアントを起動します。 2 つのセクションが表示されます。1 つのパネルにはホスト デバイスのワンタイム パスワードとログイン ID がリストされ、もう 1 つのパネルにはそのデバイスに接続するためのリモート ID を入力できるフィールドが表示されます。
Linux PC から Windows ラップトップにアクセスしたい場合は、Windows クライアントに表示される ID を入力し、[接続]をクリックします。 Windows マシンにリモート アクセスするためのパスワードの入力を求められます。パスワードは「デスクトップ」セクションにリストされています。
接続が確立されると、いくつかの機能も利用できるようになります。たとえば、ゲスト画面を録画したり、そのカメラを開いて表示したり、あるデバイスから別のデバイスにファイルを転送したり、デバイスを強制的に再起動したりできます。ホスト マシン上のフローティング ウィンドウでターゲット デバイスのターミナルを開く機能もあります。
セルフホスティング RustDesk とそうすべき理由
ハードウェア上で RustDesk インスタンスを自己ホストすることもできます。必要なのは Docker と、すべてをセットアップするのに数分だけです。セルフホスティング RustDesk は、より高速で安定した接続も提供します。
ドッカーとは
Docker は、アプリを実行するための仮想コンテナーを作成できる仮想化ツールです。これは、仮想マシン ソフトウェアを使用して、実際のオペレーティング システム内でオペレーティング システム全体を実行できるようにするのと似ています。 Docker は、コンテナとして実行される単一のアプリまたはサービスを除いて、同様のことを行います。必要なのは、コンテナーをスピンアップするための「レシピ」として機能する Docker イメージだけです。 Docker エンジンをインストールし、RustDesk レシピを使用してデバイス上でローカルにホストします。
Docker のインストールと実行
Docker デスクトップ アプリは公式 Web サイトからインストールできます。 Windows では、公式 Web サイトからインストールし、インストール ウィザードに従って Docker デスクトップをインストールできます。 Docker を動作させるには、仮想化を有効にする必要がある場合があります。インストールしたら、デスクトップのアイコンから起動してサービスを有効にします。 Linux ユーザーは、関連するディストリビューションの事前構成済みインストーラーをダウンロードできます。
簡単なテストを実行して、Docker が適切に実行されていることを確認してみましょう。ターミナル (Windows または Linux のどちらを使用している場合でも) を開き、次のコマンドを入力します。
docker run hello-world
Linux を使用している場合は、sudo を使用して実行する必要がある場合があります。
インストールが正しく動作している場合は、確認メッセージが表示されます。これで、RustDesk のインスタンスを起動する準備が整いました。
RustDeskコンテナの作成
Linux システムでは、ターミナルを開き、新しい RustDesk ディレクトリを作成し、 cd このコマンドを使用してそれに入力します。
mkdir ~/rustdesk-server && cd ~/rustdesk-server
次に、 docker-compose.yml このコマンドを実行してファイルを作成します。
nano docker-compose.yml
RustDesk コンテナを起動するには、Docker 構成ファイル (「レシピ」) が必要です。公式 RustDesk ドキュメントから入手するか、ここからコピーできます。
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
command: hbbs
volumes:
- ./data:/root
network_mode: "host"depends_on:
- hbbr
restart: unless-stoppedhbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- ./data:/root
network_mode: "host"
restart: unless-stopped
コピーした Docker 構成ファイルのコードを貼り付け、Ctrl+O と Enter を押して保存します。次に、Ctrl+X を押してテキスト エディタを終了します。
次に、このコマンドでコンテナを起動します。
sudo docker compose up -d
Windows でも同じ作成コマンドを実行できますが、 docker-compose.yml 最初にメモ帳を使用してファイルを作成します。同じディレクトリ内にファイルを作成したら、ターミナルに戻ってコンテナを起動します。
コンテナは起動して実行されている必要があります。
プライベートサーバーを使用するようにRustDeskクライアントを設定する
次に、パブリック RustDesk サーバーの代わりにこのプライベート ホストを使用するようにクライアントを構成します。このコマンドを実行してセキュリティ キーを取得します。これをクリップボードにコピーします (後で必要になります)。
cat ./data/id_ed25519.pub
ホスト マシン (Docker コンテナを実行しているマシン) の IP アドレスも必要です。次のコマンドは、その IP アドレスを出力します。それもコピーしてください。
hostname -I | awk '{print $1}'
次に、RustDesk クライアントに戻り、その設定を開きます。 「デスクトップ」の下にある 3 つの点をクリックします。 「ネットワーク」タブに切り替え、「ID/中継サーバー」をクリックします。同じ IP アドレスを[ID サーバー]フィールドと[リレー サーバー]フィールドに貼り付けます。先ほどコピーしたセキュリティが「キー」フィールドに入力されます。 「OK」をクリックします。
クライアント アプリには、サーバーの変更を示す緑色の「準備完了」メッセージが表示されるはずです。
RustDesk を使用すると、データとアクティビティを完全に制御できるため、デバイスにリモートで接続するときに、パブリック ネットワークを介して機密情報を共有する必要がありません。 TeamViewer では過去にデータ侵害があったため、そのリスクは非常に現実的です。自己ホストしない場合でも、無料でオープンソース設計である RustDesk がより良い代替手段となります。