Linux用の8つのトップオープンソースリバースプロキシサーバー

リバースプロキシサーバーは、クライアントとバックエンド/オリジンサーバーの間に配置されるプロキシサーバーの一種です。 HTTP などのサーバー NGINXApache、などまたはで書かれたアプリケーションサーバー NodejsPythonJavaルビーPHP、および他の多くのプログラミング言語。

これは、クライアント要求を受け取り、それを1つ以上のバックエンドサーバーに渡し、その後サーバーから応答をフェッチしてクライアントに返すゲートウェイまたは中間サーバーであるため、コンテンツのように見えます。リバースプロキシサーバー自体から発生しました。

一般に、リバースプロキシサーバーは、「」として使用される内部向けプロキシです。フロントエンド‘プライベートネットワーク上のバックエンドサーバーへのアクセスを制御および保護します。通常、ネットワークファイアウォールの背後に展開されます。

これは、バックエンドサーバーが匿名性を実現してセキュリティを強化するのに役立ちます。 ITインフラストラクチャでは、リバースプロキシは、アプリケーションファイアウォール、ロードバランサー、TLSターミネーター、Webアクセラレーター(静的および動的コンテンツをキャッシュすることによる)などとしても機能します。

この記事では、Linuxシステムで使用できる上位8つのオープンソースリバースプロキシサーバーについて説明します。

1. HAProxy

HAProxy ((HAProxy、の略 高可用性プロキシ)、高可用性のために構築された、無料のオープンソース、非常に高速で信頼性の高い、一流のロードバランサーおよびTCPおよびHTTPベースのアプリケーション用のプロキシソフトウェア。

HAProxy は、HTTPリバースプロキシ、TCPプロキシおよびノー​​マライザー、SSL / TLSターミネーター/イニシエーター/オフローダー、キャッシングプロキシ、HTTP圧縮オフローダー、トラフィックレギュレーター、コンテンツベースのスイッチ、FastCGIゲートウェイなどです。 また、DDoSおよびサービスの悪用に対する保護でもあります。

これは、非常に高速なI / Oレイヤーと、数万の同時接続を簡単に処理できる優先度ベースのマルチスレッドスケジューラーを組み合わせた、イベント駆動型のノンブロッキングエンジンを搭載しています。 特に、 HAProxy を使用します プロキシ アプリケーションがすべての関連情報を取得できるように、クライアントの接続情報をバックエンドサーバーまたはオリジンサーバーに渡すプロトコル。

HAProxyの基本機能には、プロキシ、SSLサポート、サーバーの状態とそれ自体の状態の両方の監視、高可用性、負荷分散、スティッキネス(さまざまなイベント間でも同じサーバー上に訪問者を維持する)、コンテンツの切り替え、HTTPの書き換え、リダイレクトなどがあります。サーバー保護、ロギング、統計、その他多数。

2. NGINX

NGINX、無料のオープンソースで高性能な非常に人気のあるHTTPサーバーとリバースプロキシ。 それはまたとして機能します IMAP / POP3 プロキシサーバー。 NGINX は、その高性能、安定性、豊富な機能セット、シンプルで柔軟な構成、および低リソース消費(特にメモリフットプリントが小さい)でよく知られています。

と同じように HAProxyNGINX イベント駆動型アーキテクチャを採用しているため、何万もの同時接続を問題なく処理できます。 HAProxyのプロキシ プロトコル。

NGINX ngx_http_proxy_moduleモジュールを使用したキャッシュによる高速リバースプロキシをサポートします。これにより、FastCGI、uwsgi、SCGI、memcachedなどのHTTP以外のプロトコルを介して別のサーバーにリクエストを渡すことができます。

重要なのは、大規模分散コンピューティングシステムの重要な側面である負荷分散とフォールトトレランスをサポートすることです。 ザ・ ngx_http_upstream_module モジュールを使用すると、バックエンドサーバーのグループを定義して、クライアントからの要求を分散できます。 これにより、アプリケーションはより堅牢で、利用可能で、信頼性が高く、拡張性が高く、応答時間とスループットが向上します。 さらに、セキュリティに関しては、SSL / TLSターミネーションや他の多くのセキュリティ機能をサポートしています。

あなたが読みたいと思うかもしれないNginxウェブサーバー上の有用な記事:

3.HTTPキャッシュにワニスを塗る

ワニスHTTPキャッシュ (または ワニスキャッシュ または単に ワニス)は、サーバー側のキャッシュを使用してHTTPパフォーマンスを向上させるように設計された、無料のオープンソースの高性能で非常に人気のあるキャッシュリバースプロキシソフトウェアです。

クライアントとHTTPWebサーバーまたはアプリケーションサーバーの間に展開されます。 クライアントがWebサーバーから情報またはリソースを要求するたびに、Varnishは情報のコピーを保存するため、次にクライアントが同じ情報を要求したときに、VarnishはWebサーバーに要求を送信せずに情報を提供し、負荷を軽減します。サーバー上で、Webコンテンツの配信を高速化します。

ワニス として知られている柔軟な構成言語を使用します ワニス構成言語 ((VLC)特に、システム管理者は、着信要求の処理方法、提供するコンテンツ、場所、要求または応答の変更方法などを構成できます。

ワニスも拡張可能です–それは使用して拡張することができます ワニスモジュール ((VMOD)およびユーザーは、カスタムモジュールを作成するか、コミュニティが提供するモジュールを使用できます。

の主な制限 ワニス のサポートの欠如です SSL / TLS。 有効にする唯一の方法 HTTPS 展開することです SSL / TLS ターミネーターまたはオフローダーなど HAProxy または NGINX その前に。

4.Træfɪk

Træfɪk (発音 トラフィック)は、複数の負荷分散アルゴリズムをサポートするマイクロサービスをデプロイするための、無料のオープンソースの最新の高速HTTPリバースプロキシおよびロードバランサーです。 次のようなさまざまなプロバイダー(またはサービス検出メカニズムやオーケストレーションツール)とインターフェイスできます。 KubernatesDocker、Etcd、Rest API、Mesos / Marathon、Swarm、およびZookeper。

その魅力的な機能は、構成を自動的かつ動的に管理して、サービスに適した構成を検出できることです。 これは、インフラストラクチャをスキャンして関連情報を見つけ、どのサービスが外部からのどの要求に対応しているかを検出することによって行われます。 プロバイダーは、アプリケーションまたはマイクロサービスが配置されている場所をTræfɪkに通知します。

Træfɪkの他の機能は、WebSocket、HTTP / 2、GRPC、ホットリロード(再起動せずに構成を継続的に更新)、Let’s Encrypt証明書を使用したHTTPS(ワイルドカード証明書のサポート)でサポートされ、RESTAPIを公開します。 また、アクセスログを保持し、メトリック(Rest、Prometheus、Datadog、Statsd、InfluxDB)を提供します。

また、Træfɪkには、イベントを監視するために使用されるシンプルなHTMLベースのWebユーザーインターフェイスが付属しています。 また、回路ブレーカー、再試行要求、レート制限、および基本認証もサポートしています。

5.Apacheトラフィックサーバー

以前は所有していた商品 Yahoo 後でに引き渡されました Apache FoundationApacheトラフィックサーバー は、無料のオープンソースの高速キャッシュフォワードおよびリバースプロキシサーバーです。

Traffic Serverはロードバランサーとしても機能し、柔軟なキャッシュ階層に参加できます。 Yahooでは1日400TB以上のトラフィックを処理したことが知られています。

コンテンツリクエストのキープアライブ、フィルタリング、または匿名化のセットを備えており、ユーザーがカスタムプラグインを作成して、HTTPヘッダーを変更したり、ESIリクエストを処理したり、新しいキャッシュアルゴリズムを設計したりできるAPIを介して拡張できます。

6.Squidプロキシサーバー

いか は、HTTP、HTTPS、FTPなどのさまざまなプロトコルをサポートする無料のオープンソースの有名なプロキシサーバーおよびWebキャッシュデーモンです。 これは、発信データの着信要求をキャッシュするリバースプロキシ(httpd-accelerator)モードを備えています。

豊富なトラフィック最適化オプション、アクセス制御、承認、ロギング機能などをサポートします。

7.ポンド

A ポンド は、Webサーバー用のもう1つの無料でオープンソースの軽量リバースプロキシおよびロードバランサーおよびフロントエンドです。 また、SSLターミネーター(クライアントからのHTTPS要求を復号化し、それらをプレーンHTTPとしてバックエンドサーバーに送信する)、HTTP / HTTPSサニタイザー(要求が正しいかどうかを検証し、整形式の要求のみを受け入れる)、およびフェイルオーバーでもあります。 -サーバー経由。

8. ApacheHTTPサーバー

最後になりましたが、 Apache HTTP サーバー(別名 HTTPD)、世界で最も人気のあるWebサーバー。 また、リバースプロキシとして機能するように展開および構成することもできます。

さらに、チェックアウトすることもできます スキッパー、ブロックの新しい子供。 これは、Kubernetes Ingressのようなユースケースを含む、サービス構成のための無料のオープンソースHTTPルーターおよびリバースプロキシです。

このガイドでは、これですべてです。 このリストの各ツールの詳細については、それぞれのWebサイトを確認してください。 以下のフィードバックフォームを介して私たちとあなたの考えを共有することを忘れないでください。

Hope this helps!

Source link