nginx(エンジンx)は、オープンソースの1人のリバースプロキシとメールプロキシサーバー、Linux、BSD、Windowsオペレーティングシステム用の高性能軽量Web(HTTP)サーバーです。ミッションクリティカルな環境では、開発者によってプラスとして記述されています。
機能の概要
主要なハイライトには、キャッシングによる高速化されたリバースプロキシ、SCGI、FastCGI、uwsgi、memcachedサーバーのキャッシュによる高速サポート、モジュラーアーキテクチャ、TLS SNIおよびSSLサポートなどがあります。
メールプロキシサーバーは、SSL(Secure Sockets Layer)、STLS、STARTTLS暗号化プロトコル、IMAP、POP3およびSMTPの複数の認証方法、POP3またはIMAPサーバーへのユーザーのリダイレクト、ユーザー認証と接続リダイレクト。その他の興味深い機能の中でも、kqueue、sendfile、File AIO、DIRECTIO、accept-filtersなどのサポートについて言及することができます。
FastCGIまたはプロキシされたサーバーによって制御されている場合、単一のWebページ内で多数のSSIインクルージョンを同時に処理できます。さらに、プログラムのHTTPサーバー部分は、HTTP referer、MP4およびFLVストリーミング、埋め込みPerl、応答レート制限、3xx-5xxエラーコードのリダイレクト、パイプライン接続およびキープアライブ接続のサポートをサポートしています。 >
インデックスと静的ファイルの両方のサーバー
このソフトウェアは、インデックスファイルとスタティックファイルの両方を提供し、フォールトトレランスと簡単なロードバランシング、XSLT、gzip、SSI、イメージ変換、チャンクレスポンス、バイト範囲などのさまざまなフィルタをユーザに提供します。
簡単で論理的で柔軟な構成を提供するため、よく知られているいくつかのWebサイトでは、nginxソフトウェアを使用して、ユーザーに高品質でユニークな情報を提供します。これらの中で、Wordpress.com、Netflix、FastMail.FMを挙げることができます。
サポートされているオペレーティングシステム
現時点では、nginxはLinux 2.2-3(32ビット)、Linux 2.6-3(64ビット)、FreeBSD 3-10(32ビット)、FreeBSD 5-10(64ビット) Solaris 9(32ビット)、Solaris 10(32ビットおよび64ビット)、AIX 7.1(PowerPC)、HP-UX 11.31(IA64)、Mac OS X(PowerPCおよび32ビット)、Windows XP 、およびWindows Server 2003をサポートしています。
nginx-1.12.0 stableバージョンがリリースされ、1.11.xのメインラインブランチからの新機能とバグ修正が組み込まれました。ストリームモジュール、HTTP / 2修正、異なるタイプの複数のSSL証明書のサポート、改善された動的モジュールサポートなどが含まれます。
nginx-1.12.0 stableバージョンがリリースされ、変数サポートなどの1.11.xメインラインブランチからの新機能とバグ修正が組み込まれています。ストリームモジュールの改善、HTTP / 2修正、異なるタイプの複数のSSL証明書のサポート、改善された動的モジュールサポートなどが含まれます。
バージョン1.8.1の新機能:
セキュリティ:「リゾルバ」コマンドが実行された場合、DNSサーバの応答処理中にポインタの参照が無効になる可能性があります。ディレクティブが使用され、DNSサーバからのUDPパケットを偽造できるワーカープロセスがワーカープロセスでセグメンテーション違反を引き起こす可能性があります(CVE-2016-0742)。
セキュリティ:CNAME応答処理中に「レゾルバ」が使用された場合、使用後フリー状態が発生することがあります。ディレクティブが使用され、名前解決をトリガしてワーカープロセスでセグメンテーション違反を引き起こす可能性のある攻撃者、または他の影響を与える可能性がある攻撃者を許可します(CVE-2016-0746)。
セキュリティ:CNAME解決は、「リゾルバ」が、ディレクティブが使用され、任意の名前解決をトリガーしてワーカープロセスで過度のリソース消費を引き起こす可能性のある攻撃者を許可しました(CVE-2016-0747)。
バグ修正: "proxy_protocol" 「聞く」パラメータのパラメータ。最初の" listen"に指定されていないと指令が機能しませんでした。待機ソケットのディレクティブ。
バグ修正:いくつかの古いLinux版ではnginxが起動しないことがあります。バグは1.7.11に出ていました。
Bugfix:" try_files"が実行されると、ワーカープロセスでセグメンテーションエラーが発生する可能性があります。 「エイリアス」とは、ディレクティブは、正規表現で指定された場所の内部で使用されました。このバグは1.7.1に登場しました。
バグ修正:" try_files"正規表現によって与えられたネストされた場所の中のディレクティブは、 "エイリアス"ディレクティブは外側の場所で使用されました。
バグ修正:"ヘッダーは既に送信されています"キャッシュを使用するとアラートがログに表示されることがあります。そのバグは1.7.5に現れました。
バグ修正:異なる仮想サーバーで異なるssl_session_cache設定が使用された場合、ワーカープロセスでセグメンテーションエラーが発生することがあります。
バグ修正:"期限切れ"変数を使用するときにディレクティブが機能しないことがあります。
バグ修正:もしnginxがngx_http_spdy_moduleで構築されていれば、 "spdy"が使用されていてもSPDYプロトコルを使うことができました。 「聞く」パラメータのパラメータ。ディレクティブが指定されていません。
バージョン1.8.0の新機能:
ハッシュロードバランシング方式、バックエンドSSL証明書検証、実験的スレッドプールのサポートなど、1.7.xメインラインブランチの多くの新機能が含まれています。 、proxy_request_bufferingなどがあります。
バージョン1.7.8の新機能:
変更:nginxが応答がキャッシュされないことを事前に知っている場合、キャッシュされている間に、 "If-Modified-Since"、 "If-Range"などのクライアント要求ヘッダー行がバックエンドに渡されるようになりました。 、proxy_cache_min_usesを使用している場合)。
変更:proxy_cache_lock_timeoutの後になりました。nginxはキャッシュを無効にしてバックエンドにリクエストを送信します。 「proxy_cache_lock_age」、「fastcgi_cache_lock_age」、「scgi_cache_lock_age」、および「uwsgi_cache_lock_age」という新しいディレクティブは、ロックが解除されるまでの時間を指定し、応答をキャッシュする別の試行が行われます。
変更:" log_format"ディレクティブはhttpレベルでのみ使用できるようになりました。
「proxy_ssl_certificate」、「proxy_ssl_certificate_key」、「proxy_ssl_password_file」、「uwsgi_ssl_certificate」、「uwsgi_ssl_certificate_key」、および「uwsgi_ssl_password_file」というフィーチャーは、指令。 Piotr Sikoraに感謝します。
機能:「X-Accel-Redirect」を使用して名前付きの場所に切り替えることができるようになりました。深谷俊久に感謝します。
Feature: "tcp_nodelay"ディレクティブはSPDY接続で動作します。
機能:vim構文ハイライトスクリプトの新しいディレクティブ。ピーター・ウーに感謝します。
バグ修正:nginxは、 "s-maxage"を無視しました。 「Cache-Control」フィールドの値は、バックエンド応答ヘッダー行。 Piotr Sikoraに感謝します。
Bugfix:ngx_http_spdy_moduleにあります。 Piotr Sikoraに感謝します。
バグ修正:" ssl_password_file" OpenSSL 0.9.8zc、1.0.0o、1.0.1jを使用している場合は、
バグ修正:"ヘッダーは既に送信されました" " post_action"指令が使用された。このバグは1.5.4に登場しました。
バグ修正:アラート「" http出力チェーンが空です" " postpone_output_0"というメッセージがログに表示される可能性があります。 SSIを含むディレクティブが使用されました。
バグ修正: "proxy_cache_lock" SSIサブリクエストの指示。 Yichun Zhangに感謝します。
バージョン1.6.2の新機能:
セキュリティ:共有SSLセッションキャッシュまたは同じTLSセッションチケットキーが複数の"サーバー"サーバーで使用された場合、関連のないコンテキストでSSLセッションを再利用することができました。ブロック(CVE-2014-3616)。 Antoine Delignat-Lavaudに感謝します。
バグ修正:リゾルバが使用され、DNSサーバが不正な形式の応答を返した場合、要求がハングアップすることがありました。このバグは1.5.8に登場しました。
バグ修正:リゾルバが使用され、DNS要求中にタイムアウトが発生した場合、リクエストがハングすることがあります。
バージョン1.6.1の新機能:
セキュリティ:SMTPプロキシ(CVE-2014-3556)のSTARTTLSコマンドの後にパイプラインコマンドが破棄されませんでした。このバグは1.5.6に登場しました。 Chris Boultonに感謝します。
バグ修正:コード400でエラーを返すときに、$ uri変数にガベージが含まれる可能性があります。Sergey Bobrovに感謝します。
バグ修正: "なし" 「smtp_auth」のパラメータは、指令;このバグは1.5.6に登場しました。 Svyatoslav Nikolskyに感謝します。
バージョン1.6.0の新機能:
この安定版には、さまざまなSSLの改良、SPDY 3.1のサポート、条件付き要求によるキャッシュ再検証、認証要求モジュールなど、1.5.xメインラインブランチの多くの新機能が組み込まれています。
セキュリティ:ngx_http_spdy_moduleによって特別に細工されたリクエストを処理しているときに、ヒープメモリバッファのオーバーフローがワーカープロセスで発生する可能性があり、結果として任意のコードが生成される可能性があります。
バージョン1.4.7の新機能実行(CVE-2014-0133)。アルゼンチンのブエノスアイレスにあるFundacion Dr. Manuel SadoskyのPrograma STICの研究員Lucas Molasに感謝します。
バグ修正: "fastcgi_next_upstream"指令。 Lucas Molasに感謝します。
バージョン1.4.6の新機能:
Bugfix: "client_max_body_size"チャンクされた転送エンコーディングを使用して要求本体を読み取るときにディレクティブが機能しないことがあります。そのバグは1.3.9に現れました。 Lucas Molasに感謝します。
バグ修正:WebSocket接続をプロキシする際にワーカープロセスでセグメンテーションエラーが発生することがあります。
バージョン1.4.5の新機能:
バグ修正:$ ssl_session_id変数には、セッションIDの代わりに完全なセッションがシリアライズされています。 Ivan Risticに感謝します。
バグ修正:遅延受付を使用した場合、クライアント接続がすぐに終了することがあります。そのバグは1.3.15に現れました。
バグ修正:アラート"出力のゼロサイズbuf"プロキシ処理中にログに記録されることがあります。そのバグは1.3.9に現れました。
バグ修正:ngx_http_spdy_moduleが使用された場合、ワーカープロセスでセグメンテーションエラーが発生することがあります。
バグ修正:select、poll、または/ dev / pollメソッドが使用された場合、プロキシされたWebSocket接続がハンドシェイクの直後にハングアップする可能性があります。
バグ修正:チャンクされた転送エンコーディングを使用してSSL接続でクライアント要求本文を読み取る際に、タイムアウトが発生することがあります。
バグ修正:nginx / Windowsのメモリリーク
バージョン1.4.4の新機能:
このリリースでは、GoogleのIvan Fratricによって発見されたnginx 0.8.41 - 1.5.6の要求ライン解析脆弱性に対する修正が導入されていますセキュリティチーム(CVE-2013-4547)
バージョン1.5.0の新機能:
セキュリティ:特別に細工された要求を処理している間にワーカープロセスでスタックベースのバッファオーバーフローが発生し、任意のコードが実行される可能性があります(CVE-2013-2028)。そのバグは1.3.9に現れました。 Greg MacManus、iSIGHT Partners Labに感謝します。
コメントが見つかりません