libcrypto.so.1.0.0 : 사용 가능한 버전 정보가 없습니다 (ssh에 필요)


11

다음과 같은 오류가 발생합니다.

jalal@klein:~$ ssh -i "hyunwoo_key.pem" ubuntu@ec2-52-23-201-2.compute-1.amazonaws.com
ssh: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by ssh)
ssh: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by ssh)
OpenSSL version mismatch. Built against 1000207f, you have 100010bf

jalal@klein:~$ openssl version
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libssl.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libssl.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libssl.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by openssl)
WARNING: can't open config file: /_This_is_not_a_valid_path_/_setenv_OPENSSL_CONF_instead_/openssl.cnf
OpenSSL 1.0.2g  1 Mar 2016 (Library: OpenSSL 1.0.1k 8 Jan 2015)

이 두 명령을 실행했습니다.

sudo apt-get update
sudo apt-get upgrade

위의 명령을 실행할 때 여전히 동일한 오류가 발생합니다. 어떻게해야합니까? 이 버그에 대한 추가 정보가 필요한 경우 알려주십시오.

jalal@klein:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.1 LTS
Release:    16.04
Codename:   xenial

jalal@klein:~$ uname -a
Linux klein 4.4.0-38-generic #57-Ubuntu SMP Tue Sep 6 15:42:33 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

jalal@klein:~$ ssh -V
ssh: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by ssh)
ssh: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by ssh)
OpenSSH_7.2p2 Ubuntu-4ubuntu2.1, OpenSSL 1.0.1k 8 Jan 2015

jalal@klein:~$ locate libcrypto.so.1.0.0
/home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0
/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
/usr/local/MATLAB/R2015a/bin/glnxa64/libcrypto.so.1.0.0
/usr/local/MATLAB/R2016a/bin/glnxa64/libcrypto.so.1.0.0
/usr/local/MATLAB/R2016a/toolbox/compiler_sdk/mps_clients/c/glnxa64/lib/libcrypto.so.1.0.0

jalal@klein:~$ ldd /usr/bin/ssh
/usr/bin/ssh: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by /usr/bin/ssh)
/usr/bin/ssh: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by /usr/bin/ssh)
    linux-vdso.so.1 =>  (0x00007ffc0a3cb000)
    libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f070fcaf000)
    libcrypto.so.1.0.0 => /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0 (0x00007f070f8cb000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f070f6c7000)
    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f070f4ad000)
    libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f070f291000)
    libgssapi_krb5.so.2 => /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007f070f047000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f070ec7e000)
    libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f070ea0d000)
    /lib64/ld-linux-x86-64.so.2 (0x0000556886875000)
    libkrb5.so.3 => /usr/lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007f070e73b000)
    libk5crypto.so.3 => /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007f070e50c000)
    libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007f070e307000)
    libkrb5support.so.0 => /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007f070e0fc000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f070dedf000)
    libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007f070dcda000)

openssl을 제거하고 다시 설치했는데 여전히 같은 오류가 발생했습니다.

2065  sudo apt-get purge --auto-remove openssl
2066  sudo apt-get install openssl

또한 openssl 버전에 대해 다음이 있습니다.

jalal@klein:~$ openssl version
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libssl.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libssl.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libssl.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by openssl)
openssl: /home/jalal/computer_vision/MCR/v901/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by openssl)
WARNING: can't open config file: /_This_is_not_a_valid_path_/_setenv_OPENSSL_CONF_instead_/openssl.cnf
OpenSSL 1.0.2g  1 Mar 2016 (Library: OpenSSL 1.0.1k 8 Jan 2015)

답변:


11

어딘가에서 우분투 버전의 OpenSSL을 설치하셨습니까?

OpenSSL의 Ubuntu 버전에는 다른 곳에서 OpenSSL 버전을 얻는 경우 포함되지 않은 추가 패치가 설치되어 있습니다. 특히, 라이브러리에서 내 보낸 심볼은 Ubuntu OpenSSL에서는 관련 정보가 있지만 표준 OpenSSL은 아닙니다 (적어도 1.1.0 이전 버전에서는). 라이브러리에 버전이 지정된 기호가있을 것으로 예상되는 Ubuntu 제공 응용 프로그램을 실행하는 경우 "사용 가능한 버전 정보가 없습니다"경고가 표시되지만 실제로 선택하는 라이브러리 버전은 해당 버전이없는 기호가없는 비 우분투 버전입니다. . 그것은 일반적으로 작동하지만 그것에 대해 불평합니다.

다른 문제는 다음과 같습니다.

OpenSSL 1.0.2g  1 Mar 2016 (Library: OpenSSL 1.0.1k 8 Jan 2015)

OpenSSL 명령 줄 앱이 1.0.2g이지만 1.0.1k 라이브러리와 연결되어 있음을 알려줍니다. 이로 인해 충돌이 발생할 수 있습니다. 일반적으로 명령 행 앱과 라이브러리는 일치하는 버전을 사용해야합니다.

OpenSSL 1.0.2g 1 Mar 2016버전 의 비트는 표준 Ubuntu OpenSSL이보고하는 것입니다. OpenSSL 1.0.1k 8 Jan 2015비트의 OpenSSL 일부 비 우분투 버전에서오고있다.

문제를 해결하려면 비 우분투 OpenSSL이 어디에 있는지 파악하고 라이브러리 경로에서 제거하십시오.

이 시도:

ldd /usr/bin/openssl

나를 위해 그 보고서 :

linux-vdso.so.1 =>  (0x00007fff911a1000)
libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007fbf2c6e1000)
libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007fbf2c29d000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fbf2bed3000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fbf2bccf000)
/lib64/ld-linux-x86-64.so.2 (0x0000555f5c585000)

libssl 및 libcrypto의 위치에 특히주의하십시오. 그 위치는 우분투가 아닌 도서관이있는 곳이어야합니다.


1
정말 고마워! 내가 가지고 /usr/local/bin/libssl/usr/local/bin/libcrypto. 방금 제거했습니다. 이제 완벽하게 작동합니다.
Abdulsattar Mohammed

8

이 시도:

그것을 제거 rm /usr/local/MATLAB/R2015a/bin/glnxa64/libcrypto.so.1.0.0

확실하지 않은 경우 이름을 바꾸거나 이름을 바꾸십시오. mv /usr/local/MATLAB/R2015a/bin/glnxa64/libcrypto.so.1.0.0 /usr/local/MATLAB/R2015a/bin/glnxa64/libcrypto.so.1.0.0_bk


4
이것은 나를 위해 일하고을 사용 anaconda3하고 있으며 많은 공유 라이브러리를 제공하므로 문제가 발생합니다. 아마도 왜 이것을 삭제할 수 있는지 설명해 주시겠습니까? 가능한 단점이 있습니까 (더러운 해결책 인 것 같습니다)?
Gijs

2
나는 대답을 모른다. 그러나 나는 원래의 문제를 해결하는 동안 아나콘다를 깨뜨렸다 (패키지 등을 검색 할 수 없게되었다). 심볼릭 링크를 수정하여 수정해야했습니다.
벤 파머

이 답변은 원래 문제를 해결했지만 .git-remote-https.bin과 관련된 다른 오류가 발생했습니다. 기호 조회 오류 : libssl.so.1.0.0 : 정의되지 않은 기호. 따라서 나는이 행동을 뒤집어 놓았습니다.
maia

2

이 명령을 실행하여 경로를 확인하십시오 echo $LD_LIBRARY_PATH.

아나콘다를 설치하면이 경로가 추가됩니다 /home/<username>/anaconda3/lib. 이를 제거하고 시스템 라이브러리 경로를 추가하십시오 /usr/local/lib:/usr/lib. 대부분의 경우 당신은 개방 보낸 찾을 수 있습니다 vim ~/bashrc또는 vim ~/bash_profile사용할 때 올바른 버전을 선택해야 wget하거나 curl심지어위한 ssh.


2

Ubuntu 18.04 LTS에서 이전 버전의 PHP를 컴파일하는 프로젝트의 전제 조건으로 OpenSSL 1.0 버전을 컴파일 할 때 매우 비슷한 문제가 발생했습니다 .OpenSSL 1.1 패키지 만 제공됩니다.

OpenSSL의 이전 1.0 버전이 18.04 LTS 용 패키지로 제공되지 않았기 때문에 PHP 컴파일 프로세스를 위해 링크하기 전에 직접 다운로드하여 컴파일해야했으며 OpenSSL 1.0이라고 생각합니다. 컴파일 생성 /usr/local/lib/libcrypto.so.1.0.0 .

어떤 이유로 우분투 내장 SSH 서버 메인 실행 파일 / usr / sbin / sshd 는 시스템 기본값 / usr / lib / x86_64-linux 대신 /usr/local/lib/libcrypto.so.1.0.0 에 대한 링크를 시작했습니다. -gnu / libcrypto.so.1.0.0 . 시스템 SSHD 바이너리가 / usr / local / lib에서 먼저 libcrypto.so.1.0.0을 찾고 시스템 기본 위치를 찾지 않는 방식으로 컴파일되었을 수 있습니다.

