Я могу обновить версию OpenSSL, используемую апачем, не перекомпилировав сервер, но просто mod_ssl?

У меня есть сервер Apache на машине Unix:

Apache/2.2.29 (Unix) OpenSSL/0.9.8zg

Я хотел бы обновить версию OpenSSL до 1.0.2, который является версией, в настоящее время устанавливаемой в моей системе:

machine:/ user$ openssl version
OpenSSL 1.0.2d 9 Jul 2015

Я могу сделать это, не перекомпилировав целый сервер? Сделайте я должен перекомпилировать mod_ssl только, поскольку это загружается внутри httpd.conf с LoadModule?:

LoadModule ssl_module modules/mod_ssl.so

Как я могу сделать это?

6
задан 12 September 2015 в 10:22
2 ответа

Библиотека mod_ssl.so динамически связана с OpenSSL:

$ ldd mod_ssl.so | egrep 'lib(ssl|crypto)'
    libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f23f7209000)
    libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007f23f6e26000)

До тех пор, пока обновление OpenSSL не изменит путь к библиотеке, все, что вам нужно сделать, это обновить OpenSSL, а затем перезапустить Apache так, чтобы новая библиотека OpenSSL была загружена. Последний раз, когда OpenSSL изменяла путь к библиотеке был в 1.0.0, думаю, так что если вы обновляете с 1.0.0 или более поздней версии, все должно быть в порядке. Если вы обновляетесь со старой версии (например, 0.9.8), то после восстановления OpenSSL вам придется пересобирать mod_ssl.

.
5
ответ дан 3 December 2019 в 00:28

Я настоятельно рекомендую обновить ваш дистрибутив, как Apache 2.2, так и OpenSSL 0.9 ОЧЕНЬ старые и почти не поддерживаются.

Если это не вариант, вам нужно будет установить заголовки dev для вашей установленной версии OpenSSL и перекомпилировать mod_ssl против них. То есть, если вы используете Gentoo или другой дистрибутив типа "сделай сам".

В противном случае, просто подключись и обновись. В вашем случае это долго просрочено.

1
ответ дан 3 December 2019 в 00:28

Теги

Похожие вопросы