Come eseguire un'installazione pulita di OpenSSL su El Capitan

1

Temo di aver fatto un casino con la versione (0.9.8zg) di OpenSSL che è stata installata sul mio Mac. Mentre cercavo di aggiornarlo, ora ho qualche errore e per alcune ragioni le applicazioni come Apache o Google Drive non funzionano più e nemmeno si avviano.

Vorrei sapere quale sarebbe il modo migliore per ripristinare openssl in una versione funzionante senza reinstallare l'intero sistema operativo.

Come posso farlo? Fino ad ora ho provato a scaricare openssl-0.9.8zg e a crearlo con ./config , make e make install ma non ha risolto il problema. Per favore aiutami se possibile.

Aggiornamento:

Ho scaricato openssl-0.9.8zg dal sito ufficiale e ho fatto quanto segue:

./Configure darwin64-x86_64-cc --prefix=/usr
make
sudo make install

Ora gli output dei comandi sono:

$ openssl version
OpenSSL 0.9.8zg 11 Jun 2015
$ which openssl
/usr/bin/openssl
$ /usr/bin/openssl version
OpenSSL 0.9.8zg 11 Jun 2015
$ openssl version -a
OpenSSL 0.9.8zg 11 Jun 2015
built on: Wed Dec 30 19:50:01 CET 2015
platform: darwin64-x86_64-cc
options:  bn(64,64) md2(int) rc4(ptr,char) des(idx,cisc,16,int) idea(int) blowfish(idx) 
compiler: cc -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -arch x86_64 -O3 -fomit-frame-pointer -DL_ENDIAN -DMD32_REG_T=int -Wall
OPENSSLDIR: "/usr/ssl"

Ancora il problema persiste.

Questi sono alcuni errori che ottengo: per esempio, quando provi ad avviare Apache, dice:

Syntax error on line 111 of /Applications/MAMP/conf/apache/httpd.conf: Cannot load /Applications/MAMP/Library/modules/mod_ssl.so into server: dlopen(/Applications/MAMP/Library/modules/mod_ssl.so, 10): Symbol not found: _SSLv2_client_method
Referenced from: /Applications/MAMP/Library/modules/mod_ssl.so
Expected in: /usr/lib/libssl.0.9.8.dylib in /Applications/MAMP/Library/modules/mod_ssl.so

ma libssl.0.9.8.dylib è presente in / usr / lib quindi non so perché / cosa non trova. È possibile risolvere questo problema?

O per esempio se eseguo brew install libssl , ottengo:

Error: dlopen(/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin15/openssl.bundle, 9): Symbol not found: _SSLv2_client_method Referenced from: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin15/openssl.bundle Expected in: /usr/lib/libssl.0.9.8.dylib in /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin15/openssl.bundle - /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin15/openssl.bundle

Inoltre Google Drive non verrà più avviato

    
posta Lory Lory 30.12.2015 - 19:02
fonte

1 risposta

2

Non sono sicuro che questa sia una soluzione completa, ma OPENSSLDIR punta al posto sbagliato. Inoltre, varie istruzioni per la compilazione includono l'opzione "condivisa".

Quindi prova questo e facci sapere come ti metti.

./Configure darwin64-x86_64-cc --prefix=/usr --openssldir=/System/Library/OpenSSL shared
make
sudo make install
    
risposta data 30.12.2015 - 20:34
fonte

Leggi altre domande sui tag