Instalando 2 versões openssl simultaneamente

4

Eu preciso instalar duas versões diferentes do OpenSSL simultaneamente. Atualmente, estou usando o Amazon EC2 com a AMI de 32 bits da Amazon, que atualmente executa o OpenSSL 1.0.0a. Eu tenho um software antigo que preciso executar e que requer o OpenSSL.0.9.6. Infelizmente, pelo que aprendi, o OpenSSL não é compatível com versões anteriores, portanto, precisarei instalar as duas versões simultaneamente. Eu encontrei um RPM que irá funcionar, no entanto, eu não tenho idéia de como instalá-los simultaneamente sem quebrar nada. Qualquer informação sobre este assunto seria muito apreciada.

Obrigado

    
por OldSpiceArcticForce 27.08.2011 / 04:50

4 respostas

2

Você pode fazer o download do arquivo openssl.org e compilá-lo a partir do código-fonte, instalando em um diretório separado.

./config --prefix=/old-openssl-version-x.x.x --openssldir=/old-openssl-version-x.x.x
make
make test
sudo make install

Em seguida, use uma versão específica como esta:

/old-openssl-version-x.x.x/bin/openssl do whatever you want
    
por 27.03.2017 / 13:42
1

Meu palpite é que você está executando uma distribuição que não tem políticas sãs sobre como nomear pacotes de bibliotecas em relação ao soname do (s) objeto (s) contido (s) nele, e que também possui instruções sobre a instalação de várias versões do o mesmo pacote.

Nesse caso, sua única opção é descompactar o pacote manualmente (acredito que rpm2cpio seja o ponto de partida dessa cruzada específica, a menos que exista uma opção rpm que faz o truque) e coloque os arquivos relevantes em o (s) local (is) correto (s). Se você estiver apenas após libssl e (como resultado) libcrypto , isso deve ser bastante direto - você copia libssl.so.0.9.6 e libcrypto.so.0.9.6 para o lugar e ldd no binário problemático deve mostrar felicidade.

Se você precisa de todo o pacote OpenSSL de uma versão específica, você precisa nomear publicamente e envergonhar o fornecedor, para o bem da Internet, porque isso é simplesmente ridículo.

    
por 27.08.2011 / 05:33
1

Uma opção seria simplesmente configurar um chroot em seu sistema com a distro que possui o conjunto de pacotes que você precisa. Isso consumirá mais armazenamento e significará que você precisa fazer manutenção no sistema operacional raiz e no chroot, mas permitiria executar um aplicativo no chroot que requer um conjunto mais antigo de bibliotecas no mesmo sistema que você executa aplicativos que exigem bibliotecas atualizadas.

    
por 27.08.2011 / 06:14
0

Eu fiz isso em uma caixa BSD sem problemas. Apenas certifique-se de instalar apenas as bibliotecas e não sobrescrever o binário 'openssl' real (páginas de manual também).

Provavelmente seria mais seguro apenas o rpm2cpio e extrair as bibliotecas.

    
por 27.08.2011 / 05:15