【特別企画】クラウド、試してみました!〜BIGLOBEクラウドホスティングを実運用に向けていじってみた〜

前回は、BIGLOBE クラウドホスティングにおいて、どのように仮想マシンを立ち上げるのかなどをステップ・バイ・ステップで紹介した。今回は、システムの管理、WAF(Web Application Firewall)やロードバランシングの設定を紹介していく。

BIGLOBE クラウドホスティング自体のサービスに関しては、連載「クラウド特捜部」を参考にしてほしい。

WAFは有料版以外に試用版を提供

BIGLOBE クラウドホスティングでは、SQLインジェクションやバッファーオーバーフロー攻撃、クロスサイトスクリプティングなどのWebアプリケーションの脆弱性を利用した攻撃を検知するWebアプリケーションファイヤーウォール(WAF)が用意されている(ただし、Linux環境向け)。

ファイアウォール、IDS/IPSの後段にWAFを配置することで、セキュリティ性の高いシステムの運用が行えるようになる。

BIGLOBE クラウドホスティングでは、月額33,000円(税別)でWAFのサービスが利用できる(提供されているWAFは、NEC製のInfoCage SiteShell)。多くのユーザーにとっては、WAFがどういった動作をするかはそれほど知られていないし、自分が運用しているサイトにどのような攻撃が行われているかを、確認することもできない。

そこで、有料版を利用する前に、こうしたことをチェックできるよう、試用版のWAFが用意されている。WAFの評価を事前に行うことができるため、最初から無駄なコストをかけず、必要に応じてWAFを使用すればいいのだ。

なお、WAF試用版では、攻撃を検知してログを記録するが、ブロックはできない。もし、この試用版が、あまりにも多くの攻撃を検知するようなら、すぐにWAFの有料版を利用したほうがいいだろう。

BIGLOBE クラウドホスティングでは、WAF試用版に購入したライセンスIDを入力すれば、試用版が有料版へアップグレードされ、すぐにでも攻撃をブロックできるようになる。あらためてWAFを導入する必要がないので、ユーザーの負担は少ない。

WAFを導入することで、Webアプリケーションに対する攻撃を防ぐことができる

WAFの仕組み。WAFはWebサーバーとWebアプリケーションの間に入って、攻撃を防御する。脆弱性対策パッケージを更新することで、新しい攻撃にも対処できる

WAFをインストールする

WAFをインストールするには、自動と手動の2つの方法がある。1つは、サーバー作成時にWAF試用版をApacheなどと一緒に自動でインストールしてしまう方法だ。これが、一番手間がかからなくていい。

もう1つは、WAFなしで作成したサーバーに、管理者があとからWAFを手動でインストールする方法だ。BIGLOBE クラウドホスティングでは、NEC製のWAF InfoCage SiteShellのインストールパッケージがダウンロードできるようになっているため、手順に従って、仮想サーバーにインストールするだけでOKだ。

サーバー作成時にWAF試用版をインストールしておけば、後で面倒なインストールを行わなくてもOK。WAF試用版は、攻撃のログだけを記録し防御はしない。使用期限はないので、サーバー作成時にインストールしておいても、コストはかからない

管理メニューのネットワーク・セキュリティにあるWAFを選択して、WAFのインストール・パッケージをダウンロードしておく。さらに、WAFマニュアルも同時にダウンロードしておく

WAF試用版を設定する

まずここでは、WAF試用版がすでにインストールされている場合の手順を紹介する。

サーバー作成時にWAF試用版がインストールされている場合は、運用管理コンソールにアクセスして各種設定を行う。この運用管理コンソールは、複数の仮想サーバーにインストールされたWAFを一括して管理することもできる。

http://WebサーバーIPアドレス:31106/consoleというアドレスで、運用管理コンソールにアクセスする。ユーザー名は「admin」、パスワードは「123456」とデフォルトで決まっている。

デフォルトパスワードのままではセキュリティ上問題になるので、ログインしたら、まずはパスワード変更を行っておこう

運用管理コンソールの「メンテナンス」→「ノード管理」を選択する

ノードを追加する

ノード追加時には、ノードグループ(GRP1)、SiteShell Type(Apache)、管理サーバーアドレス(使用するWebサーバーのIPアドレス)、管理サーバーポート(9434)を設定する

これで、WAF試用版が設定された。ただし、試用版では、攻撃のログを記録しておくだけで、ブロックは行わない

運用管理コンソールで「ログサマリ」を表示すると、攻撃状態のログが一目でわかる。作成したばかりのサーバーだからか、攻撃は全く受けていない

