タグ付けされた質問 「transparent-proxy」

1
CentOS 7で動作するIPv6でSquidとTPROXYを取得する
CentOS 7サーバーでTPROXYをSquidとIPv6で動作させるのに問題があります。以前はNATで一般的なインターセプトセットアップを使用していましたが、IPv4のみに制限されていました。TPROXYでIPv6を含むようにセットアップを拡張しています。 私はこのテーマに関する公式のSquid wiki記事を使用してすべてを構成しました: http://wiki.squid-cache.org/Features/Tproxy4 これまでのところ、TPROXY構成は問題なくIPv4で機能しているようです。ただし、IPv6では接続がタイムアウトになり、正しく機能しません。理解を深めるために、セットアップを分解します。 すべてのファイアウォールおよびルーティングルールはIPv4でまったく同じであることに注意してください。唯一の違いはinet6、ip6tables以下の例でIPv6ベースのルールを構成することです。 OSおよびカーネル:CentOS 7(3.10.0-229.14.1.el7.x86_64) yumによると、すべてのパッケージは最新です Squidバージョン:3.3.8(3.5.9も試しました) ファイアウォール:iptables / ip6tables 1.4.21 libcap-2.22-8.el7.x86_64 IPv6接続は現在、ハリケーンエレクトリックを介した6in4トンネルを介しており、これはDD-WRTルーターで構成され、割り当てられたプレフィックスがを介してクライアントに委任されますradvd。Squidボックスには、いくつかの静的IPv6アドレスが構成されています。 Squidボックスは、サービスを提供しているメインLAN内にあります。ポリシー80 http://wiki.squid-cache.org/ConfigExamples/Intercept/IptablesPolicyRoute http://www.dd-wrt.com/wiki/index.php/Squid_Transparent_Proxy ip6tables -t mangle -A PREROUTING -i "$CLIENTIFACE" -s "$PROXY_IPV6" -p tcp --dport 80 -j ACCEPT ip6tables -t mangle -A PREROUTING -i "$CLIENTIFACE" -p tcp --dport 80 -j MARK --set-mark $FWMARK …

