CentOS8環境にWAF(modsecurity)をインストールしました
インストール方法は下記に記します
# yum install mod_security mod_security_crs メタデータの期限切れの最終確認: 0:25:46 時間前の 2019年11月07日 14時37分32秒 に実施しました。 依存関係が解決しました。 ================================================================================ パッケージ アーキテクチャー バージョン リポジトリ サイズ ================================================================================ Installing: mod_security x86_64 2.9.2-8.el8 AppStream 267 k mod_security_crs noarch 3.0.0-5.el8 AppStream 127 k 依存関係をインストール中: yajl x86_64 2.1.0-10.el8 AppStream 41 k トランザクションの概要 ================================================================================ インストール 3 パッケージ ダウンロードサイズの合計: 435 k インストール済みのサイズ: 1.6 M これでよろしいですか? [y/N]: y パッケージのダウンロード中です: (1/3): yajl-2.1.0-10.el8.x86_64.rpm 36 kB/s | 41 kB 00:01 (2/3): mod_security_crs-3.0.0-5.el8.noarch.rpm 94 kB/s | 127 kB 00:01 (3/3): mod_security-2.9.2-8.el8.x86_64.rpm 126 kB/s | 267 kB 00:02 -------------------------------------------------------------------------------- 合計 128 kB/s | 435 kB 00:03 トランザクションの確認を実行中 トランザクションの確認に成功しました。 トランザクションのテストを実行中 トランザクションのテストに成功しました。 トランザクションを実行中 準備 : 1/1 Installing : yajl-2.1.0-10.el8.x86_64 1/3 Installing : mod_security-2.9.2-8.el8.x86_64 2/3 Installing : mod_security_crs-3.0.0-5.el8.noarch 3/3 scriptletの実行中: mod_security_crs-3.0.0-5.el8.noarch 3/3 検証 : mod_security-2.9.2-8.el8.x86_64 1/3 検証 : mod_security_crs-3.0.0-5.el8.noarch 2/3 検証 : yajl-2.1.0-10.el8.x86_64 3/3 インストール済み: mod_security-2.9.2-8.el8.x86_64 mod_security_crs-3.0.0-5.el8.noarch yajl-2.1.0-10.el8.x86_64 完了しました!
インストール後、Apacheを再起動します
# systemctl restart httpd
設定方法は後日(デフォルトで全てのルールが適用されます。
クライアントのIPを許可する方法
CentOS7とは設定方法が変わりました。用意されているローカルルールに、内容を追記します。
今回は、使用しているローカル環境の使用しているIPを許可する設定です。
# cd /etc/httpd/modsecurity.d/rocal_rules/ # vi modsecurity_localrules.conf 9行目に追加 SecRule REMOTE_ADDR "@ipMatch 172.16.10.100" id:2000,phase:1,t:none,log,allow ・・・一行で記載 ファイルを上書きしたら、httpdサービスを再起動します。 # systemctl restart httpd
以上で、ローカルからのアクセスにはmodsecurityルールは適用されません。