Chromeのリモートデスクトップについて考える。
一凡人 求職中の素人視点なので、真に受けずに疑って読んでくれ。
突然だが、自宅など遠隔地にあるPC等を操作するというのは、用途は色々で、需要がそれなりにあると思う。最近、事情があり、遠隔操作PCをセットアップすることとなった。遠隔地に置くのは当然?Linuxマシン、そして操作側は使う側の都合だが俺の場合はLinuxだ。別に他でも良いのだが、特に遠隔地側のマシンというのは用途が特別だったり限られていたり一般的ではないので、普通の有料OSを導入するのは費用がもったいない。
Linuxは良いとしても、遠隔操作のソフトウエアというのは選択肢が多い。普通にUbuntuを導入しても標準で「画面共有」が入っている。他にも無料で使用できる製品が多くある。
だが、今回は遠隔側で追加の特定TCPポートを開けっ放しを避ける(CDPはポートフォワーディングやUPnP設定が必要ない)ため、また操作・遠隔、両側の設定も「一見」容易そうに見えるということで、「Chrome Remote Desktop」を採用することにした。以前、Windowsマシンを遠隔(ホスト側、乃至、サーバ側)側として導入したことがあり、その時の簡易さが印象に残っていたのもあった。今回は同じようなことをLinuxが遠隔側でやってみようと判断した。何となくの印象だが、こういうことはサーバー側(遠隔側)はLinuxの方が上手くいくことが多いはずだ。
という事で、気楽に作業を始めたのだが、完全に嵌ってしまった。その顛末を記す。少しでも他の同様の作業者のためになれば幸いである。
まず、ネットを調べてみると結構な人達が「ヘッドレス(つまり、モニター上でウインドウシステム等を使用した、”その場”での高機能な出力設定を使用しない構成)」で導入を試みている。サーバーというのはその場で使用というより、ネットを経由して他の場所の使用者の用を足すという性質から通常ヘッドレスが多いから自然だが、今回は遠隔側にすでに普通のUbuntuが入っているのでヘッドレスは必要ない。という事でそれらの記述は飛ばし、まずChrome Remote Desktopを使用するわけだからまず遠隔側、操作側、双方に同じユーザのGoogleアカウントを使用するGoogle Chromeを導入する。
そして、双方にChromeの「Google Chrome Desktop 機能拡張」を入れる。両方入れる必要は無いのかもしれないが、このあたりから、ネットにある導入手順がどれもどちら側の説明なのか、どのバージョンのなんのOSのための説明か分かりづらくて、ハッキリしないまま同じ設定を双方に行った。機能拡張は操作側だけも可能なのかもしれない。
ここからもっと混乱し始める。
まず第一の混乱の理由は、サーバー側には当然この後何か(「Chrome Desktop Server」的ななんか)をインストールする必要があるが、この方法でどうも2種類の記述があるのだ。1つはコマンドラインから、もう1つはChrome上からできるようだ。そしてこの段階ではどちらが必要なのか、どちらも必要なのか、どちらかを最初にやる必要があるか、などがわからないのだ。
また第二の理由として、ChromeのRemote Access拡張上でどうも設定できるらしいのだが(文言によるとできそう)、あまりそれがハッキリしないのだ。
そして第三の理由として、Ubuntu+Chrome Remote Desktop サーバーはどうも相性が悪い?らしく、人によっては自力でパッチなどを作って対処している。だがそれらも結局失敗しているものもあり、どれを採用すべきかもわからない。
という事で、何回かに分けて詳細を記してゆく。