Nginx 1.16.0 хувилбарыг гарга

Жилийн хөгжлийн дараа танилцуулсан өндөр хүчин чадалтай HTTP сервер болон олон протокол прокси серверийн шинэ тогтвортой салбар nginx 1.16.0 хувилбартай, үндсэн салбар дотор хуримтлагдсан өөрчлөлтийг шингээсэн 1.15.x. Ирээдүйд тогтвортой салбар 1.16 дахь бүх өөрчлөлт нь ноцтой алдаа, эмзэг байдлыг арилгахтай холбоотой байх болно. Удахгүй nginx 1.17-ийн үндсэн салбар байгуулагдах бөгөөд үүний хүрээнд шинэ функцуудыг хөгжүүлэх ажил үргэлжлэх болно. Гуравдагч талын модулиудтай нийцтэй байдлыг хангах үүрэггүй энгийн хэрэглэгчдийн хувьд, санал болгож байна үндсэн салбарыг ашигла, үүний үндсэн дээр арилжааны бүтээгдэхүүний Nginx Plus-ийг гурван сар тутамд гаргадаг.

1.15.x дээд талын салбарыг хөгжүүлэх явцад нэмсэн хамгийн гайхалтай сайжруулалтууд:

  • ' удирдамжид хувьсагчийг ашиглах чадварыг нэмсэнssl_certificate'и'ssl_certificate_key', гэрчилгээг динамикаар ачаалахад ашиглаж болно;
  • Завсрын файл ашиглахгүйгээр хувьсагчдаас SSL сертификат болон нууц түлхүүрүүдийг ачаалах боломжийг нэмсэн;
  • блок дотор"дээд» шинэ удирдамж хэрэгжсэн «Санамсаргүй", үүний тусламжтайгаар та холболтыг дамжуулах серверийг санамсаргүй сонгох замаар ачааллын тэнцвэрийг зохион байгуулж болно;
  • Модульд ngx_stream_ssl_preread хувьсагч хэрэгжсэн $ssl_preread_protocol,
    Энэ нь үйлчлүүлэгчийн дэмждэг SSL/TLS протоколын хамгийн дээд хувилбарыг тодорхойлдог. Хувьсагч нь зөвшөөрдөг тохиргоог бий болгох http болон урсгал модулиудыг ашиглан траффикийг прокси хийхдээ нэг сүлжээний портоор дамжуулан SSL-тэй болон SSL-гүй янз бүрийн протоколуудыг ашиглан хандах. Жишээлбэл, нэг портоор дамжуулан SSH болон HTTPS-ээр нэвтрэх хандалтыг зохион байгуулахын тулд 443 портыг SSH руу өгөгдмөл байдлаар дамжуулж болох боловч SSL хувилбарыг тодорхойлсон бол HTTPS руу шилжүүлнэ.

  • Дээд талын модульд шинэ хувьсагч нэмэгдсэн "$дээд_байт_илгээсэн", бүлгийн сервер рүү шилжүүлсэн байтуудын тоог харуулдаг;
  • Модуль руу урсгал нэг сесс дотор үйлчлүүлэгчээс ирж буй хэд хэдэн UDP датаграммыг боловсруулах чадвар нэмэгдсэн;
  • удирдамж"прокси_хүсэлт", үйлчлүүлэгчээс хүлээн авсан датаграмын тоог зааж өгдөг бөгөөд үүнд хүрэхэд үйлчлүүлэгч болон одоо байгаа UDP сесс хоорондын холболт арилдаг. Заасан тооны датаграммыг хүлээн авсны дараа ижил үйлчлүүлэгчээс хүлээн авсан дараагийн датаграм шинэ сессийг эхлүүлнэ;
  • Сонсох заавар нь одоо портын мужийг тодорхойлох чадвартай болсон;
  • Заавар нэмсэн "ssl_early_data» горимыг идэвхжүүлнэ үү 0-RTT TLSv1.3-ийг ашиглах үед, энэ нь өмнө нь тохиролцсон TLS холболтын параметрүүдийг хадгалах, өмнө нь тогтоосон холболтыг сэргээх үед RTT-ийн тоог 2 болгон бууруулах боломжийг олгодог;
  • Гарах холболтод зориулж keepalive-г тохируулах шинэ удирдамж нэмэгдсэн (сокетуудад SO_KEEPALIVE сонголтыг идэвхжүүлэх эсвэл идэвхгүй болгох):

    • «proxy_socket_realive" - прокси сервер рүү гарах холболтын "TCP хадгалах" горимыг тохируулна;
    • «fastcgi_socket_keepalive" - FastCGI сервер рүү гарах холболтын "TCP keepalive" горимыг тохируулдаг;
    • «grpc_socket_keealive" - gRPC сервер рүү гарах холболтын "TCP-н хадгалалт" горимыг тохируулна;
    • «memcached_socket_keepalive" - memcach-тэй сервер рүү гарах холболтын "TCP keepalive" горимыг тохируулдаг;
    • «scgi_socket_keealive" - SCGI сервер рүү гарах холболтын "TCP keepalive" горимыг тохируулдаг;
    • «uwsgi_socket_ealive" - uwsgi сервер рүү гарах холболтын "TCP-ийг хадгалах" горимыг тохируулна.
  • удирдамжид"хязгаар_хэрэгцээ" "саатал" гэсэн шинэ параметрийг нэмсэн бөгөөд энэ нь илүүдэл хүсэлтийг хойшлуулсны дараа хязгаарыг тогтоодог;
  • Keepalive-д хязгаарлалт тогтоохын тулд "дээд урсгал" блок дээр "keepalive_timeout" болон "keepalive_requests" шинэ удирдамжууд нэмэгдсэн;
  • "Ssl" зааврыг цуцалсан бөгөөд "сонсох" зааврын "ssl" параметрээр сольсон. Тохиргоо доторх "ssl" параметртэй "сонсох" удирдамжийг ашиглах үед дутуу SSL сертификатууд одоо тохиргооны туршилтын шатанд илэрсэн;
  • Reset_timedout_connection удирдамжийг ашиглах үед хугацаа дуусахад холболтууд одоо 444 кодоор хаагдана;
  • SSL алдаа "http хүсэлт", "https прокси хүсэлт", "дэмжигдээгүй протокол" болон "хэт бага хувилбар" нь одоо "crit"-ийн оронд "info" түвшний "мэдээлэл" бүхий бүртгэлд харагдана;
  • Windows Vista болон түүнээс хойшхи хувилбаруудыг ашиглах үед Windows систем дээрх санал асуулгын аргын дэмжлэгийг нэмсэн;
  • Хэрэглэх боломж TLSv1.3 Зөвхөн OpenSSL биш BoringSSL номын сангаар бүтээхдээ.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх