Назад | Перейти на главную страницу

Восстановление замененной установки OpenSSL

Ранее я заменил openssl в моем поле с centos на openssl10, используя что-то вроде эти инструкции:

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

Затем, когда я делаю генерал yum update Я получаю ошибки из-за openssl, поэтому вместо этого делаю:

yum update -x openssl -x postfix

Кажется, это работает нормально, но на самом деле я больше не могу повторно подключиться по ssh к ящику:

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

Есть идеи, как выйти из этой ситуации?

Изменить: когда я бегу sshd на сервере (у меня все еще есть открытое соединение), я получаю следующую ошибку:

ssh: relocation error: ssh: symbol SSLeay_version, version OPENSSL_1.0.1 
    not defined in file libcrypto.so.10 with link time reference

Сначала следует попробовать ответ от @faker, но если это не сработает, я нашел следующие инструкции на rpm.org

Если вы хотите быть в безопасности, также скачайте rpms yum и все его зависимости

(Замените на тот, который подходит для вашей установки)

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

Теперь сделайте резервную копию всех этих конфликтующих файлов, чтобы вы могли восстановить их в правильную папку, если что-то пойдет не так.

Наконец, вы можете совершить прыжок и сделать:

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

Если все пойдет хорошо yum update должно сработать.

Изменить: также удалите пакеты, чтобы они не конфликтовали при будущих обновлениях:

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

Произошла ошибка при использовании репозиториев IUS и его использовании для замены openssl с участием openssl10 а затем пытается перейти на CentOS 6.5.

В основном вам нужно вернуться на склад. openssl - который сейчас так или иначе находится в версии 1.0.1:

yum replace openssl10 --replace-with openssl

Использование openssl10 сейчас не требуется и не поддерживается.
Вот почему он доступен только в архивном репо.

Для получения дополнительной информации см .: https://lists.launchpad.net/ius-community/msg00807.html и https://bugs.launchpad.net/ius/+bug/1034961/comments/60

Более простое решение вышеуказанной проблемы

yum update openssl openssl-devel