Apache HTTP Server レベルで IP アドレスをブロックする方法

ほとんどの Web アプリケーションファイアウォール (WAF) は、IP アドレスのブロックリストを可能にします。 ただし、Apache HTTP サーバーを実行していて、IP をすぐにブロックする場合は、記事の手順に従ってアクセスリストを作成するか、Apache の Require 機能。

説明 description

環境

Adobe Experience Manager(AEM)

問題

サイトで DoS(DoS) 攻撃、スパム、またはハッキングが発生している場合、Apache HTTP Server(AEM Dispatcher) レベルで IP アドレスをブロックする方法を教えてください。

解決策 resolution

ソリューション

mod セキュリティなど、ほとんどの Web アプリケーションファイアウォール (WAF) は、IP アドレスのブロックリストを可能にします。

ただし、Apache HTTP サーバーを実行していて、IP をすぐにブロックする場合は、次の手順に従います。

  1. という名前のファイルを作成します。 block-offending-ips.conf をサーバー上に置き換えます。

  2. ファイルをエディターで開き、ブロックする URL に対して、問題のある IP がアクセスするのをすべてブロックする Location ディレクティブを追加します。  以下のファイルのコンテンツには、2 つのオプションがあります。

    1. リクエストがプロキシ化された場合(CDN、ロードバランサーなどを介して)、 リモートユーザーの IP は、次のようなヘッダーにのみ存在します。 X-Forwarded-For その場合は、この設定を使用できます。  この設定は、 remoteip_module が設定されている。

      code language-none
      <LocationMatch "/.*">
      Order Allow,Deny
      Allow from all
      SetEnvif X-Forwarded-For "10\.42\.137\.123" DenyAccess
      SetEnvif X-Forwarded-For "122\.6\.218\.101" DenyAccess
      #Repeat the "SetEnvlf X-Forwarded-For ..." for each IP you want to block
      Deny from env=DenyAccess
      </LocationMatch>
      
    2. または、リモートユーザーが Apache に直接アクセスしている場合や、 remoteip_module を使用している場合 ( [ 1] ) を使用して抽出し、Apache 内で設定します。その場合は、 mod_authz_core's 必須 機能を直接 (Apache 2.4):

      code language-none
      <LocationMatch "/.*">
      <RequireAll>
      Require all granted
      Require not ip 10.42.137.123
      Require not ip 122.6.218.101
      #Repeat the "Require not ip ..." for each IP you want to block
      </RequireAll>
      ></LocationMatch><
      

      [ 1]

      code language-none
      # Extract true client IP from header added by load balancer/CDN
      <IfModule remoteip_module>
          # valid for ELB or ELB+CloudFront
          RemoteIPHeader X-Forwarded-For
      </IfModule>
      
  3. ファイルをドロップします。 block-offending-ips.conf in /etc/conf.d Apache Web サーバーのフォルダー。

  4. Apache HTTP サーバーを再起動します。

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f