apacheでのアクセス制限

ブログサイトを運用しているとSPAM書き込みにうんざりする事があります。
そこで今回はapacheでアクセス制限を行いたいと思います。

まず、ドキュメントルートでブロックする場合httpd.confにdeny fromを追加します。

# vi /etc/httpd/conf/httpd.conf

<Directory “/var/www/html”>
Order allow,deny
Allow from all
Deny from 192.168.1.254 ←ここに接続させないIPを記載
</Directory>

ポリシーとしてはorderで許可と拒否の順番を決めます。
上記の例ではallw,denyなので許可してから拒否になります。
Allow from allで全てを許可してからDeny fromで拒否するIPを入れます。

allow,denyが一般的と思いますがセキュアなサーバで接続できるclientが
少ない場合は逆にDeny from allからAllow from 192.168.1.1のような感じ
で許可するIPを制限できます。

この制限はディレクトリ単位やファイル単位で制限できるので
ここだけは制限したいとかいう場合には結構有効です。

私の場合はwordpressにSPAM書き込みを何度も行うIPに対してアクセス制限をかけています。

# vi /etc/httpd/conf.d/wordpress.conf
Alias /wordpress /var/www/wordpress
<Directory /var/www/wordpress>
Options ExecCGI FollowSymLinks
Order allow,deny
Allow from all
Deny from 205.164.24.90
AllowOverride all
</Directory>

上記のような感じでDeny fromを増やしていきます。

そもそもサーバに接続させたくないのであれば/etc/hosts.denyで制限したほうがいいです。

コメントする