Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

Wie erstelle und installiere ich die neueste cURL-Version unter CentOS und Ubuntu?

curl
Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Möchten Sie die neueste cURL aus der Quelle erstellen?

Die mit dem Betriebssystem gelieferte cURL ist möglicherweise nicht auf dem neuesten Stand. Wenn Sie die neueste Version für eine bestimmte Anforderung benötigen, müssen Sie aus der Quelle erstellen.

In letzter Zeit habe ich getestet HTTP / 3 Verwenden von cURL mit der Standardversion unter CentOS, aber das hat nicht funktioniert. Übrigens können Sie noch mehr tun cURL.

[root@lab ~]# curl --version
curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.44 zlib/1.2.7 libidn/1.28 libssh2/1.8.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet <a href="https://geekflare.com/tftp-servers-for-windows/">tftp</a> 
Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets 
[root@lab ~]#

Die neueste cURL-Version (7.67) unterstützt jedoch HTTP / 3. Ich hatte also nur eine Option - aus der Quelle erstellen. Dies ist nur ein Beispiel; Möglicherweise haben Sie andere Anforderungen.

Das folgende Beispiel ist für 7.67 (spätestens während ich schreibe) unter CentOS 8.x und Ubuntu 20.x. Das Verfahren bleibt jedoch für jede andere Version gleich.

Prerequisite

Lassen Sie uns die erforderlichen Abhängigkeiten installieren.

  • Aktualisieren Sie das System. Obwohl dies optional ist, bevorzuge ich dies. Ich habe immer aktuelle Pakete installiert.
yum update -y
  • Installieren der erforderlichen Pakete
yum install wget gcc openssl-devel -y
  • Laden Sie die neueste cURL-Quelle herunter - Sie können sich auf deren beziehen offizielle Download-Seite um die neueste Version zu kennen.
wget https://curl.haxx.se/download/curl-7.67.0.tar.gz
  • Extrahieren Sie die heruntergeladenen gz Datei
gunzip -c curl-7.67.0.tar.gz | tar xvf -

Es würde einen neuen Ordner im aktuellen Arbeitsverzeichnis erstellen

Building cURL on CentOS/RHEL

Sobald Sie die neueste cURL heruntergeladen und extrahiert haben, ist es Zeit, sie zu erstellen.

  • Gehen Sie nach dem Extrahieren in den neu erstellten Ordner
cd curl-7.67.0
  • Konfigurieren Sie mit SSL wie folgt
./configure --with-ssl
  • Sie sehen eine Ausgabe wie unten.
configure: Configured to build curl/libcurl:

  Host setup:       x86_64-pc-linux-gnu
  Install prefix:   /usr/local
  Compiler:         gcc
   CFLAGS:          -Werror-implicit-function-declaration -O2 -Wno-system-headers -pthread
   CPPFLAGS:        
   LDFLAGS:         
   LIBS:            -lssl -lcrypto -lssl -lcrypto -lz

  curl version:     7.67.0
  SSL:              enabled (OpenSSL)
  SSH:              no      (--with-libssh2)
  zlib:             enabled
  brotli:           no      (--with-brotli)
  GSS-API:          no      (--with-gssapi)
  TLS-SRP:          no      (--enable-tls-srp)
  resolver:         POSIX threaded
  IPv6:             enabled
  Unix sockets:     enabled
  IDN:              no      (--with-{libidn2,winidn})
  Build libcurl:    Shared=yes, Static=yes
  Built-in manual:  enabled
  --libcurl option: enabled (--disable-libcurl-option)
  Verbose errors:   enabled (--disable-verbose)
  Code coverage:    disabled
  SSPI:             no      (--enable-sspi)
  ca cert bundle:   /etc/pki/tls/certs/ca-bundle.crt
  ca cert path:     no
  ca fallback:      no
  LDAP:             no      (--enable-ldap / --with-ldap-lib / --with-lber-lib)
  LDAPS:            no      (--enable-ldaps)
  RTSP:             enabled
  RTMP:             no      (--with-librtmp)
  Metalink:         no      (--with-libmetalink)
  PSL:              no      (libpsl not found)
  Alt-svc:          no      (--enable-alt-svc)
  HTTP2:            disabled (--with-nghttp2)
  HTTP3:            disabled (--with-ngtcp2, --with-quiche)
  ESNI:             no      (--enable-esni)
  Protocols:        DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS POP3 POP3S RTSP SMB SMBS SMTP SMTPS TELNET TFTP
  Features:         SSL IPv6 UnixSockets libz AsynchDNS NTLM NTLM_WB HTTPS-proxy
  • Lassen Sie uns sie installieren
make
make install

Es dauert einige Sekunden, bis der Vorgang abgeschlossen ist. Sie können die Version überprüfen, um sicherzustellen, dass sie erfolgreich installiert wurde.

Building cURL on Ubuntu

Ich gehe davon aus, dass Sie die neueste Version heruntergeladen haben, wie im Abschnitt "Voraussetzungen" erläutert.

  • Wechseln Sie in den Ordner, in den die heruntergeladene cURL extrahiert wird
  • Installieren Sie die Abhängigkeiten
apt-get install -y binutils-common binutils make
  • Wenn Sie die oben genannten Abhängigkeiten (binutils) nicht installiert haben, wird möglicherweise der folgende Fehler angezeigt.
configure: error: ar not found in PATH. Cannot continue without ar.
  • Und es ist Zeit, jetzt mit dem zu bauen configure Befehl.
./configure --with-ssl
  • Wenn bei der obigen Ausführung kein Fehler aufgetreten ist, installieren Sie ihn schließlich mit dem Befehl make.
make 
make install

Das ist alles!

Verification

Nutzen Sie den --version um die Versionsdetails zu sehen.

# curl --version
curl 7.67.0 (x86_64-pc-linux-gnu) libcurl/7.67.0 OpenSSL/1.0.2k-fips zlib/1.2.7
Release-Date: 2019-11-06
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL UnixSockets
#

Conclusion

Sie sehen, es ist einfach, wenn Sie die Schritte haben. Ich hoffe, dies hilft Ihnen bei der Installation von cURL von der Quelle.

Danke an unsere Sponsoren
Weitere großartige Lektüre zu Linux
Treiben Sie Ihr Geschäft an
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder