설치된 OpenSSL 버전을 어떻게 알 수 있나요?

설치된 OpenSSL 버전을 어떻게 알 수 있나요?

Nginx의 오류 로그에는 일부 OpenSSL 핸드셰이크 오류가 표시되었으며, 원인을 검색하는 동안 사용 중인 OpenSSL 버전에 대한 출력이 혼란스럽다는 것을 발견했습니다.

Details:
Debian Jessie 8.7 64 Bit

# apt-cache policy openssl
openssl:
  Installed: 1.0.1t-1+deb8u6
  Candidate: 1.0.1t-1+deb8u6
  Version table:
     1.0.2k-1~bpo8+1 0
        100 http://ftp.debian.org/debian/ jessie-backports/main amd64 Packages
 *** 1.0.1t-1+deb8u6 0
        500 http://security.debian.org/ jessie/updates/main amd64 Packages
        100 /var/lib/dpkg/status
     1.0.1t-1+deb8u5 0
        500 http://mirror.hetzner.de/debian/packages/ jessie/main amd64 Packages
        500 http://http.debian.net/debian/ jessie/main amd64 Packages

# apt-cache policy nginx
nginx:
  Installed: 1.9.10-1~bpo8+4
  Candidate: 1.10.3-1~bpo8+1
  Version table:
     1.10.3-1~bpo8+1 0
        100 http://ftp.debian.org/debian/ jessie-backports/main amd64 Packages
 *** 1.9.10-1~bpo8+4 0
        100 /var/lib/dpkg/status
     1.6.2-5+deb8u4 0
        500 http://mirror.hetzner.de/debian/packages/ jessie/main amd64 Packages
        500 http://http.debian.net/debian/ jessie/main amd64 Packages
        500 http://security.debian.org/ jessie/updates/main amd64 Packages

# nginx -V
nginx version: nginx/1.9.10
built with OpenSSL 1.0.2j  26 Sep 2016 (running with OpenSSL 1.0.2k  26 Jan 2017)

# openssl version -a
OpenSSL 1.0.1t  3 May 2016 (Library: OpenSSL 1.0.2k  26 Jan 2017)

openssl 1.0.2knginx를 실행 하고 penssl version -a"라이브러리가 있습니다" OpenSSL 1.0.2k라고 말하지만 apt-cache policy openssl"이미 설치되었습니다"라고 표시 하려면 어떻게 해야 합니까 1.0.1t?

누군가 이것을 설명할 수 있나요?

답변1

이것openssl패키지에는 라이브러리가 아닌 프런트엔드 바이너리가 포함되어 있습니다. 귀하는 Jessie가 제공하는 이 패키지(및 해당 보안 업데이트)를 따르고 있습니다.

도서관 그 자체는libssl1.0.0, 그리고 해당 패키지의 Jessie 백포트를 추적하고 있습니다(Nginx도 마찬가지입니다. Nginx보다 몇 버전 뒤떨어져 있습니다). 이는 Nginx에서 사용되며 프런트 엔드에서 인식되는 라이브러리 버전입니다 openssl. 다음 명령을 사용하여 시스템의 라이브러리 버전을 확인할 수 있습니다.

apt-cache policy libssl1.0.0

(가능한 경우 최신 버전의 가용성도 포함)

답변2

nginx -V커널을 빌드하는 데 사용된 openssl 버전과 사용 중인 시스템의 버전도 표시되는 것 같습니다 .

관련 정보