Обновление OpenSSL на OS X с Homebrew

Я использую MacOS X 10.7.5, и мне нужна более новая версия OpenSSL из-за неудачи рукопожатие. В интернете есть несколько учебных пособий, и я попробовал следующее:

brew install openssl
brew link openssl --force

тем не менее, это не работает:

openssl version
OpenSSL 0.9.8r 8 Feb 2011

brew unlink openssl && brew link openssl --force
Unlinking /usr/local/Cellar/openssl/1.0.1e... 1139 links removed
Linking /usr/local/Cellar/openssl/1.0.1e... 1139 symlinks created

проблема SVN также не решена. Есть идеи? Я бы предпочел не пробовать путь MacPorts, потому что это может помешать Homebrew.

8 ответов


если вы используете Homebrew / usr / local / bin должно быть уже впереди $PATH или, по крайней мере, перед / usr / bin. Если вы сейчас запустите brew link --force openssl в окне терминала откройте новое окно и запустите which openssl в нем. Теперь он должен показать openssl под / usr / local / bin.


в терминале выполните:

export PATH=/usr/local/bin:$PATH
brew link --force openssl

возможно, вам придется сначала отключить openssl, если вы получите предупреждение:brew unlink openssl

Это гарантирует, что мы связываем правильный openssl для этой ситуации. (и не связывается .профиль)

наконечник шляпы к ответу @Olaf и комментарию @Felipe. У некоторых людей - таких как я - могут быть довольно запутанные пути.


установлен openssl на mac с brew, но ничего не найдено на /usr/local/bin где другие установленные ящики brew расположены. Нашел мой свежий openssl здесь:

/usr/local/opt/openssl/bin/openssl

запустите его так:

/usr/local/opt/openssl/bin/openssl version

Я не хочу обновлять OS X openssl, в то время как некоторые ОС или другие сторонние приложения могут зависеть от более старой версии.

Я также не против более длинного пути, чем просто openssl

пишу это здесь для всех гуглеров, которые ищите местоположение openssl, установленного brew.


у меня была эта проблема и обнаружил, что установка более новой openssl действительно работал, но мой PATH был настроен неправильно для него -- my $PATH путь портов был помещен перед моим путем заваривания, поэтому он всегда находил более старую версию openssl.

исправление для меня было поставить путь к brew (/usr/local / bin) в передней части моего $PATH.

чтобы узнать, где вы загружаете openssl from, run which openssl и обратите внимание на выход. Это будет расположение версия, которую ваша система использует при запуске openssl. Его будет где-то еще, кроме brewпуть "/ usr / local / bin". Измените свой $PATH, закройте вкладку терминала и откройте новую и запустите which openssl. Теперь вы должны увидеть другой путь, возможно, под /usr/local / bin. Теперь бегите openssl version и вы должны увидеть новую версию, которую вы установили "OpenSSL 1.0.1 e 11 Feb 2013".


чтобы ответить на ваш вопрос об обновлении openssl, я выполнил следующие шаги, чтобы успешно обновить версию, найденную на моем Mac, до новейшей версии openssl 1.0.1 e.

Я последовал шагам, найденным здесь:http://foodpicky.com/?p=99

когда вы достигнете шагов для терминальных команд сделать и установка обязательно используйте судо сделать и установка (мне пришлось пройти через шаг за шагом дважды, потому что я сделал это без sudo, и он не обновлялся).

надеюсь, что это помогает


У меня были проблемы с установкой некоторых плагинов Wordpress на моем локальном сервере под управлением php56 на OSX10.11. Им не удалось подключиться к внешнему API через SSL.

установка openSSL не решила мою проблему. Но потом я понял,что завиток также необходимо переустановить.

это решило мою проблему с помощью Homebrew.

brew rm curl && brew install curl --with-openssl

brew uninstall php56 && brew install php56 --with-homebrew-curl --with-openssl

на mac OS X Yosemite, после установки его с brew он положил его в

/ usr/local/opt/openssl/bin / openssl

но продолжал получать ошибку "связывание бочонка-только openssl означает, что вы можете в конечном итоге связать с небезопасным" при попытке связать его

поэтому я просто связал его, поставив полный путь так

ln -s /usr/local/opt/openssl/bin/openssl /usr/local/bin/openssl

теперь он показывает версию OpenSSL 1.0.2 o, когда я делаю "openssl version-a", я предполагаю, что это сработало


  1. установить порт: https://guide.macports.org/
  2. установить или обновить пакет openssl:sudo port install openssl или sudo port upgrade openssl
  3. вот он, запуск openssl version чтобы увидеть результат.