より詳細のログを見たい場合は、「監査ログ一覧」にアクセスして、見たい項目や期間を設定する

管理運用コンソールの「統計情報」にアクセスすれば、攻撃の状況がグラフで表示される。今回は、作成したばかりなので、まだデータがない

月間レポートも表示することが可能

有料版のライセンスを登録するには

WAFのライセンスを購入するには、BIGLOBE クラウドホスティングのネットワーク・セキュリティのWAFを選択して、ライセンス購入を行う。ここでは、必要となるライセンス数を購入すればいい。この画面で、ライセンスIDが発行されるので、このライセンスIDをサーバーに登録する

前述のように、実際にWAFで攻撃をブロックするには、有料版を購入し、ライセンスIDをサーバーに登録する必要がある。ライセンスIDの登録は、前回紹介したターミナルエミュレータでサーバーにアクセスして登録する。

(1)WAFがインストールされているディレクトリに移動する
# cd /opt/SiteShell_Apache/config

(2)「licenseID.properties」ファイルにライセンスIDを登録する。
licenseID.propertiesというテキストファイルにライセンスIDを登録。今回は、テキストエディタのVIを使用して、ライセンスIDを入力。
# vi licenseID.properties
licenseID=xxxx-xxxx-xxxx-xxxx

これで、WAFのすべての機能が利用できる。

また、常にWAFを高いセキュリティで利用するには、自動更新のアクティベーションを行う必要がある。これは、常に進化する攻撃にWAFが対応していくために必要な機能だ。

自動更新アクティベーションは、WAFのライセンスIDを購入後、管理者の電子メールにWAFライセンス購入の通知が送られてくる。そのメールに自動更新サーバーのアドレス、ポート番号が記載されている。この情報をWAFに設定すればOK。

WAFのライセンスID登録と同じようにターミナルエミュレータを使ってサーバーにアクセスする。

(1)WAFがインストールされているディレクトリに移動
# cd /opt/SiteShell_Apache

(2)「OnlineUpdateServiceInstall.sh」を実行。
# ./OnlineUpdateServiceInstall.sh

(3)JREの情報が表示されるので、「n」と入力。BIGLOBE クラウドホスティングのWAFは、専用のJRE(Java)を使用するため、JREのパスが異なっているため。

(4)ライセンスID情報が表示されるので、「n」と入力

(5)自動更新サーバーアドレスが尋ねられるので、メールに記述された自動更新サーバーのIPアドレスを入力。

(6)さらに、自動更新サーバーのポート番号を入力。このポート番号もメールに記述されている。

(7)プロキシーサーバーを使用していない場合は、「Enter」のみでOK。これで、WAFの自動更新サーバーの設定も済んだ。

WAFの試用版を手動でインストールする場合

もし、サーバー作成時にWAF試用版を自動インストールしなかった場合は、ターミナルエミュレータでサーバーにWAF試用版を手動でインストールする必要がある。手順はマニュアルが用意されているので簡単だ。また、インストール後は運用管理コンソールが利用できる。

(1)ネットワーク・セキュリティのWAFメニューでWAFモジュールをダウンロードしておく。

(2)ダウンロードしたWAFをサーバーにアップロードする。

(3)アップロードしたファイルを実行する。
# rpm -ivh SiteShell_Source.rpm

(4)SiteShellのディレクトリに移動する。
# cd /opt/SiteShell_Source

(5)インストールスクリプトを実行する。
# ./SiteShellInstall.sh

(6)サーバー作成時にWAF試用版を自動インストールしなかった場合は、WAFの運用管理コンソールを使えるようにするため、ポート開放を行う。管理運用コンソールのWebサービス用ポートは、31106/tcpを利用する。

(7)/etc/sysconfig/iptablesをvi等で編集し、以下の行を、「REJECT」と記載してある行の上に追加し、保存する。
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 31106 -j ACCEPT

なお、ここでは省略したが、実際の環境では接続元を制限する設定(-s)を加えるのが望ましい。

(8)iptableを再起動する。
# /etc/init.d/iptables restart

(9)設定が正しく行われていることを確認する。
# iptables -L | grep 31106
ACCEPT tcp -anywhere anywhere state NEW tcp dpt:31106

ロードバランサを設定する

ロードバランサを利用すれば、複数のサーバーに対して負荷分散を行うことができる。これを利用すれば、Webサーバーへのアクセスが多数起こるサイトの運営も遅滞なく行える。ロードバランサは、月額12,000円(税別)で使用できる。なお、帯域制限はなく、一律この料金で運用できる。特にトラフィック量の多いサイト運用の場合はお得かもしれない。

