Nibelungen Code

Tag Archives: リバースプロキシ

Squid配下でのApacheでアクセス元のIPを取得する

このエントリをはてなブックマークに追加このエントリをGoogle bookmarkに追加このエントリをdel.icio.usに追加このエントリをfacebookに追加

何も設定しないとApacheのログにはSquidのIPが書かれてしまう。

Squidの設定に

forwarded_for on

を記述する。

そしてApache側のサーバーに
X-Forwarded-ForヘッダからIPアドレスを取得するモジュールをインストールする。

sudo aptitude install libapache2-mod-rpaf

mod_rpafの設定を変更する。RPAFproxy_ipsにはSquidサーバーのIPを記述しておく。

sudo nano /etc/apache2/mods-available/rpaf.conf
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 192.168.1.201

mod_rpafが組み込まれていなければ

sudo a2enmod rpaf

Apacheを再起動

sudo service apache2 restart

これでApacheのログにアクセス元のIPが書かれてるはず。

とりあえずApacheのログさえちゃんとなればどうでもいいんです!
っていう場合にはSquidの設定はせずにmod_rpafだけインストールすればいい。
もしくはApacheのログの設定で対処しましょう。

LogFormatの%hを%{X-Forwarded-For}iに変更する。
combinedが他でも使っていて変更できない!という場合は別の名前で新たに記述しておく。reverseproxyとか。

sudo nano /etc/apache2/apache2.conf
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

Apacheを再起動

sudo service apache2 restart

ただこれだとREMOTE_ADDRがSquidのサーバーのIPなのかな?わからん。

 | 
このエントリーをはてなブックマークに追加

Squid配下にWEBサーバーを設置してみた

このエントリをはてなブックマークに追加このエントリをGoogle bookmarkに追加このエントリをdel.icio.usに追加このエントリをfacebookに追加

結構前にテスト的に立てていたSquidサーバーを使用してリバースプロキシにしてみました。
というか1ヶ月位前から既に運用はしてたんですがね・・・。

体感速度としては多少は早くなったかな?程度ですが、すこしでも早くなるならいいかな。

Squidの設定は、まだ自分でもあまり理解していないので運用しつつ少しずつ理解していこうと思います。

 | 
このエントリーをはてなブックマークに追加