ホーム » Apache » Proxyサーバーの構築

Proxyサーバーの構築

エンドユーザーの環境再現のために急遽検証用Proxyサーバーを構築した時のメモ。
ProoxyというとSquidとなるが、今回は時間がなかったためにMAC OS X上で動作しているApacheを
Proxyとして設定。(事前にMAC OS Xのrootユーザーを有効にしておき、rootユーザーで作業)

  • 設定ファイルは/etc/apache2/httpd.conf
  • Apacheの起動はhttpd -k start
  • Apacheの停止はhttpd -k stop
  • Apachectlは/usr/sbin
  • ログは/var/log/apache2

httpd.confの設定内容

proxy関連モジュールが有効であることを確認
[code]
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_connect_module libexec/apache2/mod_proxy_connect.so
LoadModule proxy_ftp_module libexec/apache2/mod_proxy_ftp.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
[/code]

待ち受けを8080に設定
[code]
Listen 8080
[/code]

Proxyモジュールの設定
[code]
<IfModule proxy_module>
ProxyRequests On
ProxyVia On
CustomLog "/private/var/log/apache2/proxy_log" combined
<Proxy *>
Order deny,allow
Deny from all
Allow from 192.9.
</Proxy>
</IfModule>
[/code]

上記の設定でHTTP、HTTPS共に動作を確認

次にProxyに認証機能(とりあえずBasic認証)を追加。
最初にパスワードファイルを作成(ユーザー、パスワードはtest/test)
[code]
htpasswd -c /etc/apache2/.htpasswd test
New password:
Re-type new password:
[/code]

httpd.confの修正
[code]
<IfModule proxy_module>
ProxyRequests On
ProxyVia On
CustomLog "/private/var/log/apache2/proxy_log" combined
<Proxy *>
Order deny,allow
Deny from all
Allow from 192.9.
AuthType Basic
AuthUserFile /etc/apache2/.htpasswd
AuthName "Enter Your ID and Password."
Require valid-user
</Proxy>
</IfModule>
[/code]

以上で終了