web-dev-qa-db-ja.com

特定の文字列のIP範囲をブロックするIptablesルール(時々機能します)

2週間の検索と読み取りの後、YouTubeを(文字列として)オフィスネットワークのIP範囲にブロックするこのiptableルールに行き着きました。

_iptables -A FORWARD -t filter -m iprange --src-range 10.217.76.60-10.217.76.70 -m string --algo bm --string "youtube.com" -j DROP #block
_

ご覧のとおり、.60から.70(10台のマシン)のコンピューターはYouTubeを閲覧できませんが、 .75缶。このルールは、数分間および一部のクライアントに対してのみ機能します。 2〜3分後、一部のクライアントは通常どおりYouTubeを閲覧できます。それらのクライアントのブラウザを閉じ、iptablesルールをフラッシュして再実行すると、すべてのクライアントがYouTubeに接続できなくなりますが、これは2〜3分間続き、一部のクライアントでは(ip-rangeクライアントについて話します) 。

誰かがこの行動に再び会ったことがありますか?!それは私が使用しているサーバー(ubuntu 11.04)、キャッシュ、または何か他のものと関係がありますか?

また、youtubeとfacebookのhttpをブロックする場所にsquid3をインストールしているので、iptablesを設定するとhttpsのyoutubeをカットできると思いました。 (しかし、一部のクライアントは実際に動作するためにYouTubeを必要としているので、曲のリスニングと無駄なネットワークトラフィックを遮断したいと思います)。

EDIT:久しぶりに:iptables -I FORWARD -t filter -s 10.217.76.80/28 -m string --algo bm --string "youtube.com" -j DROP #from .80 to .95 (15 ip)を試して、より良い解決策を得ました...しばらくの間。しばらくすると、一部のクライアントは再びブラウジングを開始しましたが(ルールは機能しませんでした)、他のクライアントはまだ機能しませんでした(ルールは機能しました)。私は(MADHatterが言ったように)多くのサーバーを備えたYoutubeのものであることを理解していますが、私が理解していないのは、このようなルールを使用すると、_iptables -I FORWARD -m string --algo bm --string "youtube.com" -j REJECT_すべてのクライアントのすべてのトラフィックが一部だけでなく永遠に拒否されることです時間、私が欲しかったのは、ユーザーのIP範囲(たとえば.10から.240)に上記のルールを使用し、他のすべてのユーザーがYouTubeを自由に閲覧できるようにすることだけです。そのためのルールがあると思いますか?私が試した他のすべてのものは、ランダムな期間だけ機能しました。

2
ASK

あなたは「私はhttpsのためにユーチューブを切ることができた」と言います。これは機能しません。 HTTPS接続のURLは、暗号の隠蔽の下で交換されます。ファイアウォールはデータストリーム内にある可能性がありますが、その時点までにそのジョブは暗号化されたパケットを1つのインターフェイスから別のインターフェイスに転送することに限定されるため、この会話は表示されません。

はい、クライアントが http://youtube.com にアクセスしようとする可能性があり、その特定のhttp接続を非同期化できます。しかし、そのURLは、それらをhttps://サイトに直接リダイレクトするようになりました。遅かれ早かれ、クライアントはSSL経由でYouTubeにアクセスできることに気づき、あなたは彼らが何をしているかを見ることができなくなります。

アクセスできるURLをモデレートする従来の正しい方法は、必須のWebプロキシですが、HTTPSコンテンツの場合、まだ問題があります。すべてを中間者攻撃することができますが、各HTTPS要求を再暗号化して再署名するプロキシがない限り(そして各クライアントがプロキシのCA証明書をインストールして信頼している場合)、これは非常に結果になります。 anyHTTPSコンテンツのユーザーにとって不十分なブラウジングエクスペリエンス。

tl; dr:youtubeは、サイトへのHTTPS接続を義務付けることを決定したため、高度なプロキシを使用しません(iptablesルールはうなずきます) not)ユーザーがそこに行くのを止めることはできません。

2
MadHatter