4
透過SSLプロキシのセットアップ
ポート80を通過するトラフィックを検査するために、2枚のネットワークカードでセットアップされたLinuxボックスがあります。1枚のカードはインターネットへの送信に使用され、もう1枚はネットワークスイッチに接続されます。ポイントは、デバッグ目的でそのスイッチに接続されたデバイス上のすべてのHTTPおよびHTTPSトラフィックを検査できるようにすることです。 iptablesについて次のルールを作成しました。 nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.2.1:1337 -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 1337 -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE 192.168.2.1:1337に、Charles(http://www.charlesproxy.com/)を使用して記録する透過HTTPプロキシがあります。 ポート80ではすべて問題ありませんが、ポート1337を指すポート443(SSL)に同様のルールを追加すると、チャールズを通じて無効なメッセージに関するエラーが表示されます。 Charlesと同じコンピューターでSSLプロキシを使用したことがあります(http://www.charlesproxy.com/documentation/proxying/ssl-proxying/)が、何らかの理由で透過的に実行することに失敗しました。私がグーグルで調べたいくつかのリソースは不可能だと言っています-誰かが理由を説明できるなら、私はそれを答えとして受け入れます。 注として、サブネットに接続されたすべてのクライアントを含む、説明されたセットアップへのフルアクセスがあります。したがって、Charlesによる自己署名証明書を受け入れることができます。理論的には、透過的なプロキシが行うため、ソリューションはCharles固有である必要はありません。 ありがとう! 編集:少し遊んだ後、特定のホストで動作するようになりました。iptablesを次のように変更すると(およびリバースプロキシ用にcharlesで1338を開きます): nat -A PREROUTING -i eth1 …

3
TCPホストからのトラフィックを簡単に「編集」する方法(Linux)
接続を処理するプロセスがストリームを取得する前に、既知のtcp host:portからの着信トラフィックに小さな変更を加える必要があります。 たとえば、192.168.1.88をWebサーバーを実行するリモートホストとします。 ローカルホストのプロセスが192.168.1.88:80(例:ブラウザー)からデータを受信すると、データはまず次のようにに置き換えtext-Aられて変更されtext-Bます。 127.0.0.1:...は192.168.1.88:80に接続します 127.0.0.1:...は192.168.1.88:80に送信します。 GET / 192.168.1.88:80は127.0.0.1に送信します:...: HTTP/1.0 200 OK Content-Type: text/plain Some text-A, some other text そのデータはシステムによっていくらか傍受され、出力が次のようなプログラムに渡されます。 HTTP/1.0 200 OK Content-Type: text/plain Some text-B, some other text システムは、変更されたデータを、192.168.1.88:80からのように、127.0.0.1:...を処理するプロセスに渡します。 ストリームベースの方法でこの変更を行う(sedたとえば、使用する)と仮定すると、着信tcpストリームを前処理する最も簡単な方法は何ですか? これにはが含まれると思いますが、iptables私はあまり得意ではありません。 アプリケーションは元のホストを処理するように感じる必要があるため、プロキシの設定はおそらく解決策ではないことに注意してください。

6
Squid透過プロキシのクライアントをセットアップする方法
サーバーの詳細 Squid Transparent Proxy Version: 3.3.8 OS: Ubuntu Server 14.04 Server IP: 192.168.1.3 Squid設定ファイル (grepを使用したコメントを除く) root@ubuntu:~# grep -v '^$\|^\s*\#' /etc/squid3/squid.conf acl SSL_ports port 443 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports …

1
fireholとtinyproxyで透過的なhttpsプロキシを作成する方法?
Ubuntu 10.04.4で透過的なプロキシ設定を行っていますが、fireholとtinyproxyを使用してhttpで正常に機能しますが、httpsでは機能しません。 tinyproxyに直接接続すると、次のコマンドで問題なく完了します。 env http_proxy=localhost:8888 curl http://www.google.com env https_proxy=localhost:8888 curl https://www.google.com HTTP透過プロキシも正常に機能します。 curl http://www.google.com しかし、httpsを使用してGoogleに直接アクセスすると、コマンドがハングするだけです。 curl https://www.google.com 以下は、fireholとtinyproxyの完全な設定ファイルです。透過プロキシ以外には何もファイアホールを使用することに関心がないことに注意してください。 firehol.conf: transparent_proxy "80 443" 8888 proxy interface any world client all accept server all accept tinyproxy.conf(上流プロキシを除くすべてのデフォルト): User nobody Group nogroup Port 8888 Timeout 600 DefaultErrorFile "/usr/share/tinyproxy/default.html" StatFile "/usr/share/tinyproxy/stats.html" Logfile "/var/log/tinyproxy/tinyproxy.log" LogLevel Info …

2
Mac OS X Lion-ポート22のすべての接続を外部IPに転送します[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? サーバー障害のトピックになるように質問を更新します。 6年前休業。 任意のアドレスポート22へのすべての接続を別のゲートウェイに転送する必要があります(つまり、デフォルトなし)。まず、私はipfwでそれを行うと思います: sudo ipfw add 5 fwd $EXTERNAL_IP,22 tcp from any to any 22 keep-state しかし、Mac OS X Lionでは機能しないようです。とにかく、ipfwのドキュメントを見ると非推奨であり、pfctlを使用する必要があります。 だから私は/etc/pf.confファイルを変更しました: rdr proto tcp from $internal_ip to any port 22 -> $external_ip port 22 しかし運がありません。 ローカルアプリケーションによって生成されたすべての接続を、ポート22以外のアドレスに別のゲートウェイ/ IPアドレスに変換または転送する方法を知っている人はいますか? 更新 Jakeの提案に従って、宛先IPのみを指定しようとしたので、rdrルールをmac os x構文に変換しました。 rdr proto tcp from any to any …

4
透過的なSSLプロキシの神話と事実
SSLの透過プロキシ(Squidではない)をセットアップする方法について、私は何時間も探してきました。一般的な答えはできませんが、いくつかの方法があることはわかっています。私の目的は以下のみです: ブラックリスト/ホワイトリストドメイン名(IP番号ではない)。コンテンツはフィルタリングまたは変更されません。 これらのリストを使用してユーザーを強制します。Webブラウザーでこのような設定を変更すると、元に戻すことができます。 次のページでは、トラフィックを変更せずに通過させることができますが、方法はわかりません: iptables https透過プロキシとprivoxy? 次のページは、私が自分で機能させることができなかった443のiptablesルールを示しています。http://alien.slackbook.org/dokuwiki/doku.php?id = slackware: proxy 次のページでは、これをSquidでのみ機能させる方法を説明しています。http: //www.rahulpahade.com/content/squid-transparent-proxy-over-ssl-https 編集:ある人がここで言う: IPTABLESを使用してSquidの周りにHTTPS(443)パススルーを作成するにはどうすればよいですか? 「あなたにとって最善のことは、ポート443への直接アクセスをブロックし、HTTPSを使用したい場合は、プロキシを使用するようにブラウザを設定する必要があることをユーザーに伝えることです。」しかし、私は443を完全にブロックする方法を知っています。プロキシの下でそれを機能させるためではありません。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.