Выпуск Angie 1.4.0, российского Ρ„ΠΎΡ€ΠΊΠ° Nginx

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ HTTP-сСрвСра ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ прокси-сСрвСра Angie 1.4.0, ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΎΡ‚ Nginx Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ Π±Ρ‹Π²ΡˆΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΡƒΠ²ΠΎΠ»ΠΈΠ²ΡˆΠΈΡ…ΡΡ ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ F5 Network. Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ тСксты Angie доступны ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ BSD. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» сСртификаты совмСстимости с российскими ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ систСмами Π Π΅Π΄ ОБ, Astra Linux Special Edition, Роса Π₯Ρ€ΠΎΠΌ 12 Π‘Π΅Ρ€Π²Π΅Ρ€, ΠΠ»ΡŒΡ‚ ΠΈ ЀБВЭК-вСрсии ΠΠ»ΡŒΡ‚.

Π‘ΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ занимаСтся компания «Π’Π΅Π±-сСрвСр», образованная ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ осСнью ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠ°Ρ инвСстиции Π² Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅ 1 ΠΌΠ»Π½ Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ². Π‘Ρ€Π΅Π΄ΠΈ ΡΠΎΠ²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π’Π΅Π±-сСрвСр: Π’Π°Π»Π΅Π½Ρ‚ΠΈΠ½ Π‘Π°Ρ€Ρ‚Π΅Π½Π΅Π² (Π»ΠΈΠ΄Π΅Ρ€ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Ρ€Π°Π·Π²ΠΈΠ²Π°Π²ΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Nginx Unit), Иван ΠŸΠΎΠ»ΡƒΡΠ½ΠΎΠ² (Π±Ρ‹Π²ΡˆΠΈΠΉ Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ фронтэнд-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Rambler ΠΈ Mail.Ru), ОлСг ΠœΠ°ΠΌΠΎΠ½Ρ‚ΠΎΠ² (Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‚Π΅Ρ…ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ NGINX Inc) ΠΈ Руслан Π•Ρ€ΠΌΠΈΠ»ΠΎΠ² ([email protected]).

ИзмСнСния Π² выпускС Angie 1.4.0:

  • Π’ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ http_proxy Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP/3 ΠΏΡ€ΠΈ соСдинСнии с Π²Ρ‹ΡˆΠ΅ΡΡ‚ΠΎΡΡ‰ΠΈΠΌΠΈ проксируСмыми сСрвСрами (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° HTTP/3 для клиСнтских соСдинСний присутствуСт Π² Angie с вСрсии 1.2.0). Для настройки проксируСмых соСдинСний Π½Π° Π±Π°Π·Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² HTTP/3 ΠΈ Quic доступны Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ proxy_http_version, proxy_quic_* ΠΈ proxy_http3_*.

    HTTP/3 опрСдСляСт использованиС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° QUIC (Quick UDP Internet Connections) Π² качСствС транспорта для HTTP/2. QUIC прСдставляСт собой надстройку Π½Π°Π΄ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ UDP, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΡƒΡŽ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… соСдинСний ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ, эквивалСнтныС TLS/SSL. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π±Ρ‹Π» создан Π² 2013 Π³ΠΎΠ΄Ρƒ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Google Π² качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ связкС TCP+TLS для Web, Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с большим Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ установки ΠΈ согласования соСдинСний Π² TCP ΠΈ ΡƒΡΡ‚Ρ€Π°Π½ΡΡŽΡ‰Π΅ΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΡ‚Π΅Ρ€Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² процСссС ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

  • Из рСпозитория ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° nginx пСрСнСсСны измСнСния, накопившиСся Π² nginx 1.25.3.
  • Π’ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ «server», ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡƒΡŽ Π² Π±Π»ΠΎΠΊΠ΅ настроСк «upstream», Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция «slow_start» для ΠΏΠ»Π°Π²Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° проксируСмого сСрвСра Π² Ρ€Π°Π±ΠΎΡ‚Ρƒ послС сбоя. ΠžΠΏΡ†ΠΈΡ Π·Π°Π΄Π°Ρ‘Ρ‚ врСмя восстановлСния вСса сСрвСра, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ послС сбоя, ΠΏΡ€ΠΈ использовании балансировки Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «round-robin» ΠΈΠ»ΠΈ «least_conn».
  • Π’ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ «stream» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° «mqtt_preread», ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚Π° CONNECT ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° MQTT ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡŽΡ‚ΡΡ имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, послС Ρ‡Π΅Π³ΠΎ ΠΎΠ½ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ $mqtt_preread_username ΠΈ $mqtt_preread_clientid.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° «mp4_limit_rate» для ограничСния скорости ΠΎΡ‚Π΄Π°Ρ‡ΠΈ MP4-Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ Π±ΠΈΡ‚Ρ€Π΅ΠΉΡ‚Ρƒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° «mp4_limit_rate_after» для опрСдСлСния Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π΄ΠΎ достиТСния ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ примСняСтся ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅.
  • Π‘Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ для дистрибутива Alpine Linux 3.19.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ динамичСски Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ «angie-module-auth-ldap» для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ с использованиСм LDAP.
  • ΠžΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ вСрсии ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ angie-module-headers-more 0.36, angie-module-ndk 0.3.3 ΠΈ angie-module-opentracing 0.33.0.
  • ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ ΠΊΠΎΠ΄ модуля Console Light с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ интСрфСйса для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° активности Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΌ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСрвСра.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ‚ angie-module-modsecurity для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с WAF-систСмой (Web Application Firewall) ModSecurity, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ для блокирования ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ спСктра Π°Ρ‚Π°ΠΊ Π½Π° web-прилоТСния.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru