SquidはHTTPSを介してページをブロックしません。

SquidはHTTPSを介してページをブロックしません。

私は私のシステム(つまりネットワークではなく)でページをブロックするようにSquidを設定し、SSLがページブロックで動作するようにします。これを行うには、SSL-bumpを設定し、ブラウザに証明書をインストールしました。

(HTTPSとHTTPで)ブロックしたいのですが(HTTPとHTTPSで)サブURLのみを許可したい*.reddit.com/*と思います。*.reddit.com/r/LearnJapanese

これは私のsquid.confファイルの一部です。

acl bad_domain url_regex "/usr/local/squid/etc/block.acl"
acl good_domain url_regex "/usr/local/squid/etc/allow.acl"

http_access deny bad_domain !good_domain
http_access allow good_domain

http_access allow localnet
http_access allow localhost

http_access deny all

# Squid normally listens to port 3128
http_port 3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=10MB cert=/usr/local/squid/etc/squid.pem

ssl_bump allow all

sslproxy_cert_error allow all
sslproxy_flags DONT_VERIFY_PEER

block.aclの内容:

^http(s)?://(.+)?reddit\.com(.+)?$

allowed.aclの内容:

^http(s)?://(.+)?reddit\.com/r/LearnJapanese(.+)?$

HTTPではうまく機能しますが(例:reddit.com/r/LearnJapanにはアクセスできますが、Redditの残りの部分にはアクセスできません)、HTTPSでは同じ幸運を享受できませんでした。

HTTPS経由でRedditにアクセスすると、ページはまったくブロックされませんが、ブロックする必要があります(もちろんreddit.com/r/LearnJapanを除く)。

以下を除くすべてのRedditへのアクセスをブロックするにはどうすればよいですか?.reddit.com/r/Learn日本语/)HTTPとHTTPSを介して?ありがとうございます。

ベストアンサー1

SSLはエンドツーエンドで暗号化されているため、Squidなどのプロキシは通常HTTPよりもHTTPS要求についてははるかに少ないことを知っています(http://wiki.squid-cache.org/Features/HTTPS#CONNECT_tunnel):

リクエストURLの[多く]共通部分がCONNECTリクエストにありません。

  • URLスキームまたはプロトコル(例:http://、https://、ftp://、voip://、itunes://またはtelnet://)
  • URLパス(例:/index.htmlまたは/secure/images/)、
  • とクエリ文字列(例:?a = b&c = d)

HTTPS要求の詳細については、Squidはクライアントに対して本質的に中間者攻撃を実行する必要があります。イカ文書これを行う方法について説明していますが、これによりプライバシーに関するいくつかの問題が発生することに注意してください。ユーザーは通常、暗号化された情報であなたを信頼する必要があり、Webブラウザは攻撃に対して警告することがあります。

おすすめ記事