Como não tenho uma resposta útil para resolver esse problema, gostaria de compartilhar o que fiz nele.
Primeiro, você deve obter as ferramentas para criar software e as dependências do OpenSSL (por exemplo, em distros do tipo Debian)
apt install build-essential make zlib1g-dev libxml2-dev
Em seguida, obtenha a última versão do OpenSSL, verifique a assinatura e compile-a com a opção enable-weak-ssl-ciphers
, se desejar recuperar o suporte do SSLv3 obsoleto para o GOD D ** N Microsoft IE6, enable-ssl3
e enable-ssl3-method
também deve ser anexado à opção de compilação.
Não se esqueça de shared
flag ou libssl.so
e libcrypto.so
não serão criados e use -Wl,-rpath=
para informar ao vinculador ( ld
) para vincular bibliotecas compartilhadas em qual diretório.
wget https://www.openssl.org/source/openssl-1.0.2o.tar.gz
sha256sum openssl-1.0.2o.tar.gz
curl https://www.openssl.org/source/openssl-1.0.2o.tar.gz.sha256
tar -zxvf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o/
./config --prefix=/opt/openssl-1.0.2 \
--openssldir=/etc/ssl \
shared enable-weak-ssl-ciphers \
-Wl,-rpath=/opt/openssl-1.0.2/lib
make
make install
Depois disso, sua versão personalizada do OpenSSL será instalada em /opt/openssl-1.0.2
(em vez de cobrir a versão fornecida com seu SO).
Seus aplicativos também podem ter que ser recompilados, com essas opções para forçar o vinculador a vincular sua versão personalizada de bibliotecas OpenSSL (Substituir a configuração da variável /etc/ld.so.conf
ou PKGCONFIG
)
LDFLAGS="-L/opt/openssl-1.0.2/lib -lssl -lcrypto -Wl,-rpath=/opt/openssl-1.0.2/lib"
Você também pode tentar o OpenSSL 1.1.0, já que a maioria dos aplicativos agora suporta a API dele.