So führen Sie eine saubere Installation von OpenSSL auf El Capitan durch

Ich fürchte, ich habe mit der Version (0.9.8zg) von OpenSSL, die auf meinem Mac installiert war, ein Chaos angerichtet. Während ich versuchte, es zu aktualisieren, habe ich jetzt einen Fehler und aus bestimmten Gründen funktionieren Anwendungen wie Apache oder Google Drive nicht mehr und sie starten nicht einmal.

Ich würde gerne wissen, wie man openssl am besten auf eine funktionierende Version zurücksetzt, ohne das gesamte Betriebssystem neu zu installieren.

Wie kann ich das machen? Bisher habe ich versucht, openssl-0.9.8zges mit herunterzuladen und zu erstellen ./config, makeaber make installes hat das Problem nicht gelöst. Bitte helfen Sie mir, wenn möglich.

Aktualisieren:

Ich habe openssl-0.9.8zg von der offiziellen Seite heruntergeladen und Folgendes getan:

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

Jetzt sind die Befehlsausgaben:

$ 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"

Trotzdem besteht das Problem weiterhin.

Dies sind einige Fehler, die ich erhalte: Wenn Sie beispielsweise versuchen, Apache zu starten, heißt es:

Syntaxfehler in Zeile 111 von /Applications/MAMP/conf/apache/httpd.conf: Kann /Applications/MAMP/Library/modules/mod_ssl.so nicht in den Server laden: dlopen(/Applications/MAMP/Library/modules/mod_ssl.so , 10): Symbol nicht gefunden: _SSLv2_client_method
Referenziert von: /Applications/MAMP/Library/modules/mod_ssl.so
Erwartet in: /usr/lib/libssl.0.9.8.dylib in /Applications/MAMP/Library/modules/mod_ssl .So

aber libssl.0.9.8.dylib ist in /usr/lib vorhanden , also weiß ich nicht, warum/was es nicht findet. Ist es möglich, dies zu beheben?

Oder wenn ich zum Beispiel auftrete brew install libssl, bekomme ich:

Fehler: dlopen(/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin15/openssl.bundle, 9): Symbol nicht gefunden: _SSLv2_client_method Referenziert von: /System /Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin15/openssl.bundle Erwartet 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

Außerdem startet Google Drive nicht mehr

Bitte öffnen Sie ein neues Terminalfenster, führen Sie aus und openssl versionaktualisieren Sie Ihre Frage mit den Ergebnissen. which openssl/usr/bin/openssl version
@AlistairMcMillan: Fertig, ich habe sie gerade zu meiner Frage hinzugefügt
Entschuldigung, noch ein Befehl openssl version -a. Hast du den Systemintegritätsschutz (SIP) deaktiviert?
@AlistairMcMillan: fertig. Vielleicht ja ... Ich fürchte, ich hätte SIP deaktivieren können, aber ich kann mich nicht erinnern, warum ... vielleicht, um etwas zu installieren
Auch. Bitte aktualisieren Sie die Frage mit den tatsächlichen Fehlern, die Sie erhalten. :)

Antworten (1)

Ich bin mir nicht sicher, ob dies eine vollständige Lösung ist, aber OPENSSLDIR zeigt auf den falschen Ort. Außerdem enthalten verschiedene Kompilierungsanweisungen die Option "geteilt".

Probieren Sie es aus und lassen Sie uns wissen, wie es Ihnen geht.

./Configure darwin64-x86_64-cc --prefix=/usr --openssldir=/System/Library/OpenSSL shared
make
sudo make install
Ich habe die Fehlermeldung hinzugefügt, die ich bekomme. Ich probiere gleich aus, was du geschrieben hast. Vielen Dank für den Moment
Es scheint wirklich, du bist mein Retter! wirklich von herzen danke! Jetzt scheint alles wieder zu laufen, ich habe auch openssl-1.0.2emit den von dir geschriebenen Befehlen kompiliert und installiert. Danke schön. Darf ich noch zwei Dinge fragen? 1 - Wie kann ich mein MacBook bereinigen? Weil ich vorher viele Dinge ausprobiert habe und ich mir vorstelle, dass es eine Menge Mülldateien gibt ... 2 - Ich fürchte, ich habe den Mann deinstalliert. Wenn ich man somethinges ausführe, sagt es "Befehl nicht gefunden". Wie kann ich es wiederherstellen?
Schön, dass das geholfen hat. Ich würde wirklich empfehlen, SIP wieder einzuschalten. :) Am besten nehmen Sie keine Änderungen an Dingen vor, die mit dem Betriebssystem gebündelt sind. Wenn aus keinem anderen Grund als der Veröffentlichung von El Capitan 10.11.3 besteht eine gute Chance, dass sie die Dinge überschreiben, die Sie in /usr/bin installiert haben.
Zu Ihren anderen Fragen ... bitte protokollieren Sie sie als separate Fragen. Ich werde nach ihnen Ausschau halten und versuchen zu antworten, wenn ich kann. :)
Sie waren sehr nett zu mir, wie es nur wenige andere Menschen waren. Vielen Dank ... wenn Sie sich die "Männerfrage" ansehen möchten, finden Sie sie hier: apple.stackexchange.com/questions/221597/…