web-dev-qa-db-ja.com

htaccessで許可されていないIPからのリクエストの200ステータス?

ボットに絶えず殴られているDebian9サーバーがあります。対策が機能していることを確認するために、毎日200秒のアクセスログをチェックしています。ログには403のステータスリクエストがいっぱいで、通常は許可されたIPからの200がほんの一握りです。プライバシーのために以下で編集されたIPアドレス。

ドキュメントルートには、次のhtaccessファイルがあります。

order deny,allow
deny from all
allow from  216.xx.xxx.xxx
allow from 184.xxx.xxx.xxx

AuthUserFile /var/www/.htpasswd
AuthName "Admin"
AuthType Basic

<Limit GET>
        require valid-user
</Limit>

通常、このコマンドは、上記の2つのIPと:: 1のアクセスのみを生成します。

Sudo zcat /var/log/Apache2/access.log.4.gz | awk '{ if($9 == 200) { print $1 " " $7  } }' | sort | uniq -c | sort -nr | head -10

しかし、今日は、許可されたhtaccessにないにもかかわらず、200ステータスを取得した2つのリクエストのように見えるものもありました。

::1 - - [17/Apr/2020:00:49:05 -0500] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.25 (Debian) OpenSSL/1.0.2r (internal dummy connection)"
103.231.90.xxx - - [17/Apr/2020:00:49:36 -0500] "OPTIONS * HTTP/1.1" 200 2670 "-" "Mozilla/5.0 [en] (X11, U; OpenVAS-VT 9.0.3)"
103.231.90.xxx - - [17/Apr/2020:00:49:39 -0500] "OPTIONS * HTTP/1.1" 200 163 "-" "Mozilla/5.0 [en] (X11, U; OpenVAS-VT 9.0.3)"
::1 - - [17/Apr/2020:00:49:52 -0500] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.4.25 (Debian) OpenSSL/1.0.2r (internal dummy connection)"

それらは成功したアクセスを表していますか?もしそうなら、どうすればこれが不可能になるように私のhtaccessファイルを修正できますか?もうしっかりしていると思いました。

1
jerrygarciuh

OPTIONS * ワイルドカード付きはサーバー全体を指しますが、.htaccessファイルは<Directory>構成セクション と同じです。これらのリクエストを禁止する場合は、ディレクティブを.htaccessから<VirtualHost>またはグローバルサーバー構成に移動する必要があります。

ところで、Debian9にはApache2.4が付属しており、使用しているものとは異なる アクセス制御 ディレクティブがあります。

  • Apache 2.2:

    order deny,allow 
    deny from all 
    allow from 216.xx.xxx.xxx 
    allow from 184.xxx.xxx.xxx
    
  • Apache 2.4:

    Require ip 216.xx.xxx.xxx 184.xxx.xxx.xxx
    
2
Esa Jokinen