나를위한 해결책 은 PHP 컴파일 프로세스가 완료된 후 단순히 /usr/local/lib/libcrypto.so.1.0.0 을 삭제하거나 제거 하는 것이 었습니다. PHP 컴파일이 완료된 후에는이 파일들이 더 이상 필요하지 않습니다. 나는 그렇게하고 재부팅했고 여전히 SSH를 통해 연결할 수 있었으므로 아무런 해를 끼치 지 않았다고 가정합니다.

이 솔루션이 다음과 같이 작동하는지 테스트 할 수 있어야합니다.

ldd /usr/sbin/sshd | grep libcrypto
mkdir ~/usrlocallib
mv /usr/local/lib/libcrypto.so.1.0.0 ~/usrlocallib
ldd /usr/sbin/sshd | grep libcrypto

첫 번째 LDD 명령이 다음을 리턴하는 경우 :

 libcrypto.so.1.0.0 => /usr/local/lib/libcrypto.so.1.0.0 (0x00007fdc9529d000)

두 번째 LDD 명령은 다음을 반환합니다.

 libcrypto.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007eff801b4000)

그런 다음 첫 번째 파일을 제거한 후 다른 파일을 자동으로 감지 했으므로 괜찮습니다.


나는 같은 상황에 처했다 (PHP 버전을 다른 OpenSSL 버전으로 컴파일하는 중). 나와 함께 git보고했다 /usr/bin/ssh: /usr/local/lib/libcrypto.so.1.0.0: no version information available (required by /usr/bin/ssh). (재)가 자식 출력 고정 일 👍 언급 파일 이동
Potherca

0

버전 정보를 얻으려면 이것을 실행하십시오- strings libssl.so.1.0.0 | grep "1\.0"

SSLv3 part of OpenSSL 1.0.2p-fips  14 Aug 2018
OpenSSL 1.0.2p-fips  14 Aug 2018
TLSv1 part of OpenSSL 1.0.2p-fips  14 Aug 2018
DTLSv1 part of OpenSSL 1.0.2p-fips  14 Aug 2018

0

이 질문이 오랫동안 만들어 졌음을 알고 있지만이 웹 페이지 에서이 문제에 대한 해결책을 찾았습니다 . 해결책은 저에게 효과적이며 당신에게도 효과가 있습니다. 다음 명령을 실행했습니다. libssl.so.1.0.0의 경우 :

  • sudo rm /usr/local/ssl/lib/libssl.so.1.0.0
  • sudo ln -s /lib/x86_64-linux-gnu/libssl.so.1.0.0 usr/local/ssl/lib/libssl.so.1.0.0

libcrypto.so.1.0.0의 경우 :

  • sudo rm /usr/local/ssl/lib/libcrypto.so.1.0.0
  • sudo ln -s /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /usr/local/ssl/lib/libcrypto.so.1.0.0

나는 오류의 원인이 무엇인지 정확히 알지 못하지만 동일한 이름을 가진 여러 라이브러리 파일의 존재와 관련이 있다고 생각합니다. 귀하의 경우 이름 libcrypto.so.1.0.0과 이름 libssl.so.1.0.0이 있는 여러 라이브러리 파일이 있습니다.


0

@ matt-caswell의 답변과 비슷하지만 내 nginx 문제에 더 구체적입니다.

/usr/local/openssl/lib/libcrypto.so.1.0.0: no version information available (required by /usr/sbin/nginx)

해결책:

  1. 나는 달리고 ldd /usr/bin/openssl다음을 얻었다.

    libssl.so.1.0.0 => /usr/local/openssl/lib/libssl.so.1.0.0 (0x00007f1eb7e91000)
    libcrypto.so.1.0.0 => /usr/local/openssl/lib/libcrypto.so.1.0.0 (0x00007f1eb7a36000)
    
  2. 이 두 파일은 nginx가 실행하기에 잘못되었습니다. 따라서 다음과 같이 제거하십시오.

    /usr/local/openssl/lib/libssl.so.1.0.0
    /usr/local/openssl/lib/libcrypto.so.1.0.0
    
  3. 컴퓨터를 재부팅하고 ldd /usr/bin/openssl다시 실행 하십시오.

    libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f40f5ee4000)
    libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f40f5a9f000)
    

해결!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.