目的

・apache(httpd)でWebProxy(ForwardProxy)を作成する
・URLベースのWhiteList制御が行えるか確認する(動作確認中)

httpd

# yum install httpd

バージョン

# httpd -v
Server version: Apache/2.2.31 (Unix)
Server built:   Jul 19 2016 00:11:31

モジュールの確認
(まずはProxyを作りたい。だいたい揃っていそう。デフォで読む感じになっている)

# cat  /etc/httpd/conf/httpd.conf  | grep -e proxy_module -e proxy_ftp_module -e proxy_connect_module
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
Listen 8080
<IfModule proxy_module>
    ProxyRequests On
    ProxyVia On

    CustomLog logs/proxy_log combined
    <Proxy *>
        Order deny,allow
        Deny from all
        Allow from {対象のセグメントのCIDRとか}
    </Proxy>
</IfModule>

クライアント側の設定

cat << _EOF_ >>~/.bash_profile
export HTTP_PROXY=プロキシサーバのIP:Port
export http_proxy=プロキシサーバのIP:Port
export HTTPS_PROXY=プロキシサーバのIP:Port
export https_proxy=プロキシサーバのIP:Port
_EOF_

PROXYとして動作OK

# wget http://google.co.jp
--2017-02-14 14:55:02--  http://google.co.jp/
Connecting to XX.XX.XX.XX:8080... connected.
Proxy request sent, awaiting response... 301 Moved Permanently
Location: http://www.google.co.jp/ [following]
--2017-02-14 14:55:02--  http://www.google.co.jp/
Connecting to XX.XX.XX.XX:8080... connected.
Proxy request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘index.html.1’

index.html.1                                         [ <=>                                                                                                    ]  10.72K  --.-KB/s    in 0s      

2017-02-14 14:55:02 (186 MB/s) - ‘index.html.1’ saved [10975]

・WhiteList(整理中)

Listen 8080

<IfModule proxy_module>
    ProxyRequests On
    ProxyVia On
    RewriteEngine On

    CustomLog logs/proxy_log combined
    <Proxy *>
        Order deny,allow
        Deny from all
        Allow from XX.X.X.

#        RewriteCond %{REMOTE_HOST} !^http://google.co.jp [NC]
#        RewriteCond %{REQUEST_URI} !^http://google.co.jp/ [NC]
        RewriteCond %{QUERY_STRING} !^http://google.co.jp/ [NC]
        RewriteRule ^ http://www.example.com/ [R] 
    </Proxy> 
</IfModule>

→www.example.comに行ってしまう。。。。

TOP