nDiki : Privoxy

Privoxy とは?

Internet Junkbuster をベースに開発されたフィルタリング web proxyWeb ブラウザからフィルタリングルールを編集できるのが特徴。

設定

公式サイト

関連情報

2004年1月28日 (水)

[ Debian ] Privoxy + SSH

社外から社内の Wiki にアクセスできるようにしておく。

 ssh -L 2525:<A>:80 <B>

<A>は社内 Web サーバIP アドレス。<B>は sshd の起動している、社外からも社内からもアクセスできるサーバ。 で、Privoxy の設定ファイル(/etc/privoxy/config) に以下の設定を追加

 forward 社内Webサーバ名           localhost:2525
 forward 社内Webサーバ IP アドレス localhost:2525

これで社外から、社内のサーバのコンテンツを Web で閲覧できるように。

[ 1月28日全て ]

2004年7月3日 (土)

Google AdSense

先週の金曜日に申し込んでみていたGoogle AdSenseだがなかなか審査の返事がこない。 どうなっているのかなーと思って、申し込み時のパスワードでログインしたらログインできてしまった (後でチェックしてみたら今日の夕方に承認メールが届いていた。bogofilterspam 扱いにされてた。結果、ログインしたのはきちんと承認後だった)。

レイアウトに試行錯誤しつつ、ページのサイドバーとかに入れてみる。 最初うまく表示されないので「あれ?」と思ったのだがPrivoxyブロックされていただけだった。

ページ毎に広告がかわるのは面白いし、管理が楽でいいな。

しかしクリック報酬だとどこまでいけるのだろうか。 ここ最近は成果報酬の方が効率が良いのだが、果たして。

[ 7月3日全て ]

2004年12月8日 (水)

mixi の足あとの未読/既読表示

mixi の足あとリストは、未読/既読の判別ができない。 なので踏み返す際に、以前どこまで見たかわからなくなって困る。

ということで Privoxyproxy

  • 踏まれた時間をダミーの date query パラメータとして渡してURLが変わるように、HTMLを書き換える。
  • 未訪問と訪問済みのA要素が同じ色になるように設定されているので、a:visited の設定をHTMLに追加する。

といったフィルタリングをするようにする。

Privoxy のフィルタに

 FILTER: mixi-log add date query to mixi log
 s|((\d\d\d\d).+(\d\d).+(\d\d).+(\d\d):(\d\d).+href="show_friend\.pl\?id=\d+?)|$1&date=$2$3$4$5$6|gU

 FILTER: mixi-log-color change visited color
 s|<body|<style type="text/css">\n<!--\na:visited { color:black }\n-->\n</style>\n<body|

を加える。で http://mixi.jp/show_log.pl リクエストに対して mixi-log と mixi-log-color フィルタが有効になるようにアクションを設定。

これで踏み返したものは黒く表示されるようになる。

[ Naney と mixi ]

[ 12月8日全て ]

2005年2月5日 (土)

Firefox 拡張機能の整理

ユーザプロファイルをクリアしたついでに、インストールする拡張機能を整理してみる。

テーマ

Debian パッケージで入れてしまう拡張

  • DOM Inspector (mozilla-firefox-dom-inspector)
  • Diggler (mozilla-diggler)
  • Live HTTP Headers (mozilla-livehttpheaders)
  • Firefox Development JLP

必須拡張

  • タブブラウザ拡張
  • Add Bookmark Here
    • Galeon ユーザだった自分には必須。
  • SwitchProxy Tool
  • Web Developer
    • スタイルシート書き時必須。フォームの POST -> GET 変換も便利。

あった方が便利 (入れる)

  • Google Pagerank Status
  • googlebar
  • mixiツールバー

以前いれていたけどあまり使っていないもの (今回保留)

  • ContextMenu Extensions
  • Configuration Mania
  • ChromEdit
  • Ez Sidebar
  • ScrapBook
  • GooglePreview
[ 2月5日全て ]

2005年2月13日 (日)

Tor で hidden service

Tor: An anonymous Internet communication system を試してみる。 Torは匿名接続を提供するシステム。 アプリケーションで Tor クライアント(あるいはサーバ)をSOCKSサーバとして指定すると、いくつかの Tor サーバを経由して目的のサービスに接続されるようになる。 途中の経路は時間とともにどんどん変わっていく(らしい)。

インストール

Debian パッケージになっているので apt-get。

Privoxy と連携させて Web閲覧

もともと普段から使用している Privoxy の config に、

 forward-socks4a / localhost:9050 .

という設定を追加して再起動Privoxy がローカルサーバで動いている Tor 経由で接続するようになる。

 Firefox -> Privoxy(localhost:8118) -> Tor(localhost:9050)
         -> Tor server -> ... -> Tor server -> Web サーバ

という感じに複数の Tor サーバを経由して目的にサーバに接続されるようになる。

Web サーバアクセスログを見ながら何度かHTTPアクセスをしてみると、IP アドレス(経路の最後の Tor server)が変わっていくのがわかる。

使用感

かなりレスポンスが悪くなる。 現状では常時設定しておくのは辛い感じ。

Tor では名乗りを上げない限り(待ち受けポートを開けた上で、ディレクトリサーバに登録する)サーバにはならない。 このため、Tor server が絶対的に足りていないのかもしれない。

hidden service

Tor の面白い機能の一つに匿名サービスを提供する機能がある。 Web サーバSSHサーバなどを匿名で晒すことができる。

この時動かす tor は Tor サーバである必要はなく Tor クライアントでかまわない。

/etc/tor/torrc に

 HiddenServerDir /var/lib/tor/hidden_http_service/
 HiddenServicePort 80 127.0.0.1:80

を追加して、tor を再起動

/var/lib/tor/hiden_http_service/hostname というファイルに ****************.onion というホスト名が書かれているので、Tor + Privoxy 経由で http://****************.onion/ にアクセスすると、先ほどの tor が動いているサーバの Web サーバのページが見える。 hidden service を提供している tor は NAT の中にいてもOK(のようだ)。

閲覧者側に Tor (とPrivoxyなど)がインストールしてあれば、ダイナミックDNSに登録したりしなくても好きなタイミングで Web サーバにアクセスしてもらえるようになる。 面白い。

ローカルの Apache に 「ServerAlias *.onion」な Virtual Host の設定を追加して、Tor 経由専用のWebサイトも実験的に準備しておいてみた(例によって Wiki)。

[ 2月13日全て ]

2005年2月24日 (木)

マイミクシィ最新日記から外部ブログへのリンクが view_diary.pl 経由に

少し前から、mixi のトップページの「マイミクシィ最新日記」から外部の日記へ直接飛べなくなった。 かわりに view_diary.pl を経由するように。 トラッキングのため?

ちょっと不便。

例によって Privoxy でページを書き換えて、直接飛べるように。

 FILTER: mixi-direct-diary direct jump
 s|view_diary.pl\?url=(\S+)&owner_id=\d+|javascript:location.href=decodeURIComponent("$1")|g

[ Naney と mixi ]

[ 2月24日全て ]

2005年8月2日 (火)

例によってPHS接続用に WWWOFFLE を設定

夏休みでしばらく数日(常時接続ではない) PHS 接続生活になるので、例によって WWWOFFLE をインストール。しばらくは WWWOFFLE + Privoxy の2重 proxy 生活。

今回はDNS キャッシュサーバとして pdnsd も入れておく。

あわせて resolvconf パッケージもインストールして、ifup / ifdown の実行などで問い合わせにいく DNS サーバが変わっても pdnsd が追従するように設定(というか pdnsd のデフォルトの pdnsd.conf がそのようになっている)。

これで /etc/resolv.conf はいつも

 nameserver 127.0.0.1

にしておけるので 実際に問い合わせにいく DNS サーバが変わっても WWWOFFLE再起動が必要なくなる。


[ Debian ]

[ 8月2日全て ]

2005年9月11日 (日)

Firefox ユーザプロファイル作り直し

ブックマークSage まわりその他がおかしくなったので、ユーザプロファイルを半年ぶりに作り直し。 拡張機能の整理(New は 前回から新たに使うようになったもの)。

テーマ

Debian パッケージで入れてしまう拡張

  • DOM Inspector (mozilla-firefox-dom-inspector)
  • Diggler (mozilla-diggler)
  • Live HTTP Headers (mozilla-livehttpheaders)
  • Firefox Development JLP

必須拡張

  • タブブラウザ拡張
    • Tab Mix + Tab Mix Plus にしようと思ったけれど、ツールバーを左に持ってこれなさそうなので、やっぱりコレに。
  • Add Bookmark Here
    • Galeon ユーザだった自分には必須。
  • SwitchProxy Tool
  • Web Developer
    • スタイルシート書き時必須。フォームの POST -> GET 変換も便利。
  • Google Pagerank Status
  • (New) Google Toolbar for Firefox
    • 本家のやつ。
  • (New) Adsense Notifier
  • (New) Sage
    • track feed の表示用 (それ以外は Bloglines で)。
[ 9月11日全て ]

2005年10月1日 (土)

遅ればせながら Greasemonkeymixi の未読・既読の色分けなど。

閲覧するWebページの書き換えは今まで Privoxy でやっていたのだが、たまに落ちてしまうことがあった。

先日の Debian 再インストールでいったん Privoxy が無い状態になったし、今回は Firefox 拡張機能 Greasemonkey でやることにした。

mixi の既読・既読の色分け

鷹の島で公開されている Mixi Organizer 7月19日版で。

自分の場合足あとの踏み返しも色分けしたいので、

 --- MixiOrganizer.user.js.original     2005-07-19 11:49:10.000000000 +0000
 +++ mixiorganizer.user.js      2005-10-01 13:31:54.000000000 +0000
 @@ -34,10 +34,14 @@
                 var val  = Anchor[i].firstChild.data
                 if(val.match(/\((\d+)\)(\n)*$/))
                    Anchor[i].href = href + '#' + RegExp.$1;
 +            } else if (href.match(/show_friend.pl\?id/)) {
 +              var text = Anchor[i].previousSibling.data;
 +              if (text.match(/(\d\d\d\d).*(\d\d).*(\d\d).*(\d\d):(\d\d)/)) {
 +                Anchor[i].href = href + '&date=' + RegExp.$1 + RegExp.$2 + RegExp.$3 + RegExp.$4 + RegExp.$5;
 +               }
              }
           }
        }
     }

  })();
 -

と書き換え処理を追加。

[ Naney と mixi ]

[ 10月1日全て ]

2005年10月15日 (土)

POEHTTP プロキシサーバ

Privoxy などのプロキシサーバを使うと閲覧するWebページの書き換えをすることができるのだが、凝ったことをするとなると無理がある。

以前から興味のあった POEHTTP プロキシサーバを作ってみることにしよう。 といってもまずは、サンプルを動かしてみるところから。

POE Cookbook の web proxy サンプルを動かしてみる。 なるほど短く書けていいな。

これに Web ページを書き換えるコードを挿入してあげれば、簡単に希望するプロキシサーバの出来上がり。 Greasemonkey も悪くないけれど、ローカルのデータとかを利用してページを書き換えたい時はこっちの方が楽であろう。 それに Perl だし。

[ 10月15日全て ]

About

Naney Naneymx

Naney (なにい) です。株式会社MIXIで SNS 事業の部長をしています。

※本サイトの内容は個人的見解であり所属組織とは関係ありません。

Process Time: 0.023725s / load averages: 0.44, 0.44, 0.44