ServersMan@VPS:Muninの監視項目を増やす【unbound編】

Muninは、デフォルトの監視項目以外に「プラグイン」で監視したい項目を増やすことができます。代表的なモジュール「unbound」を監視項目に追加してみます。(2015/05/24作成)

1.ダウンロード&展開

unbound の「munin plugin」は、unbound のソースパッケージの中に含まれています。unbound のソースをダウンロードして、プラグラインを取り出します。

http://unbound.net/download.html

2.unbound.conf ファイルを修正

3.unbound-control で通信用に利用する鍵の作成

4.unbound plugin 設定の追加

5.munin-node へ unbound plugin を登録

6.動作確認

7.設定反映

以上

CentOS 6.5:nginx,php-fpm環境が「重い」と感じる場合の対応

Webサーバーの高速化を狙い「Apache」から「Nginx」に切り替えてみたもの、予想していた「パフォーマンス」がでない…と感じている場合、「php-fpm」のプロセスがサーバーのメモリを食い潰している可能性があります。特に「VPS」など、使用可能メモリが少なく上限がある環境では、「php-fpm」のチューニングを行うことで、メモリまわりの改善が期待できます。(2015/05/09作成)

0.環境

1.確認

プロセス毎のメモリ使用量(単位:kb)

2.チューニング

プロセスマネージャが子プロセスの数を制御する方法を選択します。 使用可能な値: static, ondemand, dynamic このオプションは必須です。

pm が static の場合は作成される子プロセスの数、 pm が dynamic の場合は作成される子プロセスの最大数。 このオプションは必須です。

アイドル状態のサーバープロセス数の最大値。 pm が dynamic の場合にのみ使います。 また、この場合には必須となります。

各子プロセスが、再起動するまでに実行するリクエスト数。 サードパーティのライブラリにおけるメモリリークの回避策として便利です。 再起動せずにずっとリクエストを処理させる場合は ‘0’ を指定します。 PHP_FCGI_MAX_REQUESTS と同じです。デフォルト値: 0

3.設定反映

以上

OpenSSL:SSL/TLSの脆弱性対策

昨今「OpenSSL」脆弱性に関する事象が、多くのニュースメディアで取り上げられるようになりました。代表的な事象では、昨年2014年のOpenSSLの脆弱性「HeartBleed」、2015年に入っては、SSL/TLS通信時の脆弱性「FREAK」などです。使用するサーバーのSSL/TLS「脆弱性」有無は、各種チェックツールで診断可能です。(2015/04/19作成)

1.各種チェックツール

SSL Server Test
https://www.ssllabs.com/ssltest/index.html

Symantec SSL Toolbox
https://ssltools.websecurity.symantec.com/checker/views/certCheck.jsp

Wormly Free SSL Web Server Tester
https://www.wormly.com/test_ssl/

2.脆弱性診断時の設定事例

各種チェックツールで「脆弱性診断」された場合、ディストリビューションの「OpenSSL」パッケージを最新版アップデートを行うことは元より、脆弱性の原因となっている箇所の「OpenSSL」コンフィグレーションを見直す必要があります。以下設定は、Apache(mod_ssl)を例にしています。

以上

ServersMan@VPS:WAF(Web Application Firewall)の導入【ModSecurity編】

インターネット上に公開されたサイトである以上、外部から脆弱性を狙う攻撃の脅威は避けられません。WAF(Web Application Firewall) を導入することで、プログラムを修正することなく透過的に脅威からサーバーを守ることが期待できます。今回は、Apacheモジュールとして動作する「ModSecurity」をServersMan@VPSにインストールします。ModSecurity はオープンソースで開発されている WAFであり、無償で利用することができます。(2015/04/11作成)

WAF(Web Application Firewall)とは…

Webサーバー上にアプリケーションを作り込んでデータを更新したり最新の状況を表示したりするタイプのサイトを,不正な攻撃から守るための装置やソフトウエアのこと。 こうしたサイトにはオンライン・バンキング・やショッピング・サイトなどがある。

0.環境

※本インストールには、EPEL(エンタープライズ Linux 用の拡張パッケージ)のリポジトリを有効化にしておく必要があります。

1.導入

2.設定

ModSecurityで「SQLインジェクション」や「クロスサイトスクリプティング」に関するチェックのみ行う場合。

SecRuleEngine 設定を “DetectionOnly” に設定。攻撃を検知した場合に、リクエストをブロックせずに、検知内容をログ出力します。

3.設定反映(試験運用)

4.偽陽性判定がある場合

auditログを確認しid ( [id “XXXXXX”] ) をチェックします。

※Wordpress固有の対応

WordPressのインストールされた環境に「ModSecurity」 を導入する場合、問題のないリクエストであってもデフォルトでは偽陽性判定がされます。”SecRuleRemoveById” を用いて、偽陽性判定のあるリクエストを除外します。以下の「ModSecurity」用ファイルを作成し「Apache」のコフィグレーション(httpd.conf)に読み込ませます。

5.本番運用

SecRuleEngine 設定を “DetectionOnly” → “On” に設定します。

以上