インターネット経由でリモートデスクトップ接続を可能とするApache Guacamoleを自宅サーバーにインストールしてみました。
Apache Guacamoleはサーバーとクライアントの2つに分かれています。
- Apache Guacamoleサーバー:実際のリモート接続を担当する
- Apache Guacamoleクライアント:WebGUIを提供する(Apache Tomcatで動作します)
順にインストールしていきます。個人的メモなのでちょっと雑な記事となりますm(..)m
Apache Guacamoleサーバーのインストール
ドキュメントをみながらインストールしていきます。
公式サイトからサーバーのファイルをダウンロードします。
https://apache.org/dyn/closer.lua/guacamole/1.5.5/source/guacamole-client-1.5.5.tar.gz?action=download
コンソールで解凍し、インストールを実行します。
自分は/usr/local/guacamole-serverに配置しました。
# configureしてみる
./configure --with-init-dir=/etc/init.d
# 依存関係をインストールしていく
apt install libcairo2-dev
apt install libjpeg62-turbo-dev
apt install libtool-bin
apt install uuid-dev
apt install libossp-uuid-dev
apt install libvncclient1
apt update
apt install freerdp2-dev
apt install libpango1.0-dev
apt install libssh2-1-dev
apt install libtelnet-dev
apt install libvncserver-dev
apt install libwebsockets-dev
apt install libpulse-dev
apt install libssl-dev
apt install libvorbis-dev
apt install libwebp-dev
apt install libguac-dev
# 依存関係をインストールしたらconfigure
./configure --with-init-dir=/etc/init.d
# makeしてビルドする
make
make install
必要な依存ライブラリは以下のドキュメントを参照してください。
Apache Guacamoleサーバーの起動
systemctl start guacd
initファイルは自動的に生成され、systemctlコマンドで起動することができるようになっています。
Apache Guacamoleクライアントサーバーのインストール
こちらに従いJavaとTomcat9(※10は非対応です)をインストール。
![](https://www.rosehosting.com/blog/wp-content/uploads/2023/05/how-to-install-apache-tomcat-on-debian-11.jpg)
Apache Guacamole公式サイトからクライアントのファイルをダウンロードします。
Javaなので自前でコンパイルする必要はありません。warファイルをダウンロードしちゃいます。
https://apache.org/dyn/closer.lua/guacamole/1.5.5/binary/guacamole-1.5.5.war?action=download
Tomcatのwebappフォルダに配置しましょう。自動的にコンパイルが走ります。
MySQLを利用できるようにする
ドキュメントに従ってセットアップしましょう。
データベースと初期テーブルを作成します。やり方は上記ドキュメントを参照してください。
ダウンロードしたExtentionとJDBC driverを配置します。
- extensionは/etc/guacamole/extensionsに配置します
- jdbcドライバーは/etc/guacamole/libに配置します
ドキュメントには$GUACAMOLE_HOME/extensions
などと記載されています。
$GUACAMOLE_HOMEはデフォルトで/etc/guacamoleがセットされます。つまり、特段の変更をしない限り、配置先は/etc/guacamole以下となります。(Guacamoleのインストール先ディレクトリではないので注意です!)
Nginxでリバースプロキシを立てる
必要に応じてリバースプロキシもセットアップしましょう。Nginxの設定サンプルは以下の通り。
location /guacd/ {
proxy_pass http://localhost:8070/guacd/;//ここは環境に合わせて変更を。
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
access_log off;
}
動作を快適にするため、上記の設定項目は入れたほうがいいです。bufferingは必ず切りましょう。遅延の原因となります。
起動する
以上でセットアップは完了です。
systemctl restart guacd
systemctl restart tomcat
初期ID・パスワードはguacadminです。
実際に使ってみてですが、とっても便利です。モバイル回線でも遅延が少なく快適に使えています。
コメント