Reparando a instalação substituída do OpenSSL

3

Eu substitui o openssl anteriormente na minha caixa de centos com o openssl10, usando algo como estas instruções :

rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/...
     ...x86_64/ius-release-1.0-11.ius.centos6.noarch.rpm
yum install yum-plugin-replace
# Edit /etc/yum.repos.d/ius-archive.repo and 
# enable the ius-archive repo by changing enabled=0 to enabled=1.
yum replace openssl --replace-with openssl10

Então, quando eu faço um% geral doyum update, recebo erros por causa do openssl, então eu faço:

yum update -x openssl -x postfix

Isso parece funcionar bem, mas, na verdade, não consigo mais reconectar por ssh à caixa:

me@local $ ssh -S none root@the_server
ssh_exchange_identification: Connection closed by remote host

Alguma idéia de como se recuperar dessa situação?

Editar: Quando executo sshd no servidor (ainda tenho uma conexão aberta), recebo o seguinte erro:

ssh: relocation error: ssh: symbol SSLeay_version, version OPENSSL_1.0.1 
    not defined in file libcrypto.so.10 with link time reference
    
por EoghanM 09.03.2014 / 18:29

3 respostas

4

Houve um erro ao usar repositórios IUS e usá-lo para substituir openssl com openssl10 e, em seguida, tentar atualizar para o CentOS 6.5.

Basicamente, o que você precisa fazer é voltar ao estoque openssl - que agora é assim mesmo na versão 1.0.1:

yum replace openssl10 --replace-with openssl

O uso de openssl10 é desnecessário agora e não é suportado.
É também por isso que só está disponível no arquivo repo.

Para mais informações, consulte: link e link

    
por 09.03.2014 / 19:35
3

Resposta do @faker deve ser tentada primeiro, mas se isso não funcionar, eu encontrei as seguintes instruções em rpm.org

Se você quer estar no lado seguro, baixe também o rpms do yum e todas as dependências

(Substitua pelo exato apropriado para sua instalação)

wget http://mirror.centos.org/centos/6/os/x86_64/Packages/openssl-<version>.rpm
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/openssl-devel-<version>.rpm

rpm -i openssl-*
    file /usr/lib64/libcrypto.so.1.0.1e from install of openssl-1.0.1e-16.el6_5.4.x86_64 conflicts with file from package openssl10-libs-1.0.1e-1.ius.el6.x86_64
    .... lots more lines

Agora faça um backup de todos esses arquivos conflitantes, de forma que você possa restabelecê-los na pasta correta caso algo dê errado.

Finalmente, você pode dar um salto e fazer:

rpm  -iv --replacepkgs --replacefiles openssl-*

Se tudo correr bem, yum update deve funcionar.

Editar: também apague os pacotes para que eles não entrem em conflito com atualizações futuras:

rpm -qa |grep ius
... lists packages
rpm -e openssl10-libs-1.0.1e-1.ius.el6.x86_64
rpm -e openssl10-devel-1.0.1e-1.ius.el6.x86_64
    
por 15.03.2014 / 12:19
0

Solução mais fácil para a questão acima

yum update openssl openssl-devel
    
por 18.01.2016 / 14:06