ひょんなことでRustDeskというソフトを知りました。
ざっくり言えば、TeamViewerのオープンソース版みたいなもの。外部のサーバに中継してもらうことで、双方別々のルータ(つまりNAPT)配下にある端末間であってもリモートデスクトップ操作ができるというソフトです。
でもリモートデスクトップというのは、操作される端末のほぼ全権を預けてしまう行為です。これを見知らぬ外部のサーバ経由で行うというのは、セキュリティ的にだいぶこわいことです。
それがこのRustDeskだと、中継サーバを自前で立てることもできるというわけ。立てなくてもデフォルトではどこか(rustdesk.com?)のサーバが中継してくれるけれど。
環境
いつものように、RustDeskの中継サーバも実家のミニPCのルートレスPodman環境に構築してみました。
ルートレスPodmanは仕様上、ネットワークまわりに制約があって手こずりそうだったので、
Jitsi Meetと同じくLXCコンテナでやった方がいいかなと最初は思ったんですが、案外ルートレスPodmanですんなりいけてしまいました。
ネット上で事例が見つからなかったので、構築手順とか設定ファイルとかをちゃんとここで公開しておいた方がいい気もしたんですが、致命的なセキュリティ上のミスとかがばれてしまう可能性もありそうなのでいったん割愛。
使ってみて
中継サーバは秘密鍵と公開鍵を持っていて、端末側(操作する側・される側双方)にはこの公開鍵も設定する必要があるので、ホスト名を知られるだけで誰もが使えてしまうみたいなことはないです。
(でもこの公開鍵、端末の設定画面上マスクされずにまる見えです。「公開」鍵なので、本来隠すものではないという主張かも。)
ミニPCのProxmox VE環境上のZorin OSをChromebookから操作してみたんですが、Zorin OS上のブラウザで動画再生するとちゃんと音まで聞こえました。動画も鑑賞に耐えるぐらいの品質です。
複数端末からの同時接続も可。
F-DroidではAndroid版も公開されているので、Androidタブレットから使ってみたんですが、マウスをつないでも右クリックが効かないのが惜しいところ。
HuaweiのあのHarmonyOS NEXT版はないんかな?と思って調べてみたら、
まだなさそうな雰囲気。
いろいろ何かに使えそうな気はするので、とりあえず環境の備えだけは。
コメント