先日、MacにSquidをインストールしました。
その時は、Parallels Desktop上に構築したゲストOSからもその Squidを経由してインターネットにアクセスできていたはずなのですが、再度、Squidを起動してゲストOSからアクセスしたところ、以下のエラーが発生してインターネットに接続できませんでした。
$ curl https://www.google.co.jp/ http://(SquidのIPアドレス):3128 curl: (56) Received HTTP code 403 from proxy after CONNECT
そこでいろいろ調べてみたところ、squid.conf の localnet まわりの設定を変更しないといけないことがわかりましたので、その方法を記載しておきます。
squid.conf を修正
上で記載したとおり、localnet まわりの設定を修正します。
まずは、squid.conf の先頭付近にある「acl localnet src」を修正します。
ここでは、Squidにアクセスする端末(今回はゲストOS)があるネットワークのセグメントをlocalnetとして設定しておきます。
# Example rule allowing access from your local networks. # Adapt to list your (internal) IP networks from where browsing # should be allowed acl localnet src 10.0.0.0/8 # RFC 1918 local private network (LAN)
その後、同じsquid.confの65行目付近にある「http_access allow localnet」のコメントアウト(#)を外しておきます。
# For example, to allow access from your local networks, you may uncomment the # following rule (and/or add rules that match your definition of "local"): http_access allow localnet
これで、10.0.0.0/8 のネットワークにある端末からSquidにアクセスできるようになっているはずです。
再度、Squid経由でアクセス
以下の通り、今度は目的のサイトからデータを取ることができました。
$ curl https://www.google.co.jp/ http://(SquidのIPアドレス):3128 <!doctype html> ・・・ <title>Google</title> ・・・
Squidをインストールした日は特に squid.conf を修正しなくてもインターネットにアクセスできた気がしていて解せないなのですが、うまくアクセスできるようになったので良しとしておきます。
コメントを残す