2012年3月2日金曜日

Squidでの中継をドメイン名(DNS名)でアクセス制限

スズキです。

こちらでNATインスタンスにSquidを導入したのですが、
VPCのNATインスタンスを作ってみる(Squid編)
目的は中継するHTTP(S)のアクセスをドメイン名(DNS名)でアクセス制限するためでした。
("iptables"ではIPアドレスとポートの制限までとなります)

ということで、"www.google.co.jp"のみにアクセスできるようにしてみました。
(設定ファイルは下記のとおりです)

# cat /etc/squid/squid.conf
...
acl google dstdomain www.google.co.jp
http_access allow google
http_access deny all

上記のNATインスタンス(Squid)を利用しているサブネット上のEC2から確認してみます。
※NATインスタンスのIPアドレスは"10.0.0.74"です。

▼プロキシーを設定してHTTPアクセス
# curl -x 10.0.0.74:3128 http://www.google.co.jp/
...
成功!
# curl -x 10.0.0.74:3128 http://xxx.xxx.xxx/
...
失敗!

▼プロキシーを設定してHTTPSアクセス
# curl -x 10.0.0.74:3128 https://www.google.co.jp/
...
成功!
# curl -x 10.0.0.74:3128 https://xxx.xxx.xxx/
curl: (56) Received HTTP code 403 from proxy after CONNECT
失敗!

▼HTTPアクセス(透過プロキシーとして利用)
# curl http://www.google.co.jp/
...
成功!
# curl http://xxx.xxx.xxx/
...
失敗!

ということで、ドメイン名(DNS名)でアクセス制限できていることが確認できました。

何回も言いますがHTTPSは透過型プロキシー(Squid)が利用できません...
--------
http://www.suz-lab.com

0 コメント: