HTTP プロキシと HTTPS プロキシ

プロキシ サーバーにはさまざまな種類があります。これらのタイプは、プロトコル、アクティブ ユーザーの数によってグループ化できます (共有プロキシ, プライベートプロキシ、 そして 処女代理)、割り当てられた IP アドレスのタイプ (パブリックまたは無料のプロキシ, 居住用プロキシ, モバイルプロキシ、 そして データセンタープロキシ)、および IP バージョン (IPv4 および IPv6 プロキシ)。ただし、この記事では、プロトコル別プロキシ カテゴリに分類される HTTP および HTTPS プロキシに焦点を当てます。

その前に、HTTP プロキシと HTTPS プロキシのベースとなるプロトコルについて説明します。

HTTP と HTTPS について理解する

HTTPとは何ですか?

ハイパーテキスト転送プロトコル (HTTP) は、クライアント アプリケーション (Web ブラウザや Web アプリなど) と Web サーバー (または Web ユーザー インターフェイス サーバー) 間の通信を容易にするステートレスなアプリケーション レベルのプロトコルです。

これはレイヤー 7 プロトコル (またはアプリケーション層プロトコル) であり、サーバーとクライアント間、またはその逆の間でデータを送信することを目的としています。 HTTP は通常、さまざまなデータ型の送信をサポートします。これらには、ハイパーメディアと総称されるテキスト、ビデオ、オーディオ データが含まれます。

クライアントがサーバーに保存されているこのデータにアクセスしたい場合、HTTP リクエストを送信します。通常、HTTP リクエストには次のものが含まれます。

  • HTTP メソッド (GET、POST、PUT、DELETE など)、HTTP バージョン (下記)、およびリクエストのターゲットに関する追加情報 (ホスト名とポート) を指定するリクエスト行
  • ヘッダー: Cookie などの追加情報を保存します。
  • リクエストメッセージの本文

リクエストを受信してメッセージを解釈すると、サーバーはリクエストされたデータを含む HTTP 応答を送信します。

HTTP はどのように機能するのでしょうか?

HTTP はその機能を単独で実行するわけではないことを指摘しておく価値があります。実際には、その上で実行されます トランスポート層プロトコル (レイヤー4)、など 伝送制御プロトコル (TCP) と ユーザーデータグラムプロトコル (UDP)。さらに、これは当時存在していた IP プロトコル上にも構築されました。

これらのレイヤー 4 プロトコルは、サーバーとクライアント (ネットワーク化されたデバイス) 間の通信を確立、管理し、終了します。簡単に言うと、TCP と UDP を使用すると、第 4 層の上に位置するネットワーク アプリケーション (HTTP を使用するアプリケーションを含む) が相互にクライアント/サーバー通信またはポイントツーポイント通信を作成できるようになります。

通信が確立されると、HTTP はデータを送信するために動作を開始します。 TCP または UDP は通信がスムーズに実行されるように管理し、データ送信が停止すると、これらのレイヤー 4 プロトコルは通信を終了します。特に、TCP と UDP はポート番号を使用して、相互に「通信」している Web アプリケーションを識別します。もう 1 つの注目点は、最新バージョンの HTTP/3 の実装では、通信のトランスポート層の側面に TCP ではなく QUIC が使用されていることです。 (クイック は UDP 上に実装された多重化トランスポート プロトコルです。)

HTTPの歴史

HTTP は、Tim Berners-Lee と彼のチームによる約 2 年間の開発を経て、1991 年に初めてリリースされました。それ以来、プロトコルは改良を受けてきました。 進化 これには多くの変更と改善が加えられ、いくつかの HTTP バージョンが誕生しました。これらのバージョンには次のものが含まれます。

  • HTTP/0.9 (1991 年に導入)
  • HTTP/1.0 (1996 年に標準化)
  • HTTP/1.1 (1997 年に導入および標準化)
  • HTTP/2 (2015年に標準化)
  • HTTP/3 (2022 年に導入)

HTTPSとは何ですか?

HTTP はインターネットで広く使用されている人気のあるプロトコルですが、いくつかの欠点があり、その主な点はセキュリティです。 HTTP では、すべての情報がクリア テキストで送信されます。したがって、攻撃者が簡単に閲覧できる可能性があります。実際、データにクレジット カード情報、パスワード、ユーザー名、電話番号、社会保障番号、住所詳細などの機密データが含まれている場合は、懸念される可能性があります。セキュリティの難問を解決するために、HTTPS が導入されました。

Hypertext Transfer Protocol Secure (HTTPS) は、HTTP 経由で送信されるすべてのデータを暗号化する安全な HTTP プロトコルです。 HTTPS は、Secure Sockets Layer (SSL) または Transport Layer Security (TLS) プロトコルのいずれかを使用して、Web サーバーの ID を検証し、データを保護します。 SSL はキー (公開キーと秘密キー) とデジタル証明書を使用してデータを保護しますが、TLS は暗号化に依存してデータを暗号化します。 TLS はクライアントとサーバーの両方も認証します。

HTTPSの歴史

HTTPS は 1994 年に作成されました。当時は主に SSL が使用されていました。しかし、2000 年後半に TLS を使用する HTTPS が標準化されました。観察者らによると、TLS がクレジット カード支払い以外で広く使用されるようになるまでには何年もかかりました。これは特に、TLS 証明書のインストールには追加の技術知識が必要であり、費用がかかるためです。結果として、特に小規模なサイトでは実現不可能でした。しかし、Web ホスティング サービスやクラウド会社が無料の暗号化証明書プログラムを開始し、HTTPS を無料で提供するなど、状況は変わりました。 2017年までに、 ウェブの半分が暗号化された.

基本はこれくらいにして、HTTP プロキシと HTTPS プロキシとは何か、それらの類似点と相違点、およびそれらの用途に焦点を当ててみましょう。

HTTPプロキシとは何ですか?

HTTP プロキシとは何かを説明する前に、まず理解しましょう プロキシサーバーとは何ですか。プロキシ サーバーまたはプロキシは、Web クライアントと Web サーバーの間に存在する仲介者です。これはインターネット トラフィックをそれ自体を介してルーティングすることによって機能し、その過程でリクエストの発信元および応答の終端として機能します。一般に、プロキシ サーバーは多数あり、それぞれが特定の機能を提供するように設計されています。

実際、クライアントに代わって動作するように構成されたプロキシがあり、プロキシが要求の発信者および応答の終了者として認識されます。このようなプロキシはフォワード プロキシと呼ばれます。一方、一部のプロキシは、サーバーに代わって動作するように構成できます。この役割を実行する場合、それらはリクエストが終了し、応答が開始されるポイントであるように見えます。このようなプロキシは、リバース プロキシとして知られています。ちなみに、HTTP プロキシは、構成が行われる場所に応じて、フォワード プロキシまたはリバース プロキシとして機能します。

では、HTTP プロキシ サーバーとは何でしょうか?これは、それ自体を介して HTTP トラフィックのみをルーティングするプロキシ サーバーです。 HTTP プロキシは、プロトコルベースのプロキシの一種です。 SOCKS5 プロキシ。ただし、本質的にファイアウォールを介した通信を容易にすることを目的とした SOCKS5 プロキシとは異なり、HTTP プロキシは高性能のコンテンツ フィルターとして機能することを目的としています。

HTTP プロキシは通常、ポート 80、8080、8008、および 3128 を通じて HTTP トラフィックをリッスンします。また、HTTPS トラフィックをリッスンすることもできます。 ポート3129。これは主に単独で使用されますが、特に構成しているアプリケーションがすでにプロキシ サーバーを使用している場合は、既存のプロキシに接続することもできます。この配置により、チェーンされたプロキシが作成されます。

HTTP プロキシの種類

HTTP プロキシには次の 2 種類があります。

1. HTTP クライアント プロキシ

通常、HTTP クライアント プロキシは、リクエストをサーバーまたはターゲットの宛先に転送する前に、(仲介者として) それ自体にリクエストを転送します。したがって、それがリクエストの発信者であるように見えます。

HTTP クライアント プロキシは、すべての送信 HTTP リクエストと受信 HTTP 応答をそれ自体を介してルーティングします。その過程で、HTTP リクエストとレスポンスのすべての内容が解釈されます。また、HTTP リクエストの特定の内容を変更することもできます。 Web コンテンツ変換プロキシのガイドライン。一般に、HTTP クライアント プロキシは、user-agent、accept、accept-charset、accept-encoding、accept- language、x-forwarded-for、via などの特定の HTTP ヘッダーを変更します。また、リクエスト メソッドを HEAD から GET、またはその逆に変換することもできます。

Chrome 上の Google.com のリクエスト ヘッダー
Chrome 上の Google.com のリクエスト ヘッダー

HTTP クライアント プロキシ (詳細は後述) を使用するようにシステム、ひいては Web ブラウザを構成すると、いくつかのことが行われます。まず、HTTP URL 内の TCP エンドポイント (ポートとホスト名) を HTTP プロキシ プロバイダーに属するものに変更します。その結果、TCP 接続は、元の/実際のホストとポートに送信される前に、HTTP URL 内のポートとホスト (プロキシのポートとホスト) 以外の別のポートとホスト (プロキシのポートとホスト) に対して最初に確立されます。これは、プロキシが実際のホストとポートを含むメッセージの内容を変更しないためです。その結果、HTTP プロキシは、HTTP メッセージに含まれる宛先データに基づいて、リクエストとその中のメッセージを別のサーバーや Web サイトに転送する前に、単一のポートでリクエストを受信できます。

2. HTTPサーバープロキシ

場合によっては、Web サーバー上にあるアプリケーションなど、一部のアプリケーションはオリジネーターとして構成できず、代わりにエンドポイントとして構成する必要があります。その結果、Web クライアントにはリクエストの宛先として表示されます。これらのアプリケーションがエンドポイントとして構成されている場合、それらは HTTP サーバー プロキシと呼ばれます。

匿名性によってランク付けされた HTTP プロキシの種類

HTTP プロキシは、匿名性の程度が異なります。 HTTP プロキシは次のタイプに区別できます。

  1. 透過的プロキシ: 透過的プロキシを使用すると、ユーザーは通常、プロキシ接続を使用していることに気づきません。プロキシ接続は、Web サイト運営者またはサービスプロバイダーのみに表示されます。透過プロキシの主な利点は、データをキャッシュすることで接続速度が向上することです。
  2. 匿名プロキシ: 匿名プロキシを使用すると、IP アドレスが隠されます。この場合、ターゲット Web サイトはプロキシを使用していることを認識できますが、実際の IP アドレスは認識できません。
  3. プロキシの歪み: このタイプのプロキシ サーバーは、ターゲット Web サイトによってプロキシとして識別されますが、間違った IP アドレスを通信します。
  4. エリートプロキシ: これらは、プロキシがターゲット Web サイトへの接続を試行する前にユーザー データを削除する匿名プロキシです。このような種類のプロキシを使用すると、ターゲット Web サイトはプロキシが使用されていることを検出できず、ユーザーの IP アドレスを識別することもできません。

どれも評判が良い プロキシプロバイダー HTTP プロキシを備えた企業は、エリート プロキシのみを提供します。

HTTP プロキシを設定する方法

このセクションでは主に、HTTP クライアント プロキシの作成方法に焦点を当てます。これは、仲介経由で HTTP トラフィックをルーティングするように Web クライアント (ブラウザー) を構成することによって作成されます。ただし、注目に値するのは、 クロム、サファリ、 モジラ Firefox、およびその他の一般的なブラウザには、アプリ内 (ネイティブ) プロキシ サーバー設定がありません。

代わりに、プログラムの設定をクリックしてプロキシ オプションを選択すると、Windows、macOS、または Linux のプロキシ構成ウィンドウにリダイレクトされます。この点に関して、HTTP プロキシを作成するには、オペレーティング システムを構成するだけです。これにより、優先ブラウザだけでなく、他のすべての Web アプリで動作するシステム全体の HTTP プロキシが作成されます。

Windows で HTTP プロキシを設定するには、次の手順に従います。

  1. ウィンドウを開きます」 設定 > 選択 ネットワークとインターネット > を選択してください プロキシ タブ。または、ブラウザを使用して [プロキシ] タブを開くこともできます。
  2. に向かう 手動プロキシ設定 セクション
Windows の手動プロキシ設定セクション
Windows の手動プロキシ設定セクション
  1.  アドレス フィールドに、プロキシ ホストの IP またはアドレスを入力します。さらに、プロキシ ポートを入力します。プロキシプロバイダーから詳細が提供されるはずです。
  2. [次のエントリで始まるアドレスを除き、プロキシ サーバーを使用する] ボックスに、プロキシ サービス プロバイダーの URL を入力します。
  3. 次に、 ローカル (イントラネット) アドレスにはプロキシ サーバーを使用しないでください
  4. クリック 保存

macOS で HTTP プロキシを設定するには、次の手順に従います。

  1. クリック システム環境設定 > 選択してください 通信網 > をクリックしてください 高度な > を選択します。 プロキシ タブ。あるいは、Web クライアントを使用することもできます。これにより、 プロキシ タブ
MacOS の「プロキシ」タブ
MacOS の「プロキシ」タブ
  1. 次に、 ウェブプロキシ(HTTP) オプション
  2. の IP とポートを入力します。 Webサーバープロキシ (HTTP プロキシ)。通常、プロキシ サービス プロバイダーの IP を入力し、フィールドにポート 80、8080、または 8008 を入力する必要があります。
  3. HTTP プロキシのユーザー名とパスワードを入力します。ユーザー名とパスワードは、サービス プロバイダーのアカウントにアクセスするために使用する資格情報と同じである必要があります。
  4. クリック わかりました.

Web を閲覧するときにセキュリティが中心的な考慮事項である場合、HTTP プロキシは理想的ではありません。理想的に探しているのは HTTPS プロキシです。

HTTPS プロキシとは何ですか?

SSL プロキシとも呼ばれる HTTPS プロキシは、ポート 443 で HTTPS トラフィックのみをリッスンする仲介者です。その結果、HTTPS トラフィックはそれ自身を経由するだけでルーティングされます。上で述べたように、HTTPS はプロトコルを通じて送信されるデータを暗号化します。これは事実上、ヘッダーやメッセージを含む HTTP リクエストとレスポンスのすべての要素が暗号キーの背後に隠されていることを意味します。したがって、それらはエンドポイントまたは終了点でのみ表示または解釈できます。 HTTPS プロキシなどの仲介者がデータを解釈するには、それをエンドポイントとして構成する必要があります。

この点に関して、HTTPS プロキシは、TLS または SSL 接続のエンドポイントとして機能するように構成されています。したがって、リクエストを復号化し、内容を解釈し、リクエストの特定の側面を変更して暗号化し、最後にリクエストを HTTP メッセージに含まれる実際の宛先に転送します。前述したように、HTTPS プロトコルは証明書を使用します。したがって、HTTPS プロキシは、トラフィックを目的の宛先に送信する前に、正しい証明書 (クライアント証明書またはサーバー証明書) を使用してトラフィックを暗号化する必要があります。特に、HTTPS プロキシがエンドポイントとして構成されていない場合は、Web コンテンツ変換プロキシのガイドラインで規定されているように、HTTP ヘッダーまたは要求の内容を変更してはなりません。

HTTPS プロキシは通常、暗号化を実行して Web サーバーまたは Web クライアントを保護するために使用されます。

HTTPS プロキシの種類

HTTPS プロキシには 2 つのタイプがあります。

1. HTTPS クライアント プロキシ

HTTPS クライアント プロキシは、Web クライアントまたは内部ネットワークからインターネットへの接続を容易にします。 HTTPS クライアント プロキシを設定するには、プロキシがインストールされているデバイスで使用するクライアント証明書をインポートする必要があります。これにより、仲介者は、あたかも要求の発信者または応答の終了者であるかのように、データの復号化と暗号化の両方を行うことができます。

2. HTTPSサーバープロキシ

HTTPS サーバー プロキシにより、外部 Web クライアントからインターネット経由で内部 Web サーバーへの接続が可能になります。 HTTPS サーバー プロキシは HTTP サーバー プロキシとは異なります。前者は証明書を使用するのに対し、後者は証明書を使用しないからです。 HTTPS サーバー プロキシを設定するには、Web サーバーで使用されるデフォルトの証明書をプロキシにエクスポートすることが重要です。この証明書により、HTTPS サーバー プロキシがデータを暗号化および復号化できるようになります。

HTTPS プロキシを設定する方法

HTTPS プロキシの設定は上記の手順に従いますが、使用されるポートに関してはわずかな違いがあります。 HTTPS プロキシを作成するときは、必ずポート フィールドに 443 を入力してください。 macOS デバイスを使用している場合は、 セキュア Web プロキシ (HTTPS) の代わりにオプション ウェブプロキシ(HTTP)。それ以外の場合、手順はほぼ同じです。

HTTPS プロキシ経由の接続はどの程度安全ですか?

HTTPS プロキシを使用しているユーザーがアドレス バーの左側に「鍵アイコン」が表示された Web ページを開くと、ユーザーのブラウザとターゲット サイトのサーバー間の接続全体が暗号化されます (SSL 暗号化)。

HTTPS プロキシ経由の接続はどの程度安全ですか?
HTTPS プロキシ経由の接続はどの程度安全ですか?

これは、ユーザーがキーボードで入力したすべてのデータ (ログイン名とパスワード、クレジット カード番号など)、ダウンロード、アップロード、またはストリーミングされた画像とビデオが完全にプライベートのままであることを意味します。

ブラウザ <-> HTTPS プロキシ <-> ターゲット ページ

これは、それらがユーザーとターゲット Web サイトの所有者のみに知られていることを意味します。

プロキシ サービスはトラフィックを「リッスン」できますか?

いいえ、これは技術的に不可能です。プロキシ プロバイダーは、ユーザーが Web サイト上のアカウントのパスワードをハッキングしようとしていると推測することしかできません。これは、対象サイトのログインページへのアクセス頻度からも明らかです。これは、ユーザーがブルート フォース プログラムを使用してこれを 1 分あたり 100 万回の頻度で実行した場合に発生します。

HTTP プロキシと HTTPS プロキシ: 類似点と相違点

HTTP プロキシと HTTPS プロキシの類似点

  • クライアント側またはサーバー側で構成できます。
  • HTTP および HTTPS プロキシは、それを通じて送信されたデータを解釈します。
  • プロキシはポート経由でトラフィックをリッスンします
  • クライアント側プロキシは、すべてのリクエストをターゲット宛先に転送します。
  • クライアント側プロキシを使用して Web スクレイピングを容易にすることができます

HTTP プロキシと HTTPS プロキシの違い

  HTTPプロキシ HTTPS プロキシ
ポート ポート 80、8080、8008、3128、または 3129 を使用します。 ポート 443 を使用します
安全 HTTP プロキシは暗号化されていないデータをルーティングします HTTPS プロキシは暗号化されたデータをルーティングします
プロトコル 主にHTTPプロトコルを使用します 主に HTTPS プロトコルを使用します
渋滞 HTTP (ポート 80、8080、8008、3128 経由) と HTTPS トラフィック (ポート 3129 経由) の両方をリッスンできます。 ポート 443 経由でのみ HTTPS トラフィックをリッスンできます。

HTTP および HTTPS プロキシの使用

HTTP クライアント プロキシと HTTPS クライアント プロキシの使用

1. ウェブスクレイピング

ウェブスクレイピング Web スクレイパーとして知られるボットを使用して Web サイトからデータを抽出する自動プロセスを指します。通常、これらのボットは大量のデータを抽出するように設計されており、リソースを不必要に横取りすることで Web サーバーに負担をかける可能性があります。このため、大規模な Web サイトのほとんどは現在、データ抽出の取り組みを停止することを目的としたスクレイピング対策措置を導入しています。幸いなことに、HTTP プロキシを使用すると、この問題を回避できます。

データ抽出に関しては、HTTP プロキシはほとんど無視されます。これは、スクレイパーが実行されているコンピューターの IP アドレスをマスクするため、住宅用プロキシ、モバイル プロキシ、またはデータ センター プロキシが優先されるためです。同時に別の IP アドレスを割り当て、オンラインの匿名性を効果的に提供します。さらに、実際の IP アドレスがブロックされたり禁止されたりするのを防ぎます。 IP アドレスが定期的にローテーションされると、ブロックされる可能性がさらに低くなります。ただし、この記事は住宅またはデータセンターのプロキシに関するものではありません。では、HTTP プロキシと HTTPS プロキシは Web スクレイピングでどのように使用されるのでしょうか?

前述したように、HTTP または HTTPS プロキシは一部の HTTP リクエスト ヘッダーを変更できます。これらには、ほんの数例を挙げると、ユーザー エージェント、受け入れ言語、受け入れエンコーディング、および受け入れが含まれます。ユーザー エージェントには、オペレーティング システム (タイプとバージョン)、使用中のクライアント アプリケーション (Web ブラウザ)、およびブラウザ エンジンに関する情報が保存されます。この情報により、Web サーバーはアクセスに使用されるデバイスとソフトウェアの種類を識別できます。次に、この情報を使用して、ユーザーに関連付けられたオンライン ID を作成します。ユーザー エージェントを変更することにより、HTTP プロキシと HTTPS プロキシは、リクエストが異なるデバイスから送信されているかのように見せることができます。データ抽出リクエストが複数のデバイスから送信されたように見えるため、これにより Web スクレイピングが促進されます。

2. コンテンツのフィルタリング

HTTP クライアント プロキシまたは HTTPS クライアント プロキシは、特定のリクエストのみを転送するように構成できます。そのようなリクエストは特定のルールを満たす必要があります。たとえば、指定されたポートを介して送信する必要があります。 HTTP クライアントが 80、8080、8008、3128、または 3129 以外のポートを使用すると、アクセスは拒否されます。

さらに、HTTPS または HTTP プロキシがクライアントとの間のトラフィックを検査するときに参照するコンテンツのタイプを指定する必要があります。コンテンツが設定で指定された基準に一致しない場合、トラフィックはブロックされます。逆に、内容が一致すれば仲介業者を通過することが許可されます。

3. 通信の確保 

HTTP プロキシは、受信データをプレーン テキストから HTTPS サーバーが受け入れられる安全な暗号化された送信データに変換するように構成できます。ただし、この構成は異例ですが、プレーン テキストから SSL への通信を処理するポートであるポート 3130 の使用が含まれます。

一方、HTTPS プロキシは、通信を暗号化することで安全な通信を実現します。このように、HTTPS プロキシはサイバー攻撃の可能性を減らすため、サイバーセキュリティを促進します。

4. ソーシャルメディア管理

HTTP プロキシが HTTP ヘッダーの一部の側面を変更することは、今では常識です。したがって、ユーザー エージェントを変更することにより、これらの仲介者は、要求が別のデバイスから発信されているという錯覚を引き起こすことができます。これにより、ユーザーは複数のソーシャル メディア アカウントを作成および管理できるようになります。

HTTP サーバー プロキシと HTTPS サーバー プロキシの使用

1. Webサーバーへのトラフィックを制限する

サーバー側プロキシは、特定のルールを満たすトラフィックを受け入れるように構成できます。したがって、要件に準拠しないトラフィックはブロックされます。このようにして、サーバーが不要なリクエストを処理しないようにして、サーバーを保護します。

2. Webサーバーの保護

サーバー側プロキシは、Web クライアントからのデータを復号化し、その後、それらを解釈できます。このアクションにより、リクエストをフィルタリングして、マルウェアまたはその他の悪意のあるファイルをスキャンできるようになります。その結果、Web サーバーをサイバー攻撃から保護します。

3. 頻繁にアクセスするファイルのキャッシュ

HTTP サーバー プロキシと HTTPS サーバー プロキシには、画像やページなど、頻繁にアクセスされるファイルを保存できます。これにより Web サーバーが解放され、リソースを他のあまり一般的ではない操作に専念できるようになります。また、Web ページの読み込み速度も向上します。

結論 

HTTP プロキシと HTTPS プロキシは、特にセキュリティとコンテンツ フィルタリングの観点から、有用な仲介手段です。実際、これらは高性能コンテンツ フィルターと呼ばれます。これは、特定のインターネット トラフィックのみが通過できるように構成できるためです。これらのプロキシは、Web サーバーの保護、頻繁にアクセスされるファイルの保存、ソーシャル メディア管理、Web スクレイピングなど、他の多くの機能も提供します。

プロキシを選んで購入

種類、場所、数量を選択すると、すぐに価格が表示されます。

プロキシを選んで購入