ロードバランサを使用するには、BIGLOBE クラウドホスティングのネットワーク・セキュリティでロードバランサを選択する。ロードバランサ作成画面が表示されるので、各種設定項目を入力する。

ロードバランサで設定する項目。バーチャルIPは、作成後変更ができない。また、IPv4とIPv6を共存させることはできない。ポートも設定後の変更はできないので、注意が必要だ。

ロードバランサの設定確認画面

ロードバランサが作成されれば、ロードバランサ一覧に表示される

ロードバランサ一覧から、ロードバランサ名をクリックすると詳細が表示される。ここで、設定の変更や削除などが行える。ただし、作成時にしか設定できない項目もあるため、注意が必要

監視・リソースの設定

BIGLOBE クラウドホスティングでは、仮想サーバーのリソース監視、ポートやPing監視などを設定することができる。これらの監視をうまく利用することで、CPUやディスク容量といったリソースが圧迫されていないかを、チェックすることができる。

管理メニューで、監視・リソースを選択する。まずは、アラートメールをどのメールアドレスに送信するかを設定する。最大3つまで設定可能

管理メニューで、監視・リソースを選択する。監視できる項目は、Ping監視、URL監視、ポート監視、CPU使用率監視、ディスク容量監視など5項目が用意されている

今回は、Ping監視を設定。監視名と対象サーバーを設定する

確認画面

監視一覧に設定した監視項目が表示される。緑が監視中、グレーが監視を停止しているというサイン。ここでは、3つの項目の監視が行われており、1つは監視を停止している。監視の起動は、操作の再開、停止ボタンで行う

監視結果をリストで表示することも可能

リソースモニターを使えば、サーバーの各種リソース状況をグラフにして表示できる。サーバーと期間を指定してグラフ化する。ダウンロードでは、CSVファイルとしてデータを出力する

表示ボタンを押せば、ブラウザ上でグラフ化してくれる

このようなメールがアラートとして、送信されてくる

ここまで見てきたように、BIGLOBEクラウドホスティングは、企業ユーザーが利用するには最適なクラウド環境だろう。設定や導入は難しくないし、WAF やロードバランサなどのオプションも提供されている。さらに、BIGLOBEが別途提供しているPaaS型のWeb ホスティングとも連携できるため、柔軟なサーバー構成を、高いセキュリティ性をもって構築できる。

また、VPN サービスなどを利用すれば、クラウドのサーバーを自社のサーバーとして取り込み利用することも可能だ。BIGLOBE クラウドホスティングのプライベートLANは他社と共有ではなく、ユーザー専用で利用できるため、VPNでプライベートLANにアクセスする際も安心だ。クラウドは、インターネット上に置かれているため、セキュリティ的に問題と感じるユーザーもVPN とプライベートIPアドレスの仕組みを利用すれば、安全にクラウドを利用することができる。また、自社のオンプレミスから段階的にパブリッククラウドにシステムを移行することもできるだろう。

何よりもクラウドのメリットは、必要なときに、必要なサービス、リソースを利用できること。こうした特徴をうまく使えば、コスト的にも大きなメリットがある。加えて、BIGLOBE クラウドホスティングでは、従量制だけでなく、ヘビーユースの場合にコスト効率が高くなる月額利用料金も用意しているため、あらゆるケースで採用しやすいだろう。

今後の企業システムは、BIGLOBE クラウドホスティングのようなセキュリティ性の高いパブリッククラウドサービスと、自社のオンプレミス、あるいはプライベートクラウドを利用した、ハイブリッドクラウド環境へと切り替わっていくだろうとの見方がIT業界では一般的になってきているが、そのきっかけとして、まずはBIGLOBE クラウドホスティングを試してみてはいかがだろうか。

(Reported by (山本 雅史))

なお、最長3ヶ月間、BIGLOBEクラウドホスティングのサーバーを無料で試せる「イージー3」プランの利用が可能だ。一定期間クラウドを試してみて気に入れば、そのまま通常利用(有料)ができる。「イージー3」プランの詳細や申込方法はWebで確認できる。

BIGLOBEクラウドホスティング 「イージー3」プラン
http://business.biglobe.ne.jp/hosting/cloud/flow.html

 

[PR]企画・製作 株式会社 Impress Watch 営業統括部
問い合わせ先:watch-adtieup-biglobe1107@ad.impress.co.jp
Copyright (c) 2011 Impress Watch Corporation, an Impress Group company. All rights reserved.