CentOS7にGuacamoleをインストールする方法

CentOS7にGuacamoleサーバをインストールする手順を紹介します。

こちらも前回の記事同様、基本的にコピペレベルで実現できるはずです。

スポンサーリンク
レクタングル大

Guacamoleとは?

「VNC/SSH/RDPのJumpサーバーの役割」みたいなものです。

例えば自宅にラボ環境があって、外部からアクセスしたユースケースを考えてみます。この場合、外部から内部のサーバーのポートを全て開放するのはセキュリティ的にもリスクですし、毎回サーバーが増えるごとに開放するのも手間です。

さらに、ISPから与えられてるグローバルIPは通常は限られてるので、ポートマッピングが必要になります。

Guacamoleサーバーがあれば、外部に開放するサーバはGuacamoleサーバーだけで良い。

さらに、Guacamoleサーバーとクライアント(外部)の間はHTTPS通信にできるので、通信内容も暗号化されて安心。

自宅ラボユーザにとって、大変メリットが有るサーバーなのです。

ただ、このGuacamoleサーバー、事前準備が面倒くさい。ネットで色々情報を探したのですが、Dockerを使う方法やDBサーバを別途準備する方法など、多岐にわたります。

その中で「個人的に一番簡単な方法」を紹介します。

前提

前回の「CentOS7にVNCを導入してリモートで操作する方法」と同様に、以下を前提とします。逆に言うと、以下さえ満たしていれば簡単にGuacamoleサーバーを構築できるはず。

  • 使用するCentOS7は「CentOS-7-x86_64-Minimal-1804.iso」
  • IPアドレス・Gateway・DNSの設定は済
  • つまり、CentOS7からインターネットへのアクセスができることとする

前回と同様に、あくまでもセキュリティを意識しないで良い環境を前提に考えているので、セキュリティの設定は一切していません。なので、その辺はしっかり念頭にいれて必要に応じてハードニングしてください。責任は負えません。

CentOS7の初期準備

まずは操作しやすいようにSSHでrootログインができるようにします。つまり、この作業はコンソール上から行うことになります。

sshd_configを修正します。

以下の箇所のコメントアウトを外します。

こんな感じです。

面倒なので、再起動して反映させます。

これで「root@IPアドレス」でログインできるようになります。

以降は全てSSHでの作業を想定しています。

スクリプトでGuacamoleのインストール・設定

本来であればGuacamoleの公式サイトに従って色々必要なパッケージのインストールをするところですが、世の中には親切な方がいるみたいで、細かい作業を簡略化するスクリプトが用意されています。

まずはgitのインストール。以下のコピペで大丈夫です。

次にスクリプトのダウンロード。以下のコピペで大丈夫です。

(gitのインストールが”Complete!”で成功していることを確認しておいてください)

実行権限を与えてスクリプトを実行します。

ここから先はスクリプトで入力が要求された箇所を紹介します。

DBのパスワードやDB名など。この当たりは任意で大丈夫です。Java KeyStoreのパスワード要件に合わせて他のパスワードも同じ文字列にしています。(任意で変えても大丈夫です)

証明書関係の設定です。ラボ目的であればそれ程意識する必要はありません。

以上で終了です。

これで本来であれば「http://GuacamoleIP:8080/guacamole/」にアクセスするとログイン画面が出るはずなのですが・・・

guacamole1

真っ白です!

前回のVNCの時は真っ黒だったのですが、今回は逆の真っ白です!

CentOS7にVNCを導入してリモートで操作する方法
たまには技術系ネタを・・・ CentOS7にVNCサーバ(画面を「見せる側」)の設定を行って、リモートからCentOSを操作できるよう...

またか・・・とうなだれながら、トラシュー開始・・・

ネットで見ると「URIの最後に/が必要とか」「warが足りない」とか色々書いていて、色々試してもうまくいかず・・・

取っ組み合いながら、OSレベルのログをパラパラ見ていると・・・

audit.logでめちゃめちゃ怪しいログを発見しました・・・

・・・selinuxですね。

本当にselinuxには苦労させられます。

まずは、念の為Guacamoleを停止します。

selinuxの設定ファイルを修正します。

以下のパラメーターがあるので

“enforcing”から”disabled”に変えます。CentOSに慣れてる方だとおなじみですね。

面倒くさいので再起動します。

これで再度「http://GuacamoleIP:8080/guacamole/」にアクセスすると・・・

guacamole2

無事Guacamoleのログイン画面が表示されました!

良かったです!

さて、ログインは以下のクレデンシャルで行います。ログイン後にパスワードを変更することをオススメします。

  • ユーザ名:guacadmin
  • パスワード:guacadmin

後はアクセスする先の設定です。この辺からはネットに情報が転がってるので詳細は省略します。

ただ、前回の記事から読んでくださってる方は、VNCの設定としては最低限以下を設定したらできるはず。

名前は何でも大丈夫。Protocolは”VNC”。

guacamole4

あとはHostname、ポート番号、パスワードを設定するだけ。他は必須ではありません。

guacamole5

これでGuacamole経由でVNCを使用してサーバーにアクセスできました。

guacamole6

ちなみに、一度ログインしてしまうと、一つのコネクション画面にリダイレクトされて、追加の設定ができませんでした。そんな時は直接URLを叩いて設定画面に戻るしかなさそうです。

(http://GuacamoleIP:8080/guacamole/#/manage/mysql/connections/)

逆にこれ以外の方法をご存知な方、教えていただけると嬉しい。

これで外からのラボ操作も快適になりました。

勉強を再会する方へ
スポンサーリンク
レクタングル大
  • このエントリーをはてなブックマークに追加

コメントをどうぞ

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">