Ubuntu 18.04でApacheのModSecurityを設定する方法

ModSecとしても知られるModSecurityは、Apache Webサーバー向けの堅牢なオープンソースファイアウォールアプリケーションです。ファイアウォールは、リクエストをフィルタリングすることにより、ネットワークまたはソフトウェアアプリケーションを悪用や不正アクセスから保護するユーティリティです。.


ModsecはHTTP(Hypertext Transfer Protocol)にセキュリティ機能を提供します。自由に使用できるため、Apache Webサーバーでの要求の監視、ロギング、およびフィルタリングに広く採用されています。.

このユーティリティは、OWASP ModSecurityコアルールセットを使用して一般的な脆弱性との戦いに成功しています.

このガイドでは、Ubuntu 18.04 VPSでModSecurityを使用してApache Webサーバーを設定および保護する手順を説明します.

前提条件

  • Ubuntu 18.04サーバーを実行するVPSプラン
  • sudoタスクを実行できる非rootユーザー

ステップ1:Apache Webサーバーのインストール

まず、ApacheがUbuntu 18.04サーバーにインストールされていない場合は、インストールする必要があります。まず、Ubuntuパッケージインデックスを更新します。.

$ sudo apt-get update

次に、Apacheをインストールします。

$ sudo apt-get install Apache2

押す Y そしてヒット 入る インストールの確認を求められたとき

Apacheがすでにインストールされている場合は、次のエラーメッセージが表示されます。

apache2はすでに最新バージョンです

ステップ2:ModSecurityのインストール

Apacheをインストールしたら、次のステップはModSecurityのインストールです。以下のコマンドを実行します。

$ sudo apt-get install libapache2-mod-security2

Apacheを再起動します

$ sudo service apache2 restart

以下のコマンドを実行して、モジュールが有効になっているかどうかを確認できます。

$ sudo apachectl -M | grepセキュリティ

次の出力が表示されます。

security2_module(共有)

ステップ3:ModSecurityの構成

ModSecurityエンジンが機能するにはルールが必要です。ルールは、Webサーバーでの通信の処理方法を決定します。構成に応じて、ModSecurityはセッションの通過、ドロップ、リダイレクト、スクリプトの実行、さらにはステータスコードの表示を行うことができます.

デフォルトの構成ファイルがあります /etc/modsecurity/modsecurity.conf-recommended コピー先 /etc/modsecurity/modsecurity.conf ModSecurityを有効にして設定します。これを行うには、以下のコマンドを実行します。

$ sudo cp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf

次に、nanoエディターを使用して、コピーしたファイルを編集します。

$ sudo nano /etc/modsecurity/modsecurity.conf

SecRuleEngineの値をDetectionOnlyからOnに変更します.

$ SecRuleEngine =オン

押す >CTRL + X その後 Y そして 入る ファイルを保存する.

変更を有効にするためにApacheを再起動します.

$ sudo systemctl restart apache2

ModSecurityのデフォルトのルールセットは次の場所にあります / usr / share / modsecurity-crs ディレクトリ。ただし、GitHubからルールセットをダウンロードすることを常にお勧めします。

これを行う前に、デフォルトのルールディレクトリの名前を変更します。

$ sudo mv / usr / share / modsecurity-crs /usr/share/modsecurity-crs.bk

次に、以下のコマンドを使用して、GitHubから新しいルールセットをダウンロードします。

$ sudo git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git / usr / share / modsecurity-crs

以下のコマンドを使用して、ダウンロードしたルールからサンプル構成ファイルをコピーします。

$ sudo cp /usr/share/modsecurity-crs/crs-setup.conf.example /usr/share/modsecurity-crs/crs-setup.conf

これらのルールをApacheで機能させるには、 /etc/apache2/mods-enabled/security2.conf nanoエディターを使用したファイル

$ sudo nano /etc/apache2/mods-enabled/security2.conf

最後に次の2行を追加します

$ IncludeOptional /usr/share/modsecurity-crs/*.conf
$ IncludeOptional "/usr/share/modsecurity-crs/rules/*.conf

を押してファイルを保存します CTRL + X、Y そして 入る

Apacheを再起動します。

$ sudo systemctl restart apache2

ステップ4:ModSecurityのテスト

これで、ブラウザーで悪意のあるスクリプトを実行して、ModSecurityルールがトリガーされるかどうかを確認できます。ブラウザで以下のURLを入力してください。 IPアドレスをサーバーまたはドメイン名のパブリックIPアドレスに置き換えることを忘れないでください。

http://127.0.0.1/index.html?exec=/bin/bash

禁止されているエラーメッセージが表示されます。

禁止このサーバーにアクセスする権限がありません。 127.0.0.1ポート80のApache / 2.4.29(Ubuntu)サーバー

結論

それでおしまい。これで、Apache Webサーバーが悪意のある攻撃者から保護されました。 ModSecurityはSQLインジェクションを含む多くの既知の攻撃から保護することに注意してください。モジュールは、ハッカーからWebサーバーを強化することに関しては素晴らしい武器です.

これらの上位3つのLinuxホスティングサービスを確認する

FastComet

開始価格:
$ 2.95


信頼性
9.7


価格
9.5


使いやすい
9.7


サポート
9.7


特徴
9.6

レビューを読む

FastCometにアクセス

Hostinger

開始価格:
$ 0.99


信頼性
9.3


価格
9.3


使いやすい
9.4


サポート
9.4


特徴
9.2

レビューを読む

Hostingerにアクセス

ChemiCloud

開始価格:
$ 2.76


信頼性
10


価格
9.9


使いやすい
9.9


サポート
10


特徴
9.9

レビューを読む

ChemiCloudにアクセス

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me