たまにIPv6のウェブサーバにアクセスしたいときに困ります。
汎用の4to6ゲートウェイは必要ないので、
ServersMan@VPS(debian-32bit)のウェブプロキシにIPv4でアクセスして、
IPv6サーバにアクセスするようにしようと思ったら…つながりません。
apt-getでインストールされるsquidのバージョンは3.0で、
IPv6対応は3.1からでした。
仕方がないのでソースからビルドです。
最初にコンパイラとカーネルソースのインストールです。
# apt-get install gcc
# apt-get install kernel-package
それからsquidの最新版のインストールです。
なお、basic認証はパスワードがばればれなのでdigest認証を使うことにします。
# cd /usr/local/src
# wget http://www.squid-cache.org/Versions/v3/3.1/squid-3.1.9.tar.bz2
# tar jxf squid-3.1.9.tar.bz2
# cd squid-3.1.9
# ./configure --prefix=/usr/local/squid
# make all
# make install
# chgrp -R root /usr/local/squid
# cd /usr/local/squid/etc
# htdigest -c passwd proxy <ユーザ名>
"/usr/local/squid/etc/squid.conf"の該当部分を以下のように編集します。
visible_hostname <サーバのFQDN>
auth_param digest program /usr/local/squid/libexec/digest_pw_auth -c /usr/local/squid/etc/passwd
auth_param digest children 5
auth_param digest realm proxy
auth_param digest nonce_garbage_interval 5 minutes
auth_param digest nonce_max_duration 30 minutes
auth_param digest nonce_max_count 50
acl password proxy_auth REQUIRED
http_access allow password
http_port 8000
pipeline_prefetch on
httpd_accel_with_proxy on
また、いったん
# /etc/init.d/squid3 stop
で古いsquidを止めてから、
"/etc/init.d/squid3"の該当部分を以下のように編集します。
DAEMON=/usr/local/squid/sbin/squid
SQUID_ARGS="-YC"
CONFIG=/usr/local/squid/etc/squid.conf
最後に
# chmod -R 777 /usr/local/squid/var
# /etc/init.d/squid3 start
を実行すれば、"http://ipv6.google.com"のような
IPv6アドレスしかないサイトもプロキシ経由で見れるようになります。
ただし、なぜか
# /etc/init.d/squid3 stop
では停止しなくなってしまうので、
停止するときはpsでプロセス番号を調べてkillすることにします。
0 件のコメント:
コメントを投稿