Используя YUM, я установил apache. Установленная версия apache - 2.2.3
Наш охранник хочет, чтобы мы использовали 2.2.21 apache
Когда я пытаюсь yum update 'httpd', ничего не происходит - пакеты не отмечены для обновления
Я проверил домашнюю страницу 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?
Чтобы запустить 2.2.x, вам нужно либо установить другой RPM, либо собрать его из исходного кода.
Однако, поскольку вы используете 2.2.3, я подозреваю, что вы используете RedHat Enterprise Linux 5 или одну из его производных (CentOS 5 и т. Д.). Вы обнаружите, что значительное количество компаний по тестированию на проникновение или сотрудников службы безопасности не принимают во внимание, что пока вы используете 2.2.3, вы действительно получаете исправления безопасности из более поздних версий Apache.
Это известно как «обратное портирование». RedHat имеет хороший описание здесь. Я бы посоветовал запросить у ваших сотрудников службы безопасности конкретные CVE, которые они заинтересованы в исправлении, а затем использовать этот инструмент redhat, чтобы определить, исправлены ли они в используемой вами версии apache. Вы можете получить номер версии, предварительно сформировав rpm -qa httpd
.
Я предполагаю, что у вас есть 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.
Чтобы создать собственный Apache на Red Hat (или CentOS) непосредственно из апстрима, вы должны сделать следующее:
Или сэкономьте себе работу и позвольте Red Hat обрабатывать обновления. Я не рекомендую вам это делать, если нет особой потребности в сборке апстрима, которая не может быть полностью удовлетворена сборкой поставщика.
* Примечание: в Red Hat 6 distcache больше не поддерживается, поэтому вам нужно удалить «--enable-distcache» из файла .spec.
Патч, который вы пытались применить, предназначен для сборки с помощью 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. Но действительно ли вы пытались применить это к SRPM?
Так как cjc упоминает Исправления безопасности Red Hat backport для любой версии, которую они поставляют, но номер версии не обязательно увеличивается. И снова, вы всегда можете скомпилировать Apache самостоятельно.