Squidプロキシがホストヘッダーを上書きします。どうすればよいですか?


8

イカに次の問題があります。

一部のクライアントは、Squidプロキシ経由で62台のサーバーに同時にアクセスします。すべてのサーバーのホスト名は同じ(www.example.com)ですが、パブリックIPは異なります(123.123.123.2から123.123.123.63)。サーバーの所有者は、一種のDNSラウンドロビンを使用します。

私はSquidサーバーとクライアントにしかアクセスできません。サーバーへの接続は、プロキシIP経由でのみ許可されます。

プロキシなしで、http // 123.123.123.5 / dataformeからデータをロードするリクエストを送信するだけですが、ホストヘッダー「www.example.com」を送信します。それはあるべきように動作します。

しかし、今では非キャッシングプロキシとしてsquidを使用することはできなくなりました。Squidは送信されたリクエストのホストヘッダーをオーバーライドします。これを行うと、ホストヘッダーが正しく送信されないため、送信先サーバーは配信するデータがわかりません。

設定しました

url_rewrite_host_header off

ただし、これによる影響はありません。このオプションは、リダイレクタとしてsquidを使用する場合にのみ使用されるようです。それは私がすることではありません。

他に取得するサイトがない場合は、次のように機能します。

header_access Host deny all
header_replace Host www.example.com

しかし、これを行うと、すべてのリクエストがwww.example.comホストヘッダーを取得します。その後、他のサイトにアクセスできなくなります。

私に何ができる?

よろしくお願いします!


書き換えられるホストヘッダーは何ですか?
Andrew B

ホストヘッダーはIPアドレス(この例では123.123.123.5)に書き換えられます。
Chris

それが実際にSquidがヘッダーを書き換えるが「一種のDNSラウンドロビン」ではないかどうかを確認しましたか?tcpdump役立つ可能性があります...
kay27

回答:


0

標準のSquidインストールは、いくつかの不完全なディレクティブがない限り、そうしません。標準バージョンを使用している場合は、構成を最初からやり直してください。カスタムコンパイルの場合は、コードとコンパイルオプションを確認する必要があります。


1
wathコンパイラーオプションを有効にするように指定してください
フェデリコガリ

主にヘッダーの書き換えオプション。ところで、デフォルトの推奨オプションまたは標準バイナリを使用することを強くお勧めします。何をコンパイルしているかわからない場合、Squidを使用すると混乱したり不安定になったりすることがあります。
MTG 2018

0

これらの行をイカの構成に追加します。それが役立つかどうか見てみましょう。

request_header_access Referer deny all
request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all
forwarded_for off
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.