勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

htaccessファイルで海外からのアクセスをIP制限する方法

   2024/04/16  Apache サーバー

「サーバー立てたらすぐ攻撃が来る」と聞いたのでアクセスログを確認したところ、海外と思われるアクセスIPで変なログが残っていた。そのままにしておくのも怖いので海外からのアクセスを制限したい。以下にhtaccessファイルで海外からのアクセスをIP制限する方法をメモ。

 

アクセスログの確認

確認方法

サーバにSSH接続し以下でアクセスログを確認できる。

cat /var/log/httpd/access_log

変なログあり

海外と思われるIPから以下のようなログがあった。

?%2D%64+%61%6C%6C%6F%77%5F%75%72%6C%5F%69%6E%63%6C%75%64%65%3D%6F%6E+%2D%64+%73%61%66%65%5F%6D%6F%64%65%3D%6F%66%66+%2D%64+%73%75%68%6F%73%69%6E%2E%73%69%6D%75%6C%61%74%69%6F%6E%3D%6F%6E+%2D%64+%64%69%73%61%62%6C%65%5F%66%75%6E%63%74%69%6F%6E%73%3D%22%22+%2D%64+%6F%70%65%6E%5F%62%61%73%65%64%69%72%3D%6E%6F%6E%65+%2D%64+%61%75%74%6F%5F%70%72%65%70%65%6E%64%5F%66%69%6C%65%3D%70%68%70%3A%2F%2F%69%6E%70%75%74+%2D%64+%63%67%69%2E%66%6F%72%63%65%5F%72%65%64%69%72%65%63%74%3D%30+%2D%64+%63%67%69%2E%72%65%64%69%72%65%63%74%5F%73%74%61%74%75%73%5F%65%6E%76%3D%30+%2D%6E

ちなみにデコードすると以下になる。

?-d allow_url_include=on -d safe_mode=off -d suhosin.simulation=on -d disable_functions="" -d open_basedir=none -d auto_prepend_file=php://input -d cgi.force_redirect=0 -d cgi.redirect_status_env=0 -n

これは何のログなのかと調べてみるとアパッチマギカ攻撃というものらしい。

 

海外からのアクセスIP制限

htaccessファイルの用意

こちらのサイトからhtaccessファイルをダウンロードし適当なディレクトリにアップロードする。

尚、全拒否→日本のIPを許可という形で書かれているので必要に応じて書き足していけばよさそう。

Apacheのテストページが表示される場合の対応方法

テストで自宅のIPを制限してページを確認したところApacheのテストページが表示された。こちらの対応方法としてはサーバにSSH接続し以下の通り対応する。

#設定ファイルを開く
vi /etc/httpd/conf.d/welcome.conf

#以下をコメントアウトする
<LocationMatch "^/+$">
Options -Indexes
ErrorDocument 403 /error/noindex.html
</LocationMatch>

#再起動
/etc/init.d/httpd restart

 

参考サイト

https://mizukama.sakura.ne.jp/blog/archives/4062

http://www.cgis.biz/tools/access/

https://kunikiya.hatenadiary.org/entry/20110714/1323461030

 - Apache サーバー

  関連記事

特定ディレクトリ以下のBasic認証を無効化する方法

Basic認証を設定しているサイトがあり、そちらを解除したかった。通常の場合だと ...

apacheを再起動する際に影響を少なくする方法(graceful)

apacheを再起動するとクライアントとの通信が強制的に切断されてしまう。その影 ...

CPIのレンタルサーバでRewriteEngineを使用する場合の注意点

CPIのレンタルサーバで開発する案件があり、htaccessファイルを用いてRe ...

htaccessでスマホ判別とCookie制御する方法

サイトを閲覧しているデバイスがスマホ且つ特定のCookieの値が入っているユーザ ...

日本語込みのURLをRewriteRuleで書き換える方法

WordPressのパーマネントリンク的なことをhtaccessで実現したい。具 ...