どれくらい影響があるかは、たくさんの物事に依存しています。ホストシステムの CPU や、設定の積極性、どのアクションが実行されようとしているか、ページのサイズ、接続の帯域といった事です。
全体的には、現実的な範囲では遅くならないはずですし、広告やバナーといったジャンクが取得されず表示もされなくなる為、現実的にはスピードアップするかもしれません。各ページ毎に Privoxy 自身が必要な実際の実行時間は、全体的な枠組みの中では比較的小さく非常に高速です。これは、(もしも広告ブロックを使用しているならば)広告画像や他のジャンクをダウンロードせず表示しないことによる相殺分よりも典型的には大きいです。
フィルタや deanimate-gifs アクションによる内容の「フィルタ」は、知覚可能な速度低下をもたらすかも知れません。なぜなら表示される前にドキュメント全体がバッファリングされる必要があるからです。非常に大きなドキュメントについては、フィルタは大きな影響を与えるかも知れません。どれくらいかは、ページのサイズ、フィルタの実際の定義等に依存します。後述の項を参照ください。他のほとんどのアクションは、ほとんどあるいはまったく速度に影響を与えません。
また、フィルタが有効だが zlib サポートが有効でない場合、圧縮は大抵無効化されます(prevent-compression 参照)。これは同様に速度に影響を与え 得りますが、恐らくあなたが考えているよりも小さいでしょう。もう一度いいますが、ページサイズ等がどの程度影響があるかを決定します。
banners-by-size, webbugs のようなフィルタアクションや、deanimate-gifs アクションを使っているならば、フィルタ機構を動作させる為にドキュメント全体をメモリにロードしなければならず、この間ブラウザには何も送られません。
典型的な場合、実際にはロードに要する時間はほとんど変わっていませんが、感覚は異なります。ほとんどのブラウザはユーザーに対して動作しているという感覚を与える為、内容が完全になる前に描画を開始できるためです。より低速なダイアルアップ接続の場合、この効果はより顕著となります。非常に大きなドキュメントの場合、実行するべきフィルタが存在する事でページのロード時間に影響を与える事があるかも知れません。しかし、全体的にはその差は非常に小さいはずです。非常に大きな影響があるならば、恐らく(アンチウィルスソフトのような)別の状況が関係しています。
フィルタは不適当な MIME タイプに対しては自動的に無効化されます。しかし、Web サーバが誤った MIME タイプを返してきた場合、フィルタするべきでない内容もフィルタしうるという点に注意してください。Privoxy は、サーバによって返される MIME タイプか、フィルタを有効/無効にする設定かのいずれかによってのみフィルタ可能な内容かどうかを区別しています。
http://config.privoxy.org/ は Privoxy の組み込みユーザーインタフェースのアドレスで、http://p.p/ はそのショートカットです。
Privoxy は Web ブラウザとインターネットの間に位置しているので、これらのアドレスに対するリクエストを単純に横取りして、組み込みの「Web サーバ」によって応答できます。
ブラウザ設定の良いテストにもなります。http://config.privoxy.org/ という URL を入力して"This is Privoxy ..." という表示があるページに到達すれば全てはうまくいっています。代わりに "Privoxy is not working" という表示があるページの場合、ブラウザはそのリクエストに対して Privoxy を使用しておらず config.privoxy.org にある実際の Web サイトにアクセスしています。
開発者とやりとりする為の種々の方法については連絡の章を参照ください。
そのような報告が default.action 設定ファイルに最終的に含まれるかどうかは、その問題の重要度に依存します。もちろん、Google や Yahoo といった重要で知名度の高いサイトに対しては、いかなる潜在的な問題も対処したいです。世界的、あるいは地域的な影響があるサイトも候補となる可能性は高いでしょう。地域的なクラブや学校のような小さく知名度が低いサイトはその対極にあります。影響範囲は非常に小さい為、ユーザーの user.action で対処される事が最良であり、default.action に含まれる見込みはないでしょう。
その要求が読まれて考慮されたのは確実ですので安心してください。なぜ答えがないのかについては、様々な理由があり得ます。誰にも良い回答がない、調査する為の時間がない、既に何度も回答されている、あなたをサポートするのに十分な情報が提供されていない等々です。あなたの労力は無駄になっておらず、我々はそれを認識しています。
ブラウザと Privoxy の両方をローカルで実行しているならば、Privoxy によってあるいは究極的にはいかなるソフトウェア単独でも IP アドレスを隠す事は出来ません。サーバはどこに応答を返すべきかを知る為に、あなたの IP アドレスを知る必要があります。
あなたと Web サーバの間にさらなるレベルの仲介層を提供する、誰でも利用可能な「匿名」プロキシがたくさんあります。
しかしこれらのプロキシは認証が必要ではない事から「匿名」と呼ばれているのであって、何らかの実際の匿名性を提供するからそう呼ばれている訳でありません。それらのほとんどはあなたの IP アドレスをログにとっており、それらが動作している国の法律をあなたが犯した場合には官憲に提供できるようにしているでしょう。実際、それらの中には、プライバシーに対する平均的な好みを超えた(疑わしい)人々の情報を「収集」するためだけに存在しているものもあるということを無視する事は出来ません。
ほとんどの敵対者からあなたの IP アドレスを隠したいならば、Privoxy と Tor の連鎖を考慮するべきです。設定の詳細は、後述の「Tor と一緒に動作させるにはどうしたらいいですか?」の章にあります。
いいえ。匿名を維持できる可能性は上がるでしょう。しかし Tor あるいは類似のプロキシと Privoxy を連鎖させ、システムの残りを設定する際にも自分が何をしているか把握していない限り、Web 上ですることは全てあなたと紐づける事ができると仮定すべきです。
Privoxy はあなたに関する様々な情報を削除できますし、どのサイトが信頼できるか、どのような詳細情報を明らかにするかを決定する自由をもたらします。しかし、あなたの IP アドレスを隠す訳でも、システムの残りが正しく動作する事を保証出来る訳でもありません。仮に、Tor と厳格な設定の Privoxy とを連鎖させて使っていたとしても、Web サイトがあなたが誰であるかを見つけることができるいくつかの可能姓があります。
Privoxy のプライバシー強化機能のほとんどは、安全でないブラウザ設定によって簡単に打ち破られます。そのため、信頼できるサイトからのコードのみ実行するよう設定できるブラウザを使い、どのサイトを信頼するか気をつけるべきです。例えば、Web サイトが JavaScript や ActiveX、Flash や Java 等を用いて望む情報全てを取得できる場合に、Privoxy に User-Agent ヘッダを変更させても得る所はありません。
ファイルを FTP で転送するというような一定の状況下で、ユーザーの email アドレスを公開してしまうブラウザもあります。Privoxy は FTP をフィルタしません。この機能が必要か、あるいは email アドレスを公開するようなブラウザの mail の取り扱いについて心配ならば、NSClean のような製品を考慮すると良いかもしれません。
バイナリのみが利用可能なブラウザは、非標準のヘッダを用いてブラウザがアクセス可能な任意の情報を提供することが可能です。製造者のライセンス協定を参照してください。発生するかも知れないプライバシーの侵害全てを予期し避ける事は不可能です。その挙動を予測する事が簡単になるので、プロフェッショナルなパラノイアはソースコードが利用可能なブラウザを好みます。ソースを信じるんだ、ルーク!(訳註:スターウォーズの台詞のもじり)
そりゃ良かった!実際には、恐らく別の種類のプロキシをテストしています。あなた自身を完全に隠すためには更なる手順が必要でしょう。
Tor を使うように Privoxy を設定する前に、ユーザーマニュアルの 2 章「インストール」と5章「起動」の手順に従って Privoxy 自身を正しく確実に設定してください。
Tor のインストール方法について Tor の広範なドキュメントを参照して、Tor のログファイルに "Tor has successfully opened a circuit" と "it looks like client functinality is working" という出力が出ることを確認してください。
Tor か Privoxy のいずれかが動作していないなら、その組み合わせもまずもって動作しないでしょう。それぞれでテストすることは、問題報告を正しい相手にするためにも役立つでしょう。Privoxy が動作していないなら、Tor の開発者に迷惑をかけないでください。Tor が動作していないなら、Privoxy チームにバグレポートを送らないでください。
Privoxy と Tor が動作している事を確認できたら、それがそれらを繋ぐ時です。Privoxy 側からすれば、Tor は単に socks4 あるいは socks4a で到達可能なもう一つ別のプロキシに過ぎません。まずもって Tor に興味を持っている理由は匿名性を向上する為でしょうから、確実に DNS リクエストが Tor を通して実行されローカルネットワークに見えないようにするために socks4a を使うべきでしょう。
Privoxy 3.0.5 以降、メイン設定ファイルには Tor 用の準備がしてあります。Tor の初期設定を使用しており Privoxy と同じシステムで動作させている場合には、する必要があるのは forwarding (転送)の節を編集し以下をコメントか復帰することだけです。
# forward-socks5 / 127.0.0.1:9050 .
インターネットに到達する為にはこれで十分ですが、ローカルネットワークは依然として Privoxy を経由して到達可能とする為に、追加で以下の転送ルールもコメントから復帰した方がいいかもしれません。
# forward 192.168.*.*/ . # forward 10.*.*.*/ . # forward 127.*.*.*/ .
これらのアドレス範囲に存在するシステムに対する暗号化されない接続は、ローカルネットワークに対するものと同様の安全(あるいは危険)度になりますが、代替案はそれらのネットワークに対して全く接続できないというものになります。しかしまた、それが本当に望まれているのかもしれませんが、ブラウザがローカルネットワークに到達可能である必要があるかどうか分からない場合には、それらを許可する理由はありません。
ブラウザでローカルネットワークに存在するサーバに対して名前で到達可能にしたい場合には、さらに以下のような例外を追加する必要があるでしょう。
# forward localhost/ .
変更した設定ファイルを保存し、http://config.privoxy.org/show-status/ をブラウザで開いて、Privoxy が設定をリロードした事と、あなたが必要性を認識しているものを除いて、他の forward 行が存在しない事を確認してください。全てが良さそうであれば、Tor の FAQ 4.2 項を参照し実際に Tor を使用していることを確認する方法を学んでください。
それから、Tor のドキュメントの残りに対して最低でもざっと目を通す時間を取ってください。Tor が何をするのか、なぜアプリケーションレベルのセキュリティでは置き換えられないのか、なぜ暗号化されないログインに対しては恐らく使用したくないと考えられるのか、確実に理解してください。
確実に。何をどのように表示するのかを動的に決める為に、ブラウザの種類や、バージョン、HTTP ヘッダの内容等を使うことは一般的なことです。あなたが見るものと私がみるものは全く違っているかも知れません。これらを実現できる方法は非常にたくさんあるため、確実で高速なルールを作る事は困難です。
"User-Agent" がブラウザを識別するために使われ、それに従って内容が調整されることがあります。
また、ブラウザによって英語ではない文字をエンコードする方法が異なる為、User Agent ヘッダに従ってその場でページを変換する Web サーバもあります。誤った OS や製造者の "User Agent" を提供することは、それらの言語で書かれたサイトで文字化けを発生させる場合があります。東欧のサイトへいく場合にはより近いものに変更するべきです(原文:Surfers to Eastern European sites should change it to something closer.)。"Referer" ヘッダを見る事によって動作するアクセスカウンタもあります。利用不可能な場合は失敗するか壊れます。別の例として、"Referer" かクッキーが提供されない時に Intellicast の天気地図がサーバによってブロックされる事が挙げられます。(両方のヘッダを有意な情報を与える事無しに無理矢理作り出す(forge)ことが出来ます)Web サーバーを騙そうとする時におかしくなりうる場合が他にもたくさんあります。その結果、ページが誤ってロードされたり、部分的にあるいは全くロードされなかったりします。そして、なにがおかしくなったのか、どうしておかしくなったのかを示す明白なヒントがないかもしれません。「fast-redirect かそれ以外をオフにしろ!」と言ったメッセージは表示されません。
同様のことは JavaScript の変更や(程度は少ないですが) HTML 要素の変更にも当てはまります。
あるサイトに問題があるなら、それに応じて設定を調整する必要があるでしょう。クッキーが恐らく最も調整が必要そうなものですが、決してそれだけではありません。
いいえ、その機能はありません。Squid か Polipo のようなものが必要です。質問される前に言っておくと、Privoxy は Squid のような他の種類のプロキシと共存できます。詳細はユーザーマニュアルの転送の章を参照ください。
あなたの意図する方法、あるいはいくつかのファイアウォールベンダができると宣言している方法ではできません。Privoxy はあなたのプライバシーを守る助けは出来ますが、侵入の試みからあなたのシステムを守る事は出来ません。もちろん、両方を使う事は完全に可能です。
バナーや広告を、割り当てられていた場所を開放する形で削除する事は技術的には可能です。Privoxy のフィルタでブロックし、HTML ページソースから画像への参照を完全に削除する事によって簡単に可能です。
しかし、相当に CPU リソースを消費するでしょう(言い換えれば遅くなるでしょう)し、ある場所をバナーが使用することを当てにしている Web ページではレイアウトが壊れる可能姓があるでしょう。例えば HTML テーブルによって表示する場所が予約されている場合などでは失敗するかも知れません。何の痕跡も残さず広告やバナーを消す事はトラブルシューティングを難しくし、遅かれ早かれ問題になるでしょう。
より良い代替案は、現状のように、代わりに場所はそのまま残し結果のバナー自身に対するリクエストをブロックすることです。この結果、空白の空間か馴染み深い市松模様が残ります。
以上の理由から初期設定ではサポートしていませんが、もちろん自分自身で適当なルールを定義する事で実現する事はできます。
HTTPS 接続は、ブラウザと安全(secure)なサイトの間の暗号化された SSL セッションであり信頼できるレベルで安全(secure)であるため、Privoxy にできることは少なく生では理解不能なデータを端から端へ流す事だけです。
唯一の例外はホストパターンによるブロックです。なぜなら、Privoxy が接続を確立できるようにクライアントは Privoxy にリモートサーバの名前を伝える必要があります。名前がホストのみパターンにマッチした場合、接続はブロックされるでしょう。
広告ブロックを考慮する限り、これは思うより大した制限ではありません。広告のソースは大抵ホスト名によって識別可能ですし、また、大抵暗号化されたページにあるバナーであっても効率の点から暗号化されずに送信されるからです。Privoxy の広告ブロックの力全てをふるえる状態下にあることになります。
SSLトランザクション中の「コンテントクッキー」(HTML や JS ページ内容に埋め込まれているもの。filter{content-cookies}を参照)はこれらの条件下ではブロックできません。幸運にもほとんどのクッキーは伝統的な方法でやってくるため、これはあまり一般的なシナリオとは言えないと思われます。
Unix 風システム上で、Privoxy は非特権ユーザーとして動作できます。そしてこれは我々が推奨する方法です。また、初期設定では Privoxy は "localhost" からのリクエストのみ listen します。
この設定では、Privoxy のサーバーとしての側面はインターネットに直接露出されません。Privoxy を LAN プロキシとして動作させたい場合は、LAN からの要求までは許可する必要があるでしょう。この場合、LAN のゲートウェイアドレス(例えば 192.168.1.1)のみを Privoxy のメイン設定ファイルに指定しアクセス制御とセキュリティオプションの全てを確認する事を推奨します。LAN 上の全てのホストはブラウザのプロキシ設定中でプロキシのアドレスとしてこのアドレスを使用できますが、Privoxy はいかなる外部インタフェース上でも listen しません。さらに ACL(訳註:アクセス制御リスト)も定義できます。また、ファイアウォールの使用も常にいい事だと言えます。転ばぬ先の杖、です。
Privoxy には透過的プロキシモードがありませんが、ブロックとコンテントフィルタをオフに切り替える事が出来ます。
最も簡単な方法はブラウザでリモート切り替え用 URL http://config.privoxy.org/toggle に移動する事です。
この機能へアクセスする簡単な方法は、ユーザーマニュアルのブックマークレット(bookmarklet)の節を参照ください。メイン設定ファイルで有効にする必要がある機能である点に注意してください。
いいえ、選択可能なフィルタとアクションが全て無効化されているという意味です。Privoxy は依然としてプロキシとして動作していますが、Privoxy が通常実行すると期待されることよりも少ない事しかしていません。依然として、ブラウザと Web サイトとのやりとりの間の「中間者」として存在します。プロキシのバイパスの項を参照ください。
プロキシのバイパスや、特定の基準に基づいたプロキシ設定は、純粋にブラウザの設定の問題で Privoxy の問題ではありません。現代的なブラウザは通常、特定のサイトに対してプロキシを使用しない設定を持っています。ブラウザのヘルプファイルを確認してください。
"crunch" は単純に Privoxy が何かを横取りしたという意味でそれ以上のものではありません。大抵の場合実際に広告やバナーですが、Privoxy は同じメカニズムを独自の内部ページへの要求を捕捉する為にも使います。例えば、http://config.privoxy.org/ にある Privoxy の設定ページへの要求も横取りされ(つまりインターネットへは出て行きません)、見知った CGI 設定ページがブラウザへ返されます。そしてその結果ログには "crunch" と表示されるでしょう。
バージョン 3.0.7 以降、Privoxy は crunch の理由もログ出力します。古いバージョンを使っている場合はアップグレードした方がいいでしょう。
Web サーバの視点からは文書(ページ)を見る事とファイルをダウンロードする事に違いはありません。Privoxy にとっても同じ事が当てはまります。ブロックパターンに合致すれば、依然としてブロックされますし、もちろんこれは見て分かります。
フィルタは、結果がいつでもそう明確とは言えないし、単純にファイルを見る場合でもダウンロードする場合でもまたフィルタの影響は存在する為、よりたくさんの潜在的な懸念があります。内容が何らかの嫌な広告であるか、あるいは、ジミーの最新にして最高の珠玉のソースコードだったとしてもです。もちろん片方は恐らくは欲しくない「悪い」内容で、他方は欲しい「良い」内容です。Privoxy はその違いが分かりませんし、与えられた設定パラメータによってのみ「良いか悪いか」を区別する事が出来ます。
Privoxy は Web サーバによって報告される "Content Type" によってファイルの違いを知っています。正確に報告されるならば(例えば zip 書庫に対して "application/zip" のように)、Privoxy は無視することが適当な場合を知る事が出来ます。Privoxy は潜在的にプレーンテキスト文書と同様 HTML をフィルタすることができます。もちろん設定パラメータに従って。また、未知の型を持つ文書は(一般的に "text/plain" だと仮定されます)フィルタされる可能性があり、Web サーバによって誤って報告される場合も同様です。そのようなファイルがディスクに保存することを意図してダウンロードされたファイルであった場合、こうした(恐らくはまれな)状況ではフィルタによって変更されたかもれしれない内容が保存されるでしょう。
3.0.2 よりも後のバージョンでは "text/plain" として報告された文書タイプはフィルタ「されない」点に注意してください。これより前のバージョンでは Privoxy はこの文書タイプをフィルタしていました。
手短に言えば、フィルタは a) Web サーバによって報告された content type が適当であった場合、かつ、b) 設定がそれを認めている場合(あるいは少なくとも禁じていない場合)に「有効」になります。これで終わりです。これは「良い」、これは「悪い」と言ってくれる魔法のクッキーはどこにもありません。それが起こるかどうかを決めるのは設定です(原文:It's the configuration that lets it all happen or not)。
テキストファイルをダウンロードした場合、恐らくそれらのファイルはフィルタされたくないでしょう。特に内容がソースコードや他の重要な内容であった場合には。ソースコードは(例えばポップアップウィンドウが開くような種類の) Javascript と間違えられる場合があるかも知れません。(特に内容がプレーンテキストファイルでバージョン 3.0.2 以前を使っている場合)ダウンロードサイトに対しては user.action ファイルでフィルタを無効にする事を推奨します。そしてまた、内容に対していかなる変更も与えたくないサイトやページに対してもです。
Privoxy は FTP には何もせず、HTTP と HTTPS(SSL) プロトコルのみフィルタします。
上の項目を読んでください。
一般的な広告を打ち破る実績のある方法として、ローカルの HOSTS ファイル内で広告生成者に対して偽の IP アドレス(典型的には 127.0.0.1 いわゆる localhost)を与える事によってローカル DNS システムを騙す方法が有ります。これは広告を効果的にブロックします。
この方法を Privoxy と同時に使うべき理由はありません。Privoxy は本質的には同じ事を、よりずっと洗練されよりずっと自由度のある形でします。実際には、大きな HOSTS ファイルは労力の重複であるだけでなく、妨げになったり深刻な速度低下をシステムに引き起こしたりするかもしれません。HOSTS ファイルからそのような項目を削除する事を推奨します。ホストリストが Privoxy の設定によって無視されていると考えるならば、リストを user.action ファイルに追加する事を考慮してください。
{ +block } www.ad.example1.com ad.example2.com ads.galore.example.com etc.example.com
Privoxy ユーザーに対する参考文献や興味深いであろうサイト:
http://www.privoxy.org/ Privoxy ホームページ
http://www.privoxy.org/faq/ Privoxy FAQ
http://www.privoxy.org/developer-manual/ Privoxy 開発者マニュアル
https://sourceforge.net/projects/ijbswa/ SourceForge 上の Privoxy プロジェクトページ
http://config.privoxy.org/ Web ベースのユーザーインタフェースPrivoxy が動作している必要があります。ショートカット: http://p.p/
https://sourceforge.net/tracker/?group_id=11118&atid=460288 開発者に要望や他の設定に関する提案をするには
http://www.junkbusters.com/ht/en/cookies.html Web ユーザーを追跡する為にクッキーがどのように使われるかの説明
http://www.junkbusters.com/ijb.html オリジナルの Internet Junkbuster
http://www.squid-cache.org/ しばしば Privoxy と一緒に使用される普及したキャッシュプロキシ
http://www.pps.jussieu.fr/~jch/software/polipo/ Polipo はパイプライン、多重化、部分的キャッシュのような先進的な機能を持ったキャッシュプロキシです。多くの設定で Squid の代わりとして使用できるでしょう。
https://www.torproject.org/ Tor は匿名化された Web ブラウズ、Web 発行、インスタントメッセージング、IRC、SSH、その他アプリケーションに役立ちます。
していません。あなたが見ているテキストの置き換えは初期設定では無効化されています。「破壊的なブラウズのおふざけ用テキスト置き換え(原文:Text replacements for subversive browsing fun)」と明確にラベル付けされた「おふざけ」フィルタを手動で有効化したか、より古い Privoxy のバージョンを使い Web ベースの設定エディタで "Advanced(高度)" な雛形を選ぶ事によって暗黙の内に有効化したか、です。アップグレードしてください。
Privoxy は独自の「テンプレート」と、存在する場合にはいつでも Privoxy のフィルタを通じてテキスト置き換えを行って HTML を生成します。いつでも HTML 4.01 仕様に準拠すべきですが、HTML 4.01 あるいは他のいずれの仕様に対しても妥当性検証されていません。
していません。Privoxy をダウンロード可能にしていますが、隠れて他の人々のシステムにインストールしてまわるようなことはありません。Privoxy があなたのシステムで動作している事を発見し自分自身でインストールしていないことが確実ならば、他の誰かがインストールしたのでしょう。実際の Privoxy を実行していないかもしれず、Privoxy だと偽装しているだけの他の何かかも知れませんし、実際の Privoxy を元にしているが変更された何かかもしれません。
最近、ネットブックにプリインストールされているある種の Privoxy のバージョンによる問題の報告があります。報告されている問題の中には、公式バージョンの Privoxy の動作と不整合なものがあります。これはプリインストールされたソフトウェアが私達が知らず従ってデバッグもできないベンダによる修正を含んでいるかも知れない事を示唆します。
Privoxy のライセンスはベンダによる変更を認めていますが、ベンダは変更内容をユーザーに通知し Privoxy 自身と同じライセンス下で変更を利用可能にしなければならないということを含むライセンスに従う必要があります。
変更されたバージョンの Privoxy による問題がある場合には、私達に問題を報告する前に変更を行った誰かに話してみてください。また、変更を行った誰かに私達と話すよう説得してみてください。ライセンスに従わず誰かが変更したバージョン Privoxy を提供したと考える場合には私達に教えてください。