【さくらのVPS】SiteGuard を使う

さくらの VPS では、SiteGuard Server Edition という WAF を無料で使えるようになっています。通常は数十万円のライセンス料金が掛かるような、素敵なものですので、使わない手はございません。

これを使うと以下のような攻撃を検知、ブロックしてくれます。

  • SQL インジェクション
  • クロスサイトスクリプティング(XSS)
  • OS コマンドインジェクション
  • ディレクトリトラバーサル
  • HTTP ヘッダインジェクション
  • ブルートフォース

今回は、CentOS8 へのインストールして、管理画面から基本設定して、攻撃をテストしてみるまでのメモです(簡単です!)。

目次出力

参照

詳しくは、以下のページを見てみてください↓

・SiteGuard Server Edition(WAF)|さくらの VPS ドキュメント

環境

  • さくらの VPS v5
  • CentOS 8
  • Apache 2.4

インストール〜管理画面アクセスまで

インストール

インストールファイルの取得先 URL は、さくらの VPS の「JP-Secure SiteGuard Server Edition ご利用ガイド」内にあります(閲覧にはパスワードが必要)

# JDK/JRE 8 (1.8) をインストール
# (管理画面は JAVA 上で動作するため)
sudo yum install -y java-1.8.0-openjdk

# インストールファイル取得
# (URL はさくらのVPSから見れる「ご利用ガイド」内にあります)
wget http://*****/*****.rpm

# インストール実行
rpm -Uvh *****.rpm

セットアップ

以下のコマンドを実行すると、SiteGuard のセットアップのためにいろいろ聞かれます。僕の場合は、何も入力することもなく、そのままエンターボタン連打で大丈夫でした。

※セットアップには、apache の再起動が必要です

# セットアップする
cd /opt/jp-secure/siteguardlite/
./setup.sh

# ↓が表示される。[]内の内容が正しければそのままエンター
# please enter Apache Config File. [/****/****/httpd.conf] -->
# please enter Apache Binary File (httpd). [/****/****/httpd] -->
# Is the Web server registered in systemd?
# please enter Apache service name. [****] -->
# do you want to use the web administrative console? (管理コンソールを利用する?)
# please enter JDK or JRE directory. [/****/****/jre-1.8.0] -->
# please enter the port number of the web console for https.
# please enter the addresses allowed to access the web console for https.(接続元を制限する?)
# do you change the ssl certificate files?(同梱されている証明書を使用する場合は、そのまま Enter)

管理画面の URL と ID / Pass 情報を確認

セットアップが完了すると、管理画面の URL と ログイン用の初期 ID、パスワードが表示されますので、確認します。

# ------------------------------------------------------
#   finished SiteGuard Server Edition setup
# ------------------------------------------------------
#   Please access following URL for starting service.
#   https://**********:****/
#   (default user:*****, default password:*****)

Firewall の設定

管理画面はポート番号が別になるため、Firewall でポート番号を開けます。

# 例:firewalldでTCP/9999のポートを開放する
firewall-cmd --add-port=9999/tcp --zone=public --permanent

# firewall を再起動
firewall-cmd --reload

管理画面へアクセス

上記で確認した URL へアクセスできます。

管理画面で最低限やること

ログイン。ID、パスワードの変更。

確認した初期 ID、パスワードでログイン後、新たに ID、パスワードを設定する。

ライセンス情報の入力

ライセンス情報入力画面

「管理」タブ、「ライセンス情報」メニューで、ライセンス情報を入力します。ライセンス情報は、さくらの VPS の「JP-Secure SiteGuard Server Edition ご利用ガイド」内にあります(閲覧にはパスワードが必要)。

「ウェブ攻撃検査」の有効化

「モジュール設定」タブより、ウェブ攻撃検査をオンにする。

「検出通知」「障害通知」の有効化

↑と同画面で、「検出通知」「障害通知」もオンにする。

通知先メールの設定

↑と同画面で、通知先のメールを設定する。

テストしてみる

攻撃検知や、メール通知など、ちゃんと設定できているか不安なので、以下のテスト用 URL でテストしてみます。

https://[あなたのサイトのドメイン]/WAF-TEST-SIGNATURE

画面にエラーメッセージが表示され、メールで通知がくれば、成功です。

エラー画面

また、サイト上の input 要素に、SQL を打ち込んで「SQL インジェクション攻撃」的なことをやってみると、同じくエラー画面が表示され、メール通知が来ました。簡単!

あとは、様子をみながら少しずつ、チューンナップしてけば良いかなと思っています。

ナカタケワークス

福岡の小さな会社専用のITフリーランスです。シンプルで、地球に優しい IT 環境を。