ModSecとも呼ばれるModSecurityは、無料のオープンソースWebアプリケーションファイアウォール(WAF)です。保護したいWebアプリケーションの前に配置されます。
ModSecurityだけでは、サーバーを保護するのに十分ではありません。 WAFのパフォーマンスを最大化するには、ルールを組み込む必要があります。非常に有名で、広く使用され、尊敬されているルールセットの1つは、OWASPCRSルールセットです。これをModsecurityで使用して、インターネット上の新たな脅威に対するWebアプリケーションサーバーの保護を強化します。
今日のガイドでは、ModSecurityにOWASPコアルールセット(CSR)3.3.2をインストールする方法を紹介します。これを行うには、NginxとModSecurityがプリインストールされたLinuxサーバーが必要です。
前提条件:
- Ubuntu20.04サーバー
- sudo特権
- UbuntuサーバーにNginxを使用してデプロイされたModsecurity
Nginxがインストールされていない場合は、次のガイドを使用してインストール要件を満たすことができます。
https://linuxways.net/ubuntu/how-to-install-nginx-on-ubuntu-20-04-lts-using-source-code/
UbuntuにNginxをインストールしているが、ModSecurityをデプロイしていない場合は、次のガイドを使用してインストールしてください。
https://linuxways.net/ubuntu/how-to-deploy-modsecurity-with-nginx-on-ubuntu-20-04-lts/
前提条件が完了したら、OWASPコアルールセットのインストール部分に進むことができます。行きましょう!
インストールガイド
以下は、Modsecurity用のOWASPコアルールセット3.3.2のインストールに関連する手順です。
ステップ1:OwaspCRS3.3.2アーカイブをダウンロードする
まず、wgetコマンドを使用してOWASPCRS3.3.2アーカイブをダウンロードします。これを行うには、次のコマンドを実行します。
wget https://github.com/coreruleset/coreruleset/archive/refs/tags/v3.3.2.zip
ステップ2:解凍パッケージをインストールする
次に、解凍パッケージをインストールします。 zip形式のパッケージを解凍するために必要です。システムにすでにインストールされている場合は、この手順をスキップしてください。
sudo dnf install unzip -y
ステップ3:master.zipアーカイブを解凍します
このステップでは、master.zipアーカイブを解凍します。これを行うには、次のコマンドを実行します。
sudo unzip v3.3.2.zip -d /etc/nginx/modsec
ステップ4:CRS構成ファイルのバックアップを作成する
OWASPコアルールセットには、サンプル構成ファイルが付属しています。このステップでは、ファイルの名前を変更し、将来再起動する必要がある場合に備えて、ファイルのバックアップを作成します。
sudo cp /etc/nginx/modsec/coreruleset-3.3.2/crs-setup.conf.example /etc/nginx/modsec/coreruleset-3.3.2/crs-setup.conf
ステップ5:ModSecurityでルールを有効にする
ここで、このステップでは、ModSecurityでOWASPルールを有効にします。これを行うには、お気に入りのエディターでmodsecurity構成ファイルを開きます。 nanoエディターを使用しました。
sudo nano /etc/nginx/modsec/modsec-config.conf
ファイルを開いたら、次の2行をファイルに追加して、ModSecurityにルールを含めます。
Include /etc/nginx/modsec/coreruleset-3.3.2/crs-setup.conf
Include /etc/nginx/modsec/coreruleset-3.3.2/rules/*.conf
次に、ファイルを保存し、(CTRL + O)と(CTRL + T)で閉じます。
ステップ6:Nginxの構成を確認する
Nginxを再起動する前に、構成ファイルに追加した新しい構成に問題がないかどうかを確認する必要があります。確認するには、次のコマンドを実行します:
sudo nginx -t
次の出力が表示され、構成に問題がなく、次のステップに進むことができます。
ステップ7:Nginxをリロードする
Nginxを再起動して、行った新しい変更を更新する最終ステップに到達しました。
sudo systemctl restart nginx
Nginxがリロードされると、OWASPコアルールセットがModsecurityで機能するようになります。
このガイドでは、いくつかのわかりやすいコマンドを使用して、ModSecurity用のOWASPコアルールセットをインストールする方法について詳しく説明しました。また、保護を有効にするためにModSecurityでルールセットを構成する方法も学びました。システムの速度にもよりますが、全体のプロセスには約5〜10分かかります。設定が成功すると、WAFはOWASPコアルールセットを使用してWebアプリケーションサーバーの保護を開始します。