Назад | Перейти на главную страницу

PHP7 + OpenSSL-1.0.2h на CentOS 7 [Nginx 1.11.1]

Со вчерашнего дня я применил OpenSSL-1.0.2h к своему серверу Nginx, который я перекомпилировал из исходников. Что касается OpenSSL, я следовал этому руководству: https://syslint.com/blog/tutorial/how-to-upgrade-openssl-on-centos-7-or-rhel-7/. Впоследствии было относительно легко скомпилировать Nginx с помощью:

./configure --prefix=/etc/nginx ... --with-openssl=/usr/local/src/openssl-1.0.2h

Исходная информация

$ openssl version
OpenSSL 1.0.2h  3 May 2016

$ which openssl
/usr/bin/openssl

$ ls /usr/bin/openssl
/usr/bin/openssl -> /usr/local/ssl/bin/openssl

$ find / -name "openssl"
...
/usr/include/openssl
/usr/local/src/openssl-1.0.2h/apps/openssl
/usr/local/src/openssl-1.0.2h/include/openssl
/usr/local/src/openssl-1.0.2h/.openssl/include/openssl
/usr/local/src/openssl-1.0.2h/.openssl/bin/openssl
/usr/local/ssl/include/openssl
/usr/local/ssl/bin/openssl
...

$ nginx -V
nginx version: nginx/1.11.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC)
built with OpenSSL 1.0.2h  3 May 2016

$ ssh -V
OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 11 Feb 2013

$ php -i
...
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.1e-fips 11 Feb 2013
OpenSSL Header Version => OpenSSL 1.0.1e-fips 11 Feb 2013
Native OpenSSL support => enabled
...

К сожалению, поиск в Google и поиск в документации PHP (http://php.net/manual/en/openssl.installation.php) мне не помогло. Я подумал о перекомпиляции PHP с новейшим OpenSSL, предоставив:

./configure -disable-shared ... --with-openssl=/usr/local/src/openssl-1.0.2h

однако это говорит мне:

configure: error: Cannot find OpenSSL's libraries

Любая помощь приветствуется!

Я думаю, вам следует установить openssl-devel (yum install openssl-devel). Затем вы можете перекомпилировать PHP с последней версией OpenSSL.