Guacamoleは、リモートデスクトップ接続の環境をWebブラウザーで利用可能にするサーバー用ソフト。「HTML5」対応のWebブラウザーがあれば、パソコンやタブレットなど機種を問わずにアクセスできる。
リモートデスクトップ接続を使うには、サーバーとなるPCに「サーバーソフト」をインストールし、端末側に専用の「クライアントソフト」をインストールする必要がある。例えばUbuntu 12.04の場合、サーバーソフトとして「vino-server」、クライアントソフトとして「Remmina」が標準インストールされている。
Guacamoleを使うと、クライアントソフトとして「HTML5に対応したWebブラウザー」を利用できる(写真1)。Guacamoleそのものは、Webサーバー上で動作するJavaアプリケーション(Javaサーブレット)。クライアントソフトとして振る舞いつつ、デスクトップ環境の描画、マウスやキーボードの操作などをHTML化して中継する。
構築に当たっては少なくとも3台のPCが必要だ(図1)。すべてを仮想マシンで用意してもよいが、編集部でテストしたところレスポンスの低下が著しかった。リモートデスクトップ接続する端末だけは、実機で用意した方がよい。手元にタブレットやスマートフォンがあれば、それを使う手もある。
VNCサーバーソフトについては、動作報告の多い「vnc4server」を使う。Ubuntu 12.04ではvino-serverが標準でインストール済みだが、編集部でテストしたところ正常に動作しなかった。