Обновление 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, потому что это может помешать домашнему пиву.

8 67

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 если бы путь портов был помещен перед моим путем brew, чтобы он всегда находил более старую версию openssl.

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

чтобы узнать, где вы загружаете openssl с, запустить 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 make и sudo make install (Я должен был пройти через шаг за шагом дважды, потому что я сделал это без sudo, и он не обновлялся).

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

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

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

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

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

но продолжал получать сообщение об ошибке "Linking keg-only 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 чтобы увидеть результат.