エンドユーザーの環境再現のために急遽検証用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関連モジュールが有効であることを確認
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
待ち受けを8080に設定
Listen 8080
Proxyモジュールの設定
<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>
上記の設定でHTTP、HTTPS共に動作を確認
次にProxyに認証機能(とりあえずBasic認証)を追加。
最初にパスワードファイルを作成(ユーザー、パスワードはtest/test)
htpasswd -c /etc/apache2/.htpasswd test New password: Re-type new password:
httpd.confの修正
<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>
以上で終了