0017

サーバレベルでIP制限をする方法

サーバレベルでIP制限をする方法

2012.8.16

数日前、同サーバにのっている別サイトに尋常ではないアクセスが来てしまい、それに引っ張られてこのサイトもアクセスが重たくなってしまう事がありました。
そのIPからのアクセスを制限する方法をサーバ屋さんから教えてもらったのでメモ。

確認環境

事前作業

コンソールでログインし、rootになっておいてください。
実行は自己責任でお願いいたします。

制限したいIPアドレスを追加する

000.000.000.00のIPアドレスをblackholeと呼ばれる機能?で制限をかける方法のようです。

# /sbin/ip route add blackhole 000.000.000.00

制限していたIPアドレスを削除する(制限を解除する)

addの部分がdelとなり、制限を解除したいIPアドレスを指定します。

# /sbin/ip route del blackhole 000.000.000.00

設定されているIPアドレスを確認する

ip routeとコマンドを打つことで、現状を把握できます。
「blackhole 000.000.000.00」と記載された箇所が、制限をかけたIPアドレスとなります。

[root]# ip route
blackhole 000.000.000.00 
xxx.xxx.xxx.x/00 dev venet0  scope host 
xxx.xxx.x.x/00 dev venet0  scope link 
default via xxx.xxx.xxx.x dev venet0

.htaccessでやる方法もあるのでしょうけど、どうせ来てほしくないのですから、制限をかけるのであれば、元からやってしまうのもアリかもしれませんね。