質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

proxy

proxy(プロキシー)は、企業などの内部コンピュータとインターネットの中間に位置し、例えば直接インターネットに接続できない内部コンピュータの代理としてインターネットに接続する等をするシステム、もしくは代理として機能を実行するソフトウェアです。内部ネットワークへのアクセスを一元管理し、内部からの特定の種類の接続以外を遮断すること、外部からの不正アクセスを拒否することなどに用いられます。

Q&A

解決済

1回答

10604閲覧

WebブラウザからのHTTPS通信とプロキシの関係について

omusi

総合スコア24

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

proxy

proxy(プロキシー)は、企業などの内部コンピュータとインターネットの中間に位置し、例えば直接インターネットに接続できない内部コンピュータの代理としてインターネットに接続する等をするシステム、もしくは代理として機能を実行するソフトウェアです。内部ネットワークへのアクセスを一元管理し、内部からの特定の種類の接続以外を遮断すること、外部からの不正アクセスを拒否することなどに用いられます。

0グッド

3クリップ

投稿2015/12/24 11:07

クライアント端末からWebブラウザを用いて、WebサーバとHTTPSの通信をする際に
Webブラウザにプロキシ設定がなされていた場合、プロキシは暗号化されたデータをそのまま、橋渡ししてるだけでしょうか。

端末でパケットキャプチャと取得したところ、DistinationIPがプロキシサーバになっており、プロキシサーバでパケットキャプチャを取得したところ、SourceIPはプロキシサーバになって通信をWebサーバへ通信していましたが、どのように端末とWebサーバとのやり取りであることを把握しているのでしょうか。

ご教授ください。
プロキシはsquidにて構築しています。

質問1:プロキシはHTTPSでの通信において、暗号化・複合化の処理に何か影響しているか。
質問2:プロキシはどのようにクライアントとサーバ間の通信であることを把握しているか。

以上です。よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

質問1:squid は man in the middleの運用ではなければ、connect methodが許可されていれば、中身をきにせず、パケットを中継します。

ex.
http_access deny CONNECT !SSL_ports
※ SSL_ports以外のCONNECTを拒否する

質問2:connect methodでの通信だとして、クライアントが connect DESTINATION:PORT PROTOCOL として要求し、squidがその情報をもとに、トンネルを構成します。

5.2 Requesting a Tunnel with CONNECT

シーケンスで分かりやすいものがないか、検索してみたのですが、良いのが出てきませんでした。。。

投稿2015/12/24 13:03

編集2015/12/24 14:02
Ken.sakanakana

総合スコア1768

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

omusi

2015/12/25 04:25

すばやい回答ありがとうございます。 質問1については理解しました。 質問2について再度質問させてください。 DestinationIP:PORT でトンネルを形成してやり取りすることは理解しましたが クライアントのパケットキャプチャを見ると、DisptinationIPがプロキシになっており、本来の宛先IPアドレスがどこに保持されているかが知りたいです。 重ねて申し訳ありませんが、ご教授ください。
Ken.sakanakana

2015/12/25 11:08

ClientのDestinationはProxyで間違いありません。 ClientからConnectで与えられたDestinationIPに対してProxyがトンネルを張ります。 (動作は異なりますが、NA(P)Tをイメージされるとわかりやすいかもしれません) ConnectはProxyとClient間でやり取りされる手順(Protocol)です。 The CONNECT method allows data transfer in any direction at any time:・・・ → http://www.deckle.co.uk/squid-users-guide/squid-access-control-and-access-control-operators.html パケットキャプチャで、CONNECT以降のデータはSSLのハンドシェイクまでは追いかけられるかもしれませんが、それ以降はSSLで暗号化されたパケットのやり取りになるので、サーバ側の秘密鍵がなければパケットの中身を見ることはできません。 GETメソッドでリクエストできるキャッシュ可能な通常のProxy動作と異なりCONNECTモードはわかりづらいですね ;-)
Ken.sakanakana

2015/12/25 11:10

ちなみに、clientからCONNECTで与えられたDESTINATION(接続先)が、IPアドレスでなく、FQDNの場合proxyが名前の解決を行ってIPアドレスを取得して接続すると思います。
omusi

2016/01/07 09:29

年末年始を挟んでお礼が遅くなりました。 詳しい説明をしていただいてありがとうございます。 なかなか難しいですね・・・。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問