Из-за недавней уязвимости GHOST я пытался обновить версию glibc на нашем RHEL4.
Я пытался использовать следующую команду: rpm -Uvh glibc-2.3.4-2.57.x86_64.rpm
Результат был:
[root@rhel4-test ~]# rpm -Uvh glibc-2.3.4-2.57.i686.rpm
warning: glibc-2.3.4-2.57.i686.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
package glibc-2.3.4-2.57 is already installed
Журнал изменений на сайте поддержки RedHat кажется довольно старым, хотя версия совпадает.
Кому-нибудь удалось обновить RHEL4 против уязвимости GHOST (CVE-2015-0235)?
RHEL 4 - это то, что Red Hat называет Фаза продленного срока службы.
... Для версий продуктов на этапе расширенного срока службы Red Hat будет предоставлять ограниченную текущую техническую поддержку. Никаких исправлений безопасности, исправления ошибок, включение оборудования или анализ первопричин будут доступны на этом этапе, а поддержка будет предоставляться только для существующих установок.
Вы можете купить надстройку подписки на расширенную поддержку жизненного цикла (ELS) для расширенной поддержки.
Доступный на этапе расширенного жизненного цикла продукта для Red Hat Enterprise Linux 4 и 5, Надстройка поддержки расширенного жизненного цикла обеспечивает критические исправления безопасности и избранные исправления ошибок с срочным приоритетом, которые доступны и соответствуют последним версиям опубликованного подмножества пакетов в конкретном основном выпуске Red Hat Enterprise Linux после завершения фазы Production 3.
Если у вас есть подписка на ELS, значит, обновление доступно как RHSA-2015: 0101-1.
Ваша система RHEL 4 должна подписаться на правильные каналы на портале RHN или на вашем сервере Satellite, а затем вы запустите up2date -u glibc
.
У Саши это почти правильно, и, поскольку я не могу комментировать, я отправлю это как отдельный ответ.
Игнорирование ошибок зависимости - очень плохая идея ™. В этом случае также нет необходимости, поскольку есть обновленная версия nscd, идущая вместе с glibc.
Исправленные пакеты glibc действительно доступны от Oracle, и я подтвердил, что их установка устраняет уязвимость GHOST. Я предлагаю загрузить все пакеты, связанные с пропатченной glibc, а затем обновить только те, которые уже установлены в вашей системе, с помощью обновления RPM.
Для 32 бит:
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i686.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-common-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-devel-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-headers-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-profile-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-utils-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/nscd-2.3.4-2.57.0.1.el4.1.i386.rpm
sudo rpm -Fvh *.rpm
Для 64 бит:
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i686.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-common-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-devel-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-headers-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-profile-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-utils-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/nscd-2.3.4-2.57.0.1.el4.1.x86_64.rpm
sudo rpm -Fvh *.rpm
После этого перезапустите все работающие службы, использующие glibc. Вы можете получить их список, запустив lsof | grep libc | awk '{print $1}' | sort | uniq
. В зависимости от вашей ситуации, вероятно, проще просто перезапустить весь сервер.
Если у вас нет подписки на RHEL, Oracle любезно выпустила обновленные пакеты для вашего старого RH4.
Для обеих систем (i386 и X86_64) выполните:
mkdir glibc2015
cd glibc2015
Для системы i386 сделайте (обратите внимание, мне пришлось заменить http на h ** p, чтобы избежать спам-фильтров):
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i686.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-common-2.3.4-2.57.0.1.el4.1.i386.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-devel-2.3.4-2.57.0.1.el4.1.i386.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-headers-2.3.4-2.57.0.1.el4.1.i386.rpm
Для системы X86_64 выполните:
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i686.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-common-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-common-2.3.4-2.57.x86_64.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-devel-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-headers-2.3.4-2.57.0.1.el4.1.x86_64.rpm
Для всех систем:
rpm -Uvh glibc*rpm
Если вы получаете сообщение об ошибке nscd в зависимости от glibc, это нормально:
rpm -Uvh glibc*rpm --nodeps
Не забудьте перезапустить все сетевые службы после обновления. Если вы не знаете, какие службы, возможно, не повредит просто перезапустить сервер.
После долгих дискуссий с RedHat я наконец получил нужные файлы:
Просто помните, что для загрузки этих пакетов требуется ELS.
Спасибо вам всем!
Есть патч, RPM должен быть glibc-2.3.4-2.57.el4.2.i686.rpm
.
Видеть: https://rhn.redhat.com/errata/RHSA-2015-0101.html
Я обнаружил, что в прошлом были жизнеспособные варианты для создания пакетов RHEL4 с использованием источника, найденного в выпусках Oracle Linux. https://oss.oracle.com/el4/SRPMS-updates/?C=M;O=D На всякий случай у вас не получится заставить RHN работать. Возможно, вам придется немного подождать (пару дней), пока не появится новый src.rpm.
У меня есть зеркальные RPM на http://users.axess.com/rickm/glibc для el4.
Примечание: я просто копирую их для кого-то из Бразилии. Полный исходный код и файл спецификации доступны, если вы им не доверяете.
Протестировано на Centos 4.6 и 4.9
Перезагрузился чисто и сообщил, что не уязвим.
На большинстве серверов, с которыми я сталкивался, на самом деле не работает nscd.
пс топор | grep nscd
Или chkconfig --list nscd
Если оба из них показывают, что он не работает, можно безопасно выполнить yum remove nscd (и nss_ldap), а затем rpm -Uv glibc- *
Я просто зеркало, РПМ не создавал.
Изменить: я только что посмотрел, и Oracle Linux действительно обновил свое репо сегодня. Лучше использовать их. См. Сообщение выше о том, где его получить.
С Уважением,
Рик