Pojawia się nowa wersja curl 7.66.0 z początkową obsługą HTTP / 3

cURL-7.66.0

cURL to projekt oprogramowania składający się z biblioteki (libcurl) i muszlę (curl) zorientowany na przesyłanie plików. Obsługuje między innymi protokoły FTP, FTPS, HTTP, HTTPS, TFTP, SCP, SFTP, Telnet, DICT, FILE i LDAP.

cURL obsługuje certyfikaty HTTPS, HTTP POST, HTTP PUT, Przesyłanie FTP, Kerberos, przesyłanie formularzy HTTP, proxy, cookies, uwierzytelnianie nazwy użytkownika i hasła (Basic, DIgest, NTLM i Negotiate dla HTTP i kerberos 4 dla FTP), kontynuacja transferu plików, tunelowanie proxy HTTP, IMAP, POP3, LDAP, RTSP, RTMP i inne korzyści.

Głównym celem i zastosowaniem cURL jest automatyzacja przesyłania plików lub nienadzorowane sekwencje operacji. Jest to na przykład ważne narzędzie do symulacji działań użytkowników w przeglądarce internetowej.

W zasadzie jest to narzędzie do odbierania i wysyłania danych przez sieć, który zapewnia możliwość elastycznego tworzenia żądania poprzez ustawienie parametrów takich jak cookie, user_agent, referer i każdy inny nagłówek.

Poza tym biblioteka libcurl zapewnia API do używania wszystkich funkcji curl w programach w językach takich jak C, Perl, PHP, Python.

cURL jest otwartym, bezpłatnym oprogramowaniem rozpowszechnianym na licencji MIT.

Informacje o nowej wersji cURL 7.66.0

Ostatnio została wydana nowa wersja cURL lktóry osiąga z poprawką 77 błędów i wdraża kilka innowacji, wśród których zaznaczono dodanie wstępnej obsługi protokołu HTTP / 3, który nie został jeszcze doprowadzony do w pełni funkcjonalnej postaci i jest domyślnie wyłączony (na przykład, dopóki program obsługi zakończenia połączenia nie będzie gotowy, zrównoleglenie i przetwarzanie dużych żądań nie działają).

Aby włączyć HTTP 3, wymagana jest przebudowa za pomocą quiche lub ngtcp2 + nghttp3. Proponuje się użycie parametru «–http3» i opcji libcurl «CURLOPT_HTTP_VERSION»;

Inną ważną zmianą w tej nowej wersji cURL jest to dodano parametry „-Z” („–parallel”) i „–parallel-max”, która umożliwia organizowanie jednoczesnego ładowania listy adresów URL w wiele sekwencji.

Dodano możliwość ustawienia innego identyfikatora autoryzacji w SASL, określonego przez parametr „–sasl-authzid” lub opcję CURLOPT_SASL_AUTHZID (identyfikator uwierzytelniania jest przekazywany przez CURLOPT_USERPWD).

Przetwarzanie Retry-After HTTP i 429 kodu powrotnego zostało zaimplementowane przy użyciu parametru „–retry” lub opcji CURLINFO_RETRY_AFTER.

Nagłówek Retry-After określa opóźnienie przed wysłaniem kolejnych żądań w przypadku otrzymania kodów odpowiedzi 429 (zbyt wiele żądań), 503 (usługa niedostępna) lub 301 (trwale przeniesiona).

Spośród innych zmian, które wyróżniają się w nowej wersji:

  • Dodano funkcję curl_multi_poll (), identyczną jak curl_multi_wait (), z wyjątkiem sytuacji, gdy nie ma deskryptorów plików do oczekiwania (curl_multi_wait kończy działanie natychmiast, a curl_multi_poll wprowadza krótkie opóźnienie przed zakończeniem, aby uniknąć fałszywych sytuacji ładowania z powodu cyklicznego wywołania)
  • Począwszy od tej wersji, curl będzie domyślnie uznawać te odpowiedzi HTTP za nieważne
  • Naprawione luki w zabezpieczeniach: CVE-2019-5481: podwójna blokada wolnej pamięci w FTP-KRB (kerberos przez FTP); CVE-2019-5482: przepełnienie bufora w sterowniku TFTP.
  • Naprawiono regresję, która powodowała, że ​​curl nie używał poprawnie danych logowania adresu URL podczas przeprowadzania uwierzytelniania wielostopniowego (takiego jak HTTP Digest) za pomocą serwera proxy.

Jak zainstalować cURL w systemie Linux?

Dla tych, którzy są zainteresowani możliwością zainstalowania nowej wersji cURL Mogą to zrobić, pobierając kod źródłowy i kompilując go.

W tym celu pierwszą rzeczą, którą zamierzamy zrobić, jest pobranie ostatniego pakietu cURL za pomocą terminala, w tym wpiszmy:

wget https://curl.haxx.se/download/curl-7.66.0.tar.xz

Następnie rozpakujemy pobrany pakiet za pomocą:

tar -xzvf curl-7.66.0.tar.xz

Do nowo utworzonego folderu wchodzimy za pomocą:

cd curl-7.66.0

Wchodzimy jako root z:

sudo su

I wpisujemy:

./configure --prefix=/usr \
--disable-static \
--enable-threaded-resolver \
--with-ca-path=/etc/ssl/certs &&
make
make install &&
rm -rf docs/examples/.deps &&
find docs \( -name Makefile\* -o -name \*.1 -o -name \*.3 \) -exec rm {} \; &&
install -v -d -m755 /usr/share/doc/curl-7.66.0 &&
cp -v -R docs/* /usr/share/doc/curl-7.66.0

Wreszcie możemy sprawdzić wersję za pomocą:

curl --version

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.