CentOSにプロキシサーバー用のソフトウェアであるsquidをインストールしてみました。
プロキシサーバーはインターネット接続を中継するためのサーバーなのですが、これによってあたかも中継先から接続したかのように見せられるためIPアドレスを偽装することが出来ます。
たとえば、日本から海外のプロキシサーバーを経由してwinnyなどにファイルを流した場合、警察は海外のサーバーからファイルを流した事しか分かたないため、流した人を特定することが出来ません。
少し前に話題になった公安の機密文章の流出もこの方法を使ったと言われています。
で、今回これを入れた理由なのですが、簡単に言えば2ちゃんねるの規制対策です。
普段使ってる回線だけだと、規制がかかった時に2ちゃんねるに書き込みできなくなってしまいますが、squidを入れたサーバーのホストが規制にかかっていなければそっちを経由して書き込むことが出来るようになります。
ただし、squidのインストールしたサーバーも規制にかかってしまったら書き込めなくなってしまいますが。
まあ、2ちゃんねるに規制関係なく書き込むには年500円払う必要があるので、払いたくない場合はsquidをインストールすると便利かもしれない。
そんなわけでインストール方法です。
今回はソースからインストールすることにしました。
ソースのダウンロードページから最新のバージョンをダウンロードしてください。
wget http://www.squid-cache.org/Versions/v3/3.1/squid-3.1.9.tar.bz2
解凍
tar jxvf squid-3.1.9.tar.bz2
ビルドしてインストール
./configure
make
make install
これでインストールが終わるので、次に設定です。
設定ファイルは/usr/local/squid/etc/squid.confです。
まず、acl CONNECT method CONNECTと書いてあるところに次の行を追加。Basic認証を利用して外部からアクセスできるようにするための設定です。
auth_param basic program /usr/local/squid/libexec/ncsa_auth ユーザー名とパスワードを書いたファイル
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
acl password proxy_auth REQUIRED
http_access allow password
最後の行に以下の行を追加。これがないとプロキシサーバーを経由したことがばれて、2チャンネルに書き込むことが出来なくなります。
forwarded_for off
request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all
squidの待機ポートを変更したい場合は以下の行を変えてください。デフォルトより変更した方が少しだけ安全になります。
http_port 3128
ユーザー名とパスワードを書いたファイルについてですが、Apacheのbasic認証に使うのと同じ形式で、以下のコマンドで作ることが出来ます。
htpasswd -c パスワードを書いたファイルの作成先 ユーザー名
その後、パスワードを入れろと出てくるので入力すると完成します。
ちなみに、ファイルの中身は以下のようにパスワードが暗号化されています(ユーザー名test.パスワードaの場合)。
test:e.uzoEjc4r4oI
これで、設定が完了するので、以下のコマンドでsquidを起動します。
/usr/local/squid/bin/squidclient start
OS起動時に自動的にsquidを起動した場合は、上のコマンドを/etc/rc.d/rc.localに書き込むと良いです。
これで、squidによるプロキシサーバーの構築は完了です。
Jane Styleからプロキシサーバーを経由して2チャンネルに書き込みたい場合は
メニューバー > ツール > 設定 >基本 > 通信 で、proxyを使用するにチャックした後、送信用のところにプロキシサーバーのアドレスとポートを入れ、Basic認証のところにIPとパスワードを入れればおkです。