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 construir software e as dependências para o OpenSSL (por exemplo, em distros do tipo Debian)
apt install build-essential make zlib1g-dev libxml2-dev
Então pegue a última versão do OpenSSL, verifique a assinatura e compile com a opção enable-weak-ssl-ciphers
, se você quiser 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 esqueça o shared
bandeira ou libssl.so
e libcrypto.so
não será construído e usar -Wl,-rpath=
para dizer ao linker ( 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 /opt/openssl-1.0.2
(em vez de cobrir a versão fornecida com o seu sistema operacional).
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 de /etc/ld.so.conf
ou PKGCONFIG
variável)
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.