Rumah >Tutorial sistem >LINUX >Cara memasang curl dengan backend gnutls di debian
Apabila anda memasang Curl menggunakan Pengurus Pakej Lalai dalam pengagihan Linux seperti Debian, ia biasanya datang sebelum disusun dengan OpenSSL sebagai backend TLS. Kerana hampir setiap pengedar/pembungkus curl membina curl dengan backend OpenSSL . Menukar kepada backend TLS yang berbeza tidak semudah itu memilih pilihan yang berbeza, tetapi mungkin. Dalam tutorial langkah demi langkah ini, kami akan melihat cara memasang Curl dengan backend Gnutls di Debian.
Sebelum masuk ke dalam topik, izinkan saya memberikan pengenalan ringkas kepada backend TLS dan senarai backends TLS yang disokong oleh Curl.
Jadual Kandungan
Apabila anda menyusun curl dari sumber, ia memerlukan cara untuk mengendalikan Sambungan Secure (HTTPS). Ini dilakukan melalui backend TLS. TLS (keselamatan lapisan pengangkutan) adalah penting untuk komunikasi yang selamat melalui rangkaian.
Curl menyokong pelbagai perpustakaan TLS atau backends. Inilah senarai backend yang disokong:
Amissl adalah pelaksanaan SSL/TLS untuk sistem AmigaOS. Ia tidak biasa digunakan melainkan anda sedang membangun untuk platform Amiga. Untuk menyusun curl dengan Amissl, anda boleh menggunakan-dengan pilihan-amissl.
Bearssl adalah perpustakaan SSL/TLS yang lebih kecil dan lebih fokus. Ia direka untuk menjadi ringan dan sesuai untuk sistem tertanam. Untuk memasang Curl dengan Bearssl, gunakan-dengan pilihan-pilihan.
GNUTLS adalah perpustakaan komunikasi yang selamat yang melaksanakan protokol SSL, TLS, dan DTLS. Ia adalah alternatif sumber terbuka yang popular untuk OpenSSL. Untuk memasang curl dengan gnutls, anda boleh menggunakan-dengan pilihan-pilihan.
MBED TLS (dahulunya dikenali sebagai PolarsSL) adalah sumber terbuka, mudah alih, mudah digunakan, boleh dibaca dan fleksibel perpustakaan SSL. Ia sering digunakan dalam sistem tertanam dan peranti IoT. Untuk memasang curl dengan TLS MBED, gunakan-dengan-mbedtls.
OpenSSL adalah salah satu perpustakaan TLS yang paling banyak digunakan. Pilihan ini juga berfungsi untuk Boringssl (Google's Fork of OpenSSL) dan Libressl (OpenBSD's Fork of OpenSSL). Anda boleh menggunakan-With-Openssl untuk memasang Curl dengan OpenSSL.
Rustls adalah perpustakaan TLS moden yang ditulis dalam karat. Ia bertujuan untuk menyediakan pelaksanaan yang lebih selamat dan lebih cekap. Untuk memasang curl dengan karat, gunakan-dengan-rustls.
Schannel adalah penyedia sokongan keselamatan (SSP) untuk sistem operasi Windows. Ia digunakan semasa membina curl untuk platform Windows. Untuk memasang curl dengan schannel, gunakan-dengan saluran.
Pengangkutan selamat adalah pelaksanaan TLS Apple. Pilihan ini digunakan semasa membina curl untuk macOS atau iOS. Kami boleh memasang curl dengan backend pengangkutan yang selamat menggunakan-dengan pilihan pengangkutan-pengangkutan.
Wolfssl (dahulunya Cyassl) adalah perpustakaan SSL/TLS berasaskan bahasa yang ringan, mudah alih, C-bahasa yang disasarkan di persekitaran IoT, Embedded, dan RTOS. Untuk memasang Curl dengan Wolfssl, gunakan-with-wolfssl.
Untuk menyusun curl dengan backend TLS tertentu, anda biasanya akan menggunakan skrip. Contohnya:
./configure --with-openssl
Perintah ini mengkonfigurasi curl untuk menggunakan OpenSSL sebagai backend TLS. Gantikan OpenSSL dengan pilihan backend pilihan anda dari senarai di atas.
Debian sebenarnya menyediakan dua versi libcurl : satu dibina dengan OpenSSL dan satu lagi dengan Gnutls . Alat baris perintah curl biasanya menghubungkan terhadap versi OpenSSL secara lalai, tetapi anda boleh menggunakan versi GNUTLS sebaliknya.
Marilah kita periksa versi curl menggunakan arahan dalam Debian 12:
$ curl -v
Output Contoh :
Curl 8.8.0 (x86_64-pc-linux-gnu) libcurl/8.8.0<strong><mark> OpenSSL/3.0.13</mark> Zlib/1.2.13 Brotli/1.0.9 ZSTD/1.5.4 libidn2/2.3.3 libpsl/0.21.2 libssh2/1.10.0 nghttp2/1.52.0 librtmp/2.3 OpenLDAP/2.5.13 fail ftp ftps gopher gophers http https imap imap ipfs ipns ldap ldaps mqtt pop3 pop3s rtmp rtsp scp sftp smb smtp smtps telnet tftp ciri: alt-svc asynchdns brotli gss-apss-adss-apss hss-apss-apss gss-apss hss-atss-ap2 gsss-atss-ap2 gsss-ap2 Kerberos Largefile libz ntlm psl spnego ssl threadsafe tls-srp unixsockets zstd</strong>
Seperti yang anda lihat dalam output di atas, sistem Debian 12 saya mempunyai Curl 8.8.0 terkini dengan OpenSSL Backend.
Sekarang mari kita lihat bagaimana untuk menyusun curl dari sumber dengan gnutls menggunakan stow gnu . Bagi mereka yang tertanya -tanya, GNU Stow adalah salah satu cara yang disyorkan untuk memasang perisian terkini dari Sumber di Debian dan pengagihan Linux yang lain .
Pastikan anda mempunyai alat dan kebergantungan yang diperlukan:
Kemas kini sudo apt sudo apt pemasangan libgnutls28-dev stow-essential binaan
Muat turun curl terkini dari repositori github curl :
wget https://github.com/curl/curl/releases/download/curl-8_8_0/curl-8.8.0.tar.gz
Ekstrak kod sumber curl:
tar -xzvf curl -8.8.0.tar.gz
Perintah ini akan mengekstrak kandungan fail tar dalam direktori bernama Curl-8.8.0. CD ke dalam direktori:
CD Curl-8.8.0
Konfigurasikan binaan untuk menggunakan backend Gnutls menggunakan arahan:
./configure --with-gnutls --prefix =/usr/local/stow/curl-8.8.0
Jika direktori/usr/loca/stow tidak wujud, buatlah ia menggunakan arahan:
sudo mkdir -p/usr/local/stow
Sekali lagi, rerun perintah ./configure.
Jalankan arahan berikut untuk menyusun dan memasang curl menggunakan GNU Stow
buat sudo membuat pemasangan
CD ke direktori/usr/loca/stow dan buat symlink yang diperlukan:
CD/USR/Local/Stow Sudo Stow Curl-8.8.0
Mulakan semula sesi semasa anda dan sahkan bahawa curl menggunakan GNUTLS:
curl -version
Anda harus melihat Gnutls sebagai backend TLS baru.
Curl 8.8.0 (x86_64-pc-linux-gnu) libcurl/8.8.0<strong><mark> GNUTLS/3.7.9</mark> Zlib/1.2.13 Brotli/1.0.9 ZSTD/1.5.4 Libidn2/2.3.3 Siaran-tarikh: 2024-05-22 Protokol: Fil alt-svc asynchdns brotli hsts https-proxy idn ipv6 largefile libz ntlm ssl threadsafe tls-srp unixso ckets zstd</strong>
Seperti yang anda lihat dalam output di atas, Curl dikonfigurasi dengan GNUTLS v3.7.9 .
Jika anda menemui isu "ketegangan yang tidak terpenuhi" semasa cuba memasang Curl pada sistem Debian 12 anda atau perintah kemas kini Flatpak tidak berfungsi selepas menaik taraf curl dari backports, rujuk pautan berikut:
Dalam tutorial langkah demi langkah ini, kami membincangkan senarai backends TLS yang tersedia dan Howto memasang curl dengan backend GNUTL dari sumber menggunakan GNU Stow di Debian dan derivatifnya.
Jika anda belum sedar, Debian's Curl akan mendapat sokongan HTTP3. Untuk maklumat lanjut, rujuk pautan berikut:
Baca Berkaitan :
Atas ialah kandungan terperinci Cara memasang curl dengan backend gnutls di debian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!