web-dev-qa-db-ja.com

特定のURLを要求するIPを自動的にブロックする

クライアントのPHPBB(サプライズ、サプライズ)の1つがハッキングされました。今のところディレクトリ名を変更するだけで削除しましたが、アドレスはexample.com/forum/*はまだ不快なIPからヒットを得ています。サーバーはCentOSボックスでApachを実行します。

私は専門家ではありませんが、ボックス上のすべてのhttp/sリクエストからディレクトリにアクセスするIPを自動的にブロックしたいと思います。これに対する簡単な解決策はありますか?ルートシェルにアクセスできます。

3
beingalex

これは Fail2Ban の仕事になります。これを使用して、特定の式のログファイルをスキャンし、それらの結果に基づいてiptablesを使用してブロックできます。

fail2banはほとんどの配布リポジトリで利用できるはずですが、オプションのリポジトリを追加する必要があるかもしれません。

4
cjc

置く OPからの解決策

方法は次のとおりです。

  1. サーバーへのSSH
  2. 私はCentOSにいるので、cd /tmp
  3. 私はCentOSにいるので、rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm
  4. yum install fail2ban
  5. 編集/etc/fail2ban/jail.confそして追加..

    [Apache-banforum]
    enabled = true
    filter  = Apache-banforum
    logpath = /usr/local/Apache/domlogs/website/website.co.uk <-- change to your log file
    maxretry = 1
    bantime = 60000
    action = iptables-multiport[name=BanForum, port="http,https"]
    
  6. ファイルを作成するApache-banforum.conf in /etc/fail2ban/filter.d/

    failregex = ^<Host> -.*"(GET|POST).*/forum/.*$
    ignoreregex =
    
  7. /etc/init.d/fail2ban start

5
masegaloeh

フォーラムディレクトリに.htaccessファイルを作成し、次の行を入力すると、アクセスしてそのURLを保護するのに役立つ場合があります。

Order allow,denyDeny from all

3
Toqeer