Пропускане към основното съдържание

Преинсталиране на Openssl под CentOS 6.7

След обновяване на системата от CentOS 6.6 до версия 6.7 спря да се зарежда локално инсталираният Apache сървър:
[root@angie-desktop ~]# httpd
httpd: Syntax error on line 221 of /etc/httpd/conf/httpd.conf: Syntax error on line 6 of /etc/httpd/conf.d/php.conf: Cannot load /etc/httpd/modules/libphp5.so into server: /etc/httpd/modules/libphp5.so: symbol SSLeay_version, version OPENSSL_1.0.1 not defined in file libcrypto.so.10 with link time reference

Проверката показа, че ред 221 на /etc/httpd/conf/httpd.conf е:
Include conf.d/*.conf

който насочва към ред 6 на /etc/httpd/conf.d/php.conf:
LoadModule php5_module modules/libphp5.so

Проблемната библиотека е от IUS хранилището:
[root@angie-desktop ~]# rpm -qa |grep openssl10
openssl10-libs-1.0.1e-2.ius.centos6.i686

Трябва да заменим бъгававия пакет  openssl10 с базовия openssl:
[root@angie-desktop ~]# yum search openssl
...
openssl-devel.i686 : Files for development of applications which will use OpenSSL
openssl-perl.i686 : Perl scripts provided with OpenSSL
openssl-static.i686 : Libraries for static linking of applications which will use OpenSSL
openssl10-debuginfo.i686 : Debug information for package openssl10
openssl10-devel.i686 : Files for development of applications which will use OpenSSL
openssl10-perl.i686 : Perl scripts provided with OpenSSL
openssl10-static.i686 : Libraries for static linking of applications which will use OpenSSL
...
openssl.i686 : A general purpose cryptography library with TLS implementation
openssl098e.i686 : A compatibility version of a general cryptography and TLS library
openssl10.i686 : Utilities from the general purpose cryptography library with TLS implementation
openssl10-libs.i686 : A general purpose cryptography library with TLS implementation
...

При опит за директна инсталация получаваме съобщение за конфликт с файловете на openssl10-libs:
[root@angie-desktop ~]# yum install openssl.i686
...
Resolving Dependencies
--> Running transaction check
---> Package openssl.i686 0:1.0.1e-42.el6 will be installed
--> Processing Dependency: make for package: openssl-1.0.1e-42.el6.i686
--> Running transaction check
---> Package make.i686 1:3.81-20.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================================================================
Package                      Arch                      Version                            Repository                      Size
================================================================================================================================
Installing:
openssl                      i686                      1.0.1e-42.el6                      base                           1.5 M
Installing for dependencies:
make                         i686                      1:3.81-20.el6                      C6.3-base                      386 k

Transaction Summary
================================================================================================================================
Install       2 Package(s)

Total size: 1.9 M
Installed size: 4.9 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test


Transaction Check Error:
 file /usr/lib/libcrypto.so.1.0.1e from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/libssl.so.1.0.1e from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/lib4758cca.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libaep.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libatalla.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libcapi.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libchil.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libcswift.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libgmp.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libnuron.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libpadlock.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libsureware.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686
 file /usr/lib/openssl/engines/libubsec.so from install of openssl-1.0.1e-42.el6.i686 conflicts with file from package openssl10-libs-1.0.1e-2.ius.centos6.i686

При опит за заместване на проблемният пакет с базовия получаваме съобщение, че той не е инсталиран (?!):
[root@angie-desktop ~]# yum replace openssl10-libs-1.0.1e-2.ius.centos6.i686 --replace-with=openssl.i686
Loaded plugins: fastestmirror, refresh-packagekit, replace, security
Replacing packages takes time, please be patient...
Error: Package 'openssl10-libs-1.0.1e-2.ius.centos6.i686' is not installed.

Явно има някакво разминаване в базата данни на пакетите, затова използваме опциите --justdb и --nodeps, след което инсталацията протича успешно:
[root@angie-desktop ~]# rpm -e --justdb --nodeps openssl10-libs-1.0.1e-2.ius.centos6.i686
[root@angie-desktop ~]# yum install openssl
...
 Installing : openssl-1.0.1e-42.el6.i686                                                                                   1/1
 Verifying  : openssl-1.0.1e-42.el6.i686                                                                                   1/1

Installed:
 openssl.i686 0:1.0.1e-42.el6                                                                                                  

Complete!


Успех!

Източници:


Коментари

Популярни публикации от този блог

Проектиране на кемпер с VehiPlan

Оливер Колонж (Oliver Collonge) написва през 2011 г. втора версия на безплатната програма за дизайн на кемпери VehiPlan . Според автора тя е писана и трябва да работи под Windows 2000/Vista. Пробите показват, че работи нормално и под Windows 7 и 10. След като свалите архива (zip) можете да го разархивирате в C:\Windows\Program Files (x86)\. Програмата е с френски интерфейс и затова са необходими още няколко файла - vb6fr.dll , comdlg32.ocx & mscomctl.ocx . Тези файлове се поставят в C:\Windows\SysWOW64\. Comdlg.ocx се поставя в C:\Windows\System32\. След това е необходимо да се стартира Command Prompt (cmd - като администратор) и да се изпълни командата: regsvr32 %systemroot%\system32\comdlg32.ocx Ако възникне някакъв проблем, по-нова версия на файла може да се свали от тук . След това трябва да направим препратка към C:\Program Files (x86)\VehiPlan-2-0-0\VehiPlan.exe за по-удобно стартиране, която да поставим на работния плот или друго подходящо място. В архивния файл на програмат

Диаграма на Гант с електронна таблица

Диаграмата на Гант се състои от ленти, ориентирани успоредно на времевата ос. Всяка лента представлява отделна задача в проекта (вид работа), краищата ѝ — началния и крайния момент на изпълнението  ѝ, а дължината ѝ - продължителността на задачата. Тези диаграми могат да се използват и за други, не точно производствени, цели - например да покажат заетостта на учебна зала. Когато представянето на данните е регулярна задача може да се използва специализиран софтуер като GanttProject, но за инцидентна визуализация можем да се справим с „подръчни средства“. Сега ще покажем как с електронна таблица (LibreOffice Calc) ще визуализираме времето, за което няколко служители са работили във фирмата: Изходните данни са в няколко колони: Продължителността на трудовия стаж в дни определяме с формулата D2=C2-B2, като я копираме за всеки последващ ред. На 6-и ред съответно с функцията MIN и MAX определяме минимална и максимална дата в таблицата, а на 7-и ред - записваме начална (1.1.1989) и

MD5 и SHA-1 хеш алгоритми

MD5 (от „message-digest“) криптографският алгоритъм е създаден през 1991 г. от проф. Роналд Райвест и за първи път е публикуван през април 1992 г. Целта му е да замени компрометирания MD4 алгоритъм, който не е достатъчно сигурен. В последствие се оказва, че и MD5 не отговаря на съвременните изисквания за сигурност и може да бъде разбит. MD5 е построен върху конструкцията на Merkle–Damgård и генерира шестнайстично число със фиксиран размер от 32 символа (128 бита) за входящо съобщение с произволна дължина. Идеята е да се създаде уникален идентификатор за съобщението, който да гарантира неговата истинност. Например: MD5("The quick brown fox jumps over the lazy dog") = 9e107d9d372bb6826bd81d3542a419d6 Дори малка промяна, напр. добавя не точка в края на входящото съобщение би трябвало да генерира нов уникален идентификатор: MD5("The quick brown fox jumps over the lazy dog . ") = e4d909c290d0fb1ca068ffaddf22cbd0 Дължината на вход