リバースプロキシ(Reverse Proxy)での認証について

最終更新日:2004年10月26日

Squid Homeへ】

Squidはデフォルトの状態では、リバースプロキシやアクセラレータ(透過プロキシ)として機能させた場合には、認証機能は働きません。 なぜなら本来、このような認証は各ソースサーバ(オリジナルWebサーバ)側で行うべきと考えられるからです。 しかしどうしてもSquid側で認証を行いたい場合には以下の方法で実現できます。


■ソースファイルからSquidを構成する場合

コンパイル後は、「認証」と「リバースプロキシ(透過プロキシ)」の設定をそれぞれ行えば、リバースプロキシにおいても認証機能が利用できるようになります。


■RPMパッケージを作り直す場合

RedHatやFedoraを利用しているなら、RPMパッケージでSquidをインストールしたいと思うかも知れません。 しかし、通常のRPMパッケージのSquidではリバースプロキシ(透過プロキシ)で認証機能を使うことはできません。 勿論、一度RPMパッケージのSquidをアンインストールしてから先の方法でソースファイルからインストールすれば認証の利用は可能になりますが、できればRPMパッケージのままでリバースプロキシでも認証が使いたいかも知れません。
そのような場合にはSRPMパッケージによってRPMパッケージを作り直すことで、認証が利用できるようになります。

以下の行を修正し"-DAUTH_ON_ACCELERATION"のステートメントを追加します。
(変更前)
DEFS=-DHAVE_CONFIG_H

(変更後)
DEFS="-DHAVE_CONFIG_H -DAUTH_ON_ACCELERATION"
編集が終わったなら、

# cd /tmp
# tar cvf squid-2.5STABLE.1.tar ./squid-2.5STABLE1
# gzip squid-2.5STABLE1.tar
# cp squid-2.5STABLE1.tar.gz /usr/src/redhat/SOURCES


その後、RPMパッケージを再構築します。

# cd /usr/src/redhat/SPECS
# rpmbuild -ba ./squid.spec


再構築が始まり、問題がなければRPMパッケージが”/usr/src/redhat/RPMS/i386” ディレクトリに作成されます。
作成されたパッケージを使ってSquidを更新すれば、リバースプロキシでも認証が使えるようになります。

Squid Homeへ】

Copyright© 1998-2003 ROBATA.ORG