2017-07-21 6 views
1

6つの仮想ホストサイトを実行している2つのWebサーバーでhttpdを実行しています。私のウェブサーバはAWSのELBの後ろにあります。私のELBログには、ELBサーバーのIPに直接アクセスしているユーザーがいることが記載されています。このIPアドレスは、最初のvhostサイト(応答はvhostsサイトのアルファベット順に基づいています)で応答します。ここでは、リクエストURLに自分の仮想ホスト名が含まれていないリクエストをブロックする必要があります。誰かがAWS IPを打っていて、いくつかのランダムなアドレスから/ admin、/ sql、/ dbなどにアクセスしようとしています。これらの不要な要求をELBレベルまたはhttpdレベルでブロックする必要があります。以下はELBログからのエラーの1つです。あなたは、アプリケーションのロードバランサを使用している場合ELBまたはhttpdレベルで不要なリクエストをブロックするにはどうすればいいですか

2017-07-21T03:22:19.973661Z <loadbalancer> <Client IP>:48010 10.1.6.57:80 0.000049 0.068249 0.000039 401 401 0 0 "HEAD http://52.0.168.49:80/phpmy/ HTTP/1.1" "Mozilla/5.0 Jorgee" - - 
+0

使用NACLsから拒否拒否。 NACLでDENY要求を追加できます。 –

答えて

1

、あなたはIPアドレスを直接指定している要求をフィルタリングするには、Webアプリケーションファイアウォール(WAF)を使用することができます。

1

Webサーバーインスタンスへの直接IP要求を無視することについては、Webサーバーセキュリティグループが、ELBが実行されているサブネットからのトラフィックのみを受け入れることを確認します。このようにして、すべての直接トラフィックは無視されます。

特定のパスへの特定のアクセスをブロックすることは、httpdレベルで行うのが最適ですが、Fail2Banの実装を検討することをお勧めします。 https://serverfault.com/questions/416926/automatically-block-ip-who-requests-certain-url

もちろん、Apacheの設定でアクセスを制御/拒否できます。その同じリンクは、上記の本も示唆:

あなたはフォーラムのdirctoryで.htaccessファイルを作成し、以下の行がアクセスすることにより、そのURLをprtotectするのを助けることができるこれらの を置くことができます。

注文できるように、すべての

+0

これは、とにかくコード404または403でaccess_logエントリに残っています。 – Miguel

関連する問題