特定のドメインのWebトラフィック(SOCKSプロキシ)をリダイレクトする


10

理由により、私は仕事でYouTubeをブロックしました。

私は科学者です。私見たい会議や講演のほとんどがそこで利用できるので、YouTube が必要です。はい、実際には科学のためにYouTubeが必要です。

ここの学校のネットワーク管理者と話をしましたが、彼は扱いが難しく、理由を理解していません。彼は、インターネットが何らかの方法で固定チャネルとポートを通過し、YouTubeへのアクセスなどをブロックすることが実際に可能であると考えている種類の人です。

とにかく、幸いなことに私は専用サーバーをどこかに持っているので、次のようにそこでsshプロキシできます:

ssh -D 5000 -CN myself @ myserver

そして、Firefox(そうです、Firefox。Chromeは遅延していて、OS X設定に依存しているため[はい、私はOS Xを使用しています])を構成して、そのポートにSOCKS5プロキシを使用し、必要なインターネットをほぼすべて備えています。

ここのインターネットはかなりクールなので、レイテンシや帯域幅の問題はほとんどありません。

私の専用サーバーは帯域幅に対して私に請求し、大きなファイルをダウンロードするためにすべてをオフにしなければならないということです(科学のためにこれも必要です)。したがって、YouTubeビデオを表示するたびにこの機能のオンとオフを切り替えたくないので、どういうわけかFirefox(または私のコンピューター)にSOCKS5プロキシ経由でyoutube.comをルーティングするように伝えたいと思います。逆の方法で簡単に実行できる(つまり、これらのドメインに対応していない場合は、すべてのトラフィックをプロキシ経由で送信する)ことができますが、設計者が反対のケースをどのように考えなかったかはわかりません。

誰かがこれを達成する簡単な方法を知っていますか?

回答:


12

あなたは、作成することができますプロキシ自動 Firefox用(PAC)ファイルを、そして「自動プロキシ設定URL」(どちらかHTTPサーバー上、または使用することにより、オンラインでどこかにPACファイルを置くの下でそれを設定するfile:///path/to/file.pacスタイルのURLを)。

PACファイル自体は、使用するプロキシを決定する関数を定義するテキストファイル(JavaScript)です。

function FindProxyForURL(url, host)
{
  if (shExpMatch(url, "*.youtube.com/*")) {
    return "SOCKS localhost:5000";
  } else {
    return "DIRECT";
  }
}

これはニーズに合った簡単な例ですが、PACを使用すると、非常に複雑なプロキシスキームを定義できます(たとえば、時刻を考慮に入れたり、ローカルIPアドレスに応じていくつかのプロキシを設定したりするなど)。PACファイルに関する詳細情報は、インターネット(http://findproxyforurl.com/pac-functions/など)で簡単に見つけることができます。


sweeeeeeeeeeet!
almosnow 14

3

Firefoxについては知りませんが、Chromeでは拡張機能Proxy SwitchySharp(https://chrome.google.com/webstore/detail/proxy-switchysharp/dpplabbmogkhghncfbfdeeokoefdjegm、そのサイトの3番目の画面を見てください)を使用します。ルールを作成できます。

これにより、ドメインyoutube.comが構成済みのプロキシを使用し、他のすべてのサイトはプロキシを使用しないというルールを作成できます。


1

特定のドメインに対してのみプロキシを経由する場合は、拡張機能がパターンを介して選択できます。たとえば*youtube*、彼らが使用するドメインは他にもあります。FoxyProxyはそれを行いますhttps://addons.mozilla.org/en-us/firefox/addon/foxyproxy-standard/


「すべてをオフにする必要があります」-どういう意味ですか?」削除しました。これは、質問へのコメントとして投稿されるコメントです。答えの一部ではありません。
JakeGould 2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.