우분투 서버에 설치하는 소프트웨어의 경우 curl deb 패키지가 필요합니다. 설치하려고하면 libcurl4-dev
이것이 가상 패키지라고 말 libcurl4-gnutls-dev
하거나 또는를 설치해야합니다 libcurl4-nss-dev
. 하나를 설치하는 것의 차이점은 무엇입니까?
추신 : libcurl3 또는 libcurl4 설치 사이에 큰 차이가 있습니까?
답변
libcurl4-dev를 설치하려고하면 이것이 가상 패키지라고 말하며 libcurl4-gnutls-dev 또는 libcurl4-nss-dev를 설치해야합니다. 하나를 설치하는 것의 차이점은 무엇입니까?
둘 다 다른 라이브러리를 사용하여 동일한 기능을 제공합니다.
배경:
cURL 은 데이터 전송에 TLS ( Transport Layer Security) 사용을 지원합니다 . TLS 구현은 매우 까다롭기 때문에 cURL은이를 외부 라이브러리에 위임합니다. cURL은이 목적을 위해 여러 가지 다른 라이브러리를 지원하며이를 빌드 할 때 하나를 선택해야합니다 ( curl 및 libcurl 설치 방법 , “TLS 백엔드 선택”섹션 참조). TLS 라이브러리로 가장 널리 사용되는 옵션은 다음과 같습니다.
- OpenSSL (cURL의 기본값)
- 네트워크 보안 서비스 (NSS)
- GnuTLS
어떤 것을 선택 하는가는 여러 요소 (라이센스, 성능, 지원되는 암호화 알고리즘과 같은 정확한 기능 세트 등)에 따라 다르지만 모두 동일한 기능을 제공합니다.
우분투는 사람들이 사용하고자하는 cURL의 변형을 선택할 수 있기를 원하기 때문에 다른 TLS 라이브러리를 cURL로 다시 작성하여 별도의 패키지로 제공합니다. Ubuntu bionic (18.04LTS) 기준 변형은 다음과 같습니다.
- libcurl4-gnutls-dev
- libcurl4-nss-dev
- libcurl4-openssl-dev
따라서 사용하려는 TLS 라이브러리에 적합한 변형을 설치하십시오. 특정 환경 설정이없는 경우 OpenSSL을 사용하는 기본 변형을 설치하십시오.