Як оновити Apache з 2.2.3 до 2.2.21


9

За допомогою YUM я встановив apache. Встановлена ​​версія апачі - 2.2.3

Наш хлопець хоче, щоб ми використовували 2.2.21 апаш

Коли я намагаюся оновити "yumd '", нічого не відбувається - для оновлення не позначено жодних пакунків

Я перевірив домашню сторінку Apache ( http://www.apache.org/dist/httpd/patches/ ) щодо виправлень. На основі їх письмової інструкції я намагаюся встановити патч 2.2.4 ( http://www.apache.org/dist/httpd/patches/apply_to_2.2.4/ )

patch -s < /usr/local/src/hack-msvc8-httpd-2.2.4.patch

І мені надійшло таке повідомлення:

The text leading up to this was:

|###
|### A trivial hack to copy the .manifest files along with the binaries
|### when building from the command line on Visual Studio 2005
|###
|### Courtesy of Gustavo Lopes
|### Posted to dev@httpd.apache.org,
|### Message-ID: <006901c731ae$97bec180$0201a8c0@cataphract>
|###
|--- Makefile.win.orig 2006-12-07 11:09:37.000000000 -0600
|+++ Makefile.win 2007-01-08 23:55:56.000000000 -0600
File to patch:

Що я роблю неправильно? Чому я не можу оновити Apatche до версії 2.2.21?


1
Не робіть цього. Дивись нижче.
Нілс

Відповіді:


16

Для запуску 2.2.x вам або потрібно буде джерело іншого RPM - або побудувати його з джерела.

Але я б підозрював, оскільки у вас працює 2.2.3, що ви використовуєте RedHat Enterprise Linux 5 або один з його похідних (CentOS 5 тощо). Ви побачите, що значна кількість компаній, що проходять тестування на проникнення, чи службовців безпеки не враховують, що в той час як ви працюєте з 2.2.3, ви дійсно отримали виправлення безпеки з пізніших версій Apache.

Це відомо як "підтримка". RedHat має хороший опис тут . Я б запропонував запитати у ваших служб безпеки конкретні CVE, що вони зацікавлені у забезпеченні виправлення, а потім скористайтеся цим інструментом redhat, щоб визначити, чи є вони фіксованими у версії apache, яку ви запускаєте. Ви можете отримати номер версії заздалегідь rpm -qa httpd.


добре з колективною інформацією
Mughil

8

Я припускаю, що у вас RHEL5 (або еквівалент).

Ви можете сказати хлопцеві з безпеки, що Red Hat застосовує відповідні оновлення безпеки від 2.2.21 до свого пакета 2.2.3, але номер базової версії не змінює. Це (якщо ви просто збираєтесь за номером версії пакета) буде схоже на те, що ви працюєте зі старшим Apache, але ви насправді будете настільки ж безпечні, як 2.2.21. Це такий собі сенс довготривалих розподілів підприємств: ви отримуєте послідовність, а також виправлення.

Ви можете перевірити це, виконавши щось на кшталт:

rpm -q --changelog httpd

Наприклад, ви побачите це останнє виправлення в журналі змін:

* Thu Oct 06 2011 Joe Orton <jorton@redhat.com> - 2.2.3-53.3
- add security fix for CVE-2011-3368 (#743903)
- fix regressions in byterange handling (#736593)

Якщо вам справді дуже потрібно встановити 2.2.21, ви можете скласти його самостійно. Це матиме свої негативні наслідки для безпеки: якщо хтось знайде та виправить нову проблему з Apache на наступному тижні, Red Hat зробить резервну копію цього виправлення та зробить доступною через yum, але ваш власний Apache, що будується, не зможе цього виправити, і ви Вам доведеться знову пройти весь процес, щоб створити та встановити новий Apache.


Гаразд, тоді мені не потрібно встановлювати 2.2.21. Я спробую їх пояснити, що моя поточна установка Apache включає всі виправлення безпеки. [root@ww013886 src]# rpm -qa httpd httpd-2.2.3-53.el5.centos.3 [root@ww013886 src]# rpm -q --changelog httpd * Fri Oct 21 2011 Johnny Hughes <johnny@centos.org> - 2.2.3-53.3.el5.centos - Roll in CentOS Branding * Fri Oct 07 2011 Joe Orton <jorton@redhat.com> - 2.2.3-53.3 - add security fix for CVE-2011-3368 (#743903) - fix regressions in byterange handling (#736593)
user1124133

1
Важливо знати, що в розповсюдженні apache джерела є файл специфікації RPM. Ви можете використовувати це для створення бінарного RPM Apache та заміни того, який постачався CentOS. Однак, якщо вам справді не доведеться, було б краще дотримуватися того, який прийшов Red Hat, і дозволити їм обробляти оновлення.
Ріліндо

Іноді RH виправляє проблеми CVE навіть швидше, ніж наступний стабільний випуск-завантаження. Тож якщо ви хочете, щоб виправлений httpd без ручних дій, дотримуйтесь дистрибуції!
Нілс

Як я можу отримати оновлення для свого сервера apache. Коли я запускаю 'rpm -qa httpd', він відображає '2.2.3-43', це означає, що мені потрібно оновити apache. Тож як я можу оновити apache вручну?
Gangadhar Jannu

2

Щоб створити спеціальний Apache на Red Hat (або CentOS) безпосередньо з вище за течією, слід зробити наступне:

  1. Встановіть такі інструменти: "yum install rpm-devel rpmdevtools rpm-build"
  2. Як постійний користувач, запустіть rpmdev-setuptree. Це створить каталог під назвою "rpmbuild".
  3. cd до ~ / rpmbuild / ДЖЕРЕЛА та завантажте в цей каталог вихідний tarball з Apache з httpd.apache.org.
  4. Витягніть з цього tarball файл "httpd.spec" і скопіюйте його в ~ / rpmbuild / SPECS
  5. Запустіть "rpmbuild -bb httpd.spec", і він почне компілювати та створювати rpms. Якщо є якісь відсутні залежності, це зупинить і скаже вам. У цей момент встановіть ці пакети через yum та знову перезапустіть процес збирання (уникнути цього можна, переглянувши рядок BuildPrereq у файлі .spec). В іншому випадку, якщо не виникати жодних проблем, ви зможете скласти власну збірку Apache. *

Або збережіть собі роботу та дозвольте Red Hat обробляти оновлення. Я не рекомендую вам це робити, якщо немає конкретної потреби у збірці за течією, яка не може бути абсолютно задоволена складанням постачальника

* Примітка: У Red Hat 6 distcache більше не підтримується, тому вам потрібно буде видалити "--enable-distcache" з файлу .spec.


1

Патч, який ви намагалися застосувати, призначений для побудови за допомогою Microsoft Visual Studio. Підказка знаходиться в заголовку патча:

### A trivial hack to copy the .manifest files along with the binaries
### when building from the command line on Visual Studio 2005

Це насправді не виправляє дерево джерела Apache до 2.2.4. Але ви насправді намагалися застосувати це до СРПМ?

Як згадує cjc, безпека репортажів Red Hat виправляє будь-яку версію, яку вони постачають, але номер версії не обов'язково стикається. І знову, ви завжди можете самостійно скласти Apache.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.