私のコンピュータで行われたすべてのhttpリクエストのユーザーエージェントを変更するためにSquidブロックプロキシをどのように使用しますか?

私のコンピュータで行われたすべてのhttpリクエストのユーザーエージェントを変更するためにSquidブロックプロキシをどのように使用しますか?

ユーザーエージェントを変更したい。みんなこのシステムで行われた HTTP 要求です。各ブラウザでユーザーエージェントを変更するのは簡単ですが、他のアプリケーションもhttpリクエストを行います。すべてをキャッチすることが重要です。特に、ユーザーエージェントを変更するオプションがないアプリケーション(Steam)が1つあります。

したがって、私のコンピュータで行われたすべてのhttp要求に対してユーザーエージェントを変更するためにブロックプロキシを実行したいと思います。

私はこれを書いたsquid.conf

# Squid normally listens to port 3128
http_port 3128
http_port 3127 intercept

# i don't care for caching. -Matt
cache deny all

request_header_access User-Agent deny ALL

ブラウザでこれを指すと機能します。しかし、Squidに自分のコンピュータからのすべてのhttpリクエストを傍受させるにはどうすればよいですか?私はそれが物を捕らえるようにする方法を理解していません。 iptables?ファイアウォール?

答え1

nginxを透明プロキシとしてインストールします。以下は、ユーザーエージェントを変更する方法を示すサンプル構成セクションです。

http {
    server {
        location / {
            proxy_pass              http://$host$request_uri;
            proxy_set_header        "User-Agent" "custom agent";
            proxy_connect_timeout   60;
            proxy_send_timeout      60;
            proxy_read_timeout      60;
        }
    }
}

文書を確認してくださいプロキシ設定ヘッダもっと学ぶ。

答え2

リクエストヘッダーを動的に書き換えるには、透過プロキシを設定します。

答え3

squid3用の透明プロキシの作成..

http_port 3127  transparent

80からポート3127へのトラフィックを強制します。

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to-destination Server.ip.Address : 3127

このルートがポート80を閉じたりブロックしたりするようにするには、
LANネットワーク上のすべてのトラフィックがポート80にアクセスすることはできません。

iptables -A INPUT -i eth0 -p tcp --dport 80 -j DROP

答え4

」を行うには代理人が必要です。透明「またはより正確には、「傍受」モードです。遮断は、さまざまなツール(通常はファイアウォール)を使用してさまざまなOSIレベルで行われます。上記のリンクはかなり多くの詳細を共有するので、躊躇しないでください。

関連情報