Heim  >  Artikel  >  Backend-Entwicklung  >  Wie aktualisiere ich das mit dem Mac gelieferte OpenSSL? (Prozesszusammenfassung)

Wie aktualisiere ich das mit dem Mac gelieferte OpenSSL? (Prozesszusammenfassung)

不言
不言Original
2018-09-07 14:41:393296Durchsuche

Wie aktualisiere ich das mit dem Mac gelieferte OpenSSL? Der folgende Artikel stellt Ihnen den Upgrade-Prozess von OpenSSL vor, der mit dem Mac geliefert wird. Sie können ihn bei Bedarf nachschlagen.

Da das mit dem Mac gelieferte openssl zu alt ist, müssen Sie hier auf eine höhere Version aktualisieren, um das Python-Erweiterungspaket zu installieren. Lassen Sie uns also den Upgrade-Prozess zusammenfassen.

1. OpenSSL installieren

Werfen wir zunächst einen Blick auf unsere OpenSSL-Version und unser Verzeichnis:

->  ~ openssl version
OpenSSL 0.9.8zh 14 Jan 2016

->  ~ which openssl
/usr/bin/openssl
->  ~

Aus der obigen Überprüfung geht hervor, dass es auch unsere Versionsnummer ist niedrig.

Befolgen Sie die oben genannten Schritte. Wir aktualisieren zunächst die homebrew

brew update

-Installation:

brew install openssl

# 重新安装
# brew reinstall openssl

Nach erfolgreicher Installation:

~ brew reinstall openssl
==> Reinstalling openssl
==> Downloading https://homebrew.bintray.com/bottles/openssl-1.0.2p.el_capitan.bottle.tar.gz
Already downloaded: /Users/kaiyiwang/Library/Caches/Homebrew/downloads/96bc2acd84d0fe609dcbe4c6436c864808f7e8f26f2f12111f552f5972c3840a--openssl-1.0.2p.el_capitan.bottle.tar.gz
==> Pouring openssl-1.0.2p.el_capitan.bottle.tar.gz
==> Caveats
A CA file has been bootstrapped using certificates from the SystemRoots
keychain. To add additional certificates (e.g. the certificates added in
the System keychain), place .pem files in
  /usr/local/etc/openssl/certs

and run
  /usr/local/opt/openssl/bin/c_rehash

openssl is keg-only, which means it was not symlinked into /usr/local,
because Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries.

If you need to have openssl first in your PATH run:
  echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.zshrc

For compilers to find openssl you may need to set:
  export LDFLAGS="-L/usr/local/opt/openssl/lib"
  export CPPFLAGS="-I/usr/local/opt/openssl/include"

==> Summary
  /usr/local/Cellar/openssl/1.0.2p: 1,793 files, 12.2MB

zeigt an, dass wir erfolgreich installiert haben openssl Installieren auf /usr/local/Cellar/openssl/1.0.2p.

2. Ersetzen Sie das alte

Wir haben jedoch noch den letzten Schritt, das heißt, wenn wir OpenSSL verwenden, verwenden wir das neu heruntergeladene OpenSSL mit Homebrew. Um dieses Ziel zu erreichen, haben wir zwei Methoden.

Legen Sie das von Homebrew heruntergeladene OpenSSL 软链接 in das Verzeichnis /usr/bin/openssl. Hier speichern wir zunächst eine alte Kopie davon und verknüpfen dann die neu heruntergeladene per Softlink.

$ mv /usr/bin/openssl /usr/bin/openssl_old
mv: rename /usr/bin/openssl to /usr/bin/openssl_old: Operation not permitted
$ ln -s /usr/local/Cellar/openssl/1.0.2p/bin/openssl /usr/bin/openssl
ln: /usr/bin/openssl: Operation not permitted

Vorgang nicht zulässig zeigt an, dass keine Berechtigung zum Betrieb vorhanden ist. Ich bin mehrmals auf dieses Problem für Dinge im Verzeichnis /usr/bin gestoßen, also habe ich weiter gegoogelt und Operation Not Permitted when on root El capitan (rootless disabled) auf stackoverflow gefunden.

Starten Sie das System neu, drücken Sie gleichzeitig cmd+r, um in den Wiederherstellungsmodus zu gelangen, wählen Sie dann Dienstprogramme => Terminal, geben Sie den folgenden Befehl in das Terminal ein, sperren Sie das Dateisystem und starten Sie es neu Computer (cmd Nach +r gelangen Sie in eine andere Schnittstelle zur Auswahl des Systemstarts. Starten Sie in dieser Schnittstelle nicht sofort neu. Suchen Sie zuerst das Terminal und geben Sie csrutil deaktivieren ein) im Terminal:

$ csrutil disable
$ reboot

Schließlich führen wir das aus Überprüfen Sie die Version der vorherigen beiden Befehle.

$ sudo mv /usr/bin/openssl /usr/bin/openssl_old
$ sudo ln -s /usr/local/Cellar/openssl/1.0.2p/bin/openssl /usr/bin/openssl
$ openssl version
OpenSSL 1.0.2p  14 Aug 2018

➜  ~ which openssl
/usr/local/opt/openssl/bin/openssl

Wie aktualisiere ich das mit dem Mac gelieferte OpenSSL? (Prozesszusammenfassung)

Auf diese Weise war unser OpenSSL-Upgrade erfolgreich. Um jedoch auf der sicheren Seite zu sein, habe ich meinen Computer neu gestartet und csrutil erneut aktiviert.

csrutil enable
reboot

Verwandte Empfehlungen:

macos – Wie führe ich ein Hauptversions-Upgrade von PHP durch, das mit dem Mac geliefert wird?

Das obige ist der detaillierte Inhalt vonWie aktualisiere ich das mit dem Mac gelieferte OpenSSL? (Prozesszusammenfassung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn