しょんぼり技術メモ

まいにちがしょんぼり

Raspberry Piをゴミ除去+キャッシュプロクシサーバにして快適な生活を手にする

エロ広告滅びろ。

というわけで、なんかムラッときてRaspberry Piを買ったのでメモ。

インストール

NOOBSを使う。1.3Gぐらいあるので、偉大なるjaistのミラーからダウンロードするのが良い。http://ftp.jaist.ac.jp/pub/raspberrypi/NOOBS/images/
その間にSDカードをフォーマットしておく。今回はAmazonで一緒に勧められた東芝の16Gのやつ。SDカードのフォーマットツールで綺麗にしておく。

で、NOOBSのzipを解凍し、中身をSDカードにぶちこんでRaspberry Piにぶちこんで各種ケーブルをぶち込んで電源を接続すれば良い。あとはRaspbianを適当にインストールする。

Squid+Ziproxy+Privoxy

Squid: キャッシュ担当、Ziproxy: コンテンツ圧縮担当、Privoxy: フィルタ・ゴミ除去担当。クライアント側で指定する最初のプロクシはSquidで、そこからZiproxy→Privoxy→The internetに出て行く流れ。

大変分かりやすいこちらのサイトを参考に設定を行う。Raspberry Piだからといって特別なことは何もない。せいぜい、JPEG2000にしたりするのを躊躇う程度。なお、俺は虹裏の画像を綺麗な状態で見たいので、画像処理系は一切無効にしている。Squidにキャッシュさせるのが目的。

Squidについては、とりあえずSDカードの空き領域を使うことを考えてキャッシュサイズを設定すれば良い。

Privoxyについては、こちらのサイトのモノを使ってみている。今後イラッときたら追加していくつもりで。

なお、出先で使うためにはVPNが良い。うちの場合はルータにPPTP/L2TPをやらせているので、特にRaspberry Pi側には入れない。最近オープンソースになったSoftether VPNをRaspberry Piに入れた人もいるようなので、選択肢として大変良いだろう。

【追記】squidのキャッシュをSDカードにしていると、キャッシュ書き込みでSDカードが早死にしそうな気がしたので、そこらへんのUSBメモリを挿してext4パーティションを作って/var/spool/squidを移動した。キャッシュでUSBメモリが早死にしてもシステムは生き残れるので、きっとこの方が良い。
また、privoxyがデフォルトだとGIFアニメを無効化してくれていたので、虹裏では除外するように設定した。default.actionを参照。

MRTG

今の時代はZabbixとかが良いらしいのだが、mrtgがなんか好きなのでこちらを使う。
Raspberry Piに入れる方法については、こちらのページを参照すると大変良い。
また、mrtgを実行するとなんかエラーになるので、こちらのページにあるsedコマンドを叩いて修正すれば良い。

クライアント側

あとはiPhoneiPadで、プロクシの設定を行えば良い。設定すべき対象はSquidのプロクシなので、デフォルトならば3128/tcpを指定する。適当にログを取りながら、不快な広告などをどんどんブロックして、Quality of Lifeを向上させよう。