Web サーバーの負荷分散を維持することは、ダウンタイムを防ぐための重要な対策の 1 つです。ロード バランサーの使用は信頼性の高いアプローチであり、HAProxy は高く評価されています。 HAProxy を使用すると、負荷分散方法を正確に構成し、SSL パススルーをサポートして、クライアントとサーバー間の通信のセキュリティを確保できます。
最初に、HAProxy で SSL パススルーを実装することの重要性について説明し、その後、この機能を実装するために必要な手順について詳細に説明し、理解を深めるために例を示します。
HAProxy はロード バランサーとして、Web サーバーに流れる負荷を受け入れて分散し、構成されたサーバー間で負荷を分散します。負荷は、クライアント デバイスとバックエンド サーバー間で共有されるトラフィック全体に分散されます。負荷分散のプロセスではセキュリティが非常に重要であり、SSL はセキュリティを確保するための鍵となります。
理想的には、SSL パススルーには、HAProxy または接続を使用している他のロード バランサーで SSL/TLS を終了することなく、SSL/TLS トラフィックを Web サーバーに転送し、構成されたサーバーに分散することが含まれます。 SSL パススルーを使用すると、エンドツーエンドの暗号化が強化され、クライアントの元の IP アドレスが保持されます。さらに、これはバックエンド サーバーの柔軟性を高め、HAProxy の過負荷を軽減する推奨されるセキュリティ対策です。
SSL パススルーの概念とその必要性を理解したら、次のステップは、所定の手順に従って HAProxy ロード バランサーにそれを実装することです。手順に従って、HAProxy ロード バランサーで SSL パススルーをすぐに有効にします。
HAProxy がインストールされていないと仮定します。最初のステップは、SSL パススルーを構成する前にインストールすることです。したがって、リポジトリを更新することから始めます。
$sudo 適切なアップデート
次に、次のコマンドを使用して、デフォルトのリポジトリから HAProxy をインストールします。この状況を処理するには Ubuntu を使用することに注意してください:
$sudo apt install haproxy
HAProxy をインストールすると、SSL パススルーを実現できます。読む!
この手順では、「/etc/haproxy」にある HAProxy 構成ファイルにアクセスし、それを編集して SSL パススルーを実現する方法を指定する必要があります。任意のテキスト エディタを使用して構成ファイルを開くことができます。このデモでは Nano を使用しました。
$sudo nano/etc/haproxy/haproxy,cfg
構成ファイルにアクセスしたら、「フロントエンド」と「バックエンド」という 2 つのセクションを作成する必要があります。 「フロントエンド」では、どのポートにバインドして接続するかを指定できます。同様に、トラフィックの分散に使用するプロトコルとバックエンド サーバーを指定する必要があります。
この場合、トラフィックを保護したいため、HTTPS 接続用にポート 443 をバインドします。同様に、トランスポート層で動作する HAProxy を受け入れる TCP モードを指定します。
また、SSL トラフィックを受け入れているかどうかを確認するために、SSL の「hello」メッセージをチェックする期間を指定するルールとして「tcp_request」行も追加しました。最後に、負荷分散のためのバックエンド サーバーを指定します。最後の「フロントエンド」部分は次のようになります:
「バックエンド」部分では、モードを TCP に設定します。次に、負荷分散に使用するサーバーの IP アドレスを指定します。これらの IP をライブサーバーの IP と一致するように置き換え、接続ポートを 443 に設定してください。
「option tcplog」を追加して、構成ファイルの「global」セクションに含まれるログ ファイルに tcp 関連の問題を記録できるようにします。
HAProxy 構成ファイルを編集した後、それを保存して終了します。 HAProxy サービスを再起動して、変更を適用します。
###それだけです! HAProxy に SSL パススルーを実装しました。 curl などのコマンドを使用して Web サーバーにトラフィックのストリームを送信して、その応答を確認してください。 SSL パススルーが正常に実装されると、ポート 443 経由で接続が確立されたことを示す出力が表示され、バックエンド サーバーに接続されます。サーバーは必要な詳細を返し、200 ステータス応答を返します。
#########結論は#########
SSL パススルーを実装すると、エンドツーエンド暗号化の作成に役立ち、ロード バランシングが発生したときに SSL/TLS 接続が維持されるようになります。 HAProxy に SSL パススルーを実装するには、HAProxy をインストールし、構成ファイルを編集してロード バランシングがどのように行われるかを指定します。プロセスをよりよく理解するには、この例を参照してください。以上がHAProxy で SSL パススルーを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。