Come aggiornare Apache dalla 2.2.3 alla 2.2.21


9

Usando YUM ho installato apache. La versione di apache installata è 2.2.3

Il nostro addetto alla sicurezza vuole che usiamo 2.2.21 apache

Quando provo l'aggiornamento yum 'httpd' non succede nulla - Nessun pacchetto contrassegnato per l'aggiornamento

Ho controllato la home page di Apache ( http://www.apache.org/dist/httpd/patches/ ) per quanto riguarda le patch. Sulla base delle loro istruzioni scritte, provo a installare la patch 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

E ho ricevuto questo messaggio:

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:

Cosa sto facendo di sbagliato? Perché non riesco ad aggiornare Apatche alla versione 2.2.21?


1
Non farlo. Vedi sotto.
Nils,

Risposte:


16

Per eseguire 2.2.x dovresti o generare un altro RPM o crearlo dal sorgente.

Tuttavia, sospetto che stai eseguendo 2.2.3 che stai eseguendo RedHat Enterprise Linux 5 o uno dei suoi derivati ​​(CentOS 5 ecc.). Scoprirai che un numero considerevole di società di test di penetrazione o agenti di sicurezza non tiene conto del fatto che mentre stai eseguendo 2.2.3 hai effettivamente ottenuto correzioni di sicurezza da successive revisioni di Apache.

Questo è noto come "backporting". RedHat ha una buona descrizione qui . Suggerirei di richiedere alle tue persone di sicurezza i CVE specifici che sono interessati a garantire che siano patchati, e quindi utilizzare questo strumento redhat per identificare se questi sono corretti nella versione di Apache in esecuzione. È possibile ottenere il numero di versione preformando rpm -qa httpd.


buono con informazioni collettive
Mughil

8

Presumo che tu abbia RHEL5 (o equivalente).

Puoi dire al responsabile della sicurezza che Red Hat applica gli aggiornamenti di sicurezza pertinenti dalla 2.2.21 al suo pacchetto 2.2.3, ma non modifica il numero di versione di base. Sembrerà che tu stia eseguendo il vecchio Apache, ma in realtà sarai sicuro come 2.2.21. Questo è un po 'il punto delle distribuzioni aziendali di lunga durata: ottieni coerenza e correzioni.

Puoi verificarlo eseguendo qualcosa del tipo:

rpm -q --changelog httpd

Ad esempio, vedrai questa recente correzione nel log delle modifiche:

* 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)

Se davvero, hai davvero bisogno di installare 2.2.21, puoi compilarlo da solo. Ciò avrà le sue cattive implicazioni sulla sicurezza: se qualcuno rileverà e risolverà un nuovo problema con Apache la prossima settimana, Red Hat eseguirà il backport di tale correzione e la renderà disponibile tramite yum, ma il tuo Apache autocostruito non avrà quella correzione, e tu dovremo ripetere l'intero processo per compilare e installare un nuovo Apache.


OK, quindi non ho bisogno di installare 2.2.21. Li proverò a spiegare che la mia attuale installazione di Apache include tutte le correzioni di sicurezza. [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
È importante sapere che la distribuzione apache di origine ha un file di specifiche RPM. Puoi usarlo per creare un RPM binario di Apache e sostituire quello fornito con CentOS. Tuttavia, a meno che non sia necessario, sarebbe meglio attenersi a quello fornito da Red Hat e lasciarli gestire gli aggiornamenti.
Rilindo,

A volte RH risolve i problemi CVE anche più velocemente della prossima versione stabile del download. Quindi, se si desidera un httpd con patch senza azione manuale, attenersi alla distribuzione!
Nils,

Come posso ottenere gli aggiornamenti per il mio server Apache. Quando eseguo 'rpm -qa httpd' viene visualizzato '2.2.3-43' che significa che devo aggiornare il mio apache. Quindi, come posso aggiornare manualmente Apache?
Gangadhar Jannu,

2

Per creare un Apache personalizzato su Red Hat (o CentOS) direttamente dall'upstream, è necessario effettuare le seguenti operazioni:

  1. Installa i seguenti strumenti: "yum install rpm-devel rpmdevtools rpm-build"
  2. Come utente normale, esegui rpmdev-setuptree. Creerà una directory chiamata "rpmbuild".
  3. cd su ~ / rpmbuild / SOURCE e scaricare in quella directory il tarball sorgente Apache da httpd.apache.org.
  4. Estrarre da quel tarball il file "httpd.spec" e copiarlo in ~ / rpmbuild / SPECS
  5. Esegui "rpmbuild -bb httpd.spec" e inizierà la compilazione e la creazione di rpms. Se ci sono dipendenze mancanti, si fermerà e te lo dirà. A quel punto, installa quei pacchetti tramite yum e riavvia nuovamente il processo di compilazione (puoi evitarlo guardando la riga BuildPrereq nel file .spec). Altrimenti, ipotizzando ulteriori problemi, sarai in grado di compilare la tua build di Apache. *

Oppure risparmia il lavoro e lascia che Red Hat gestisca gli aggiornamenti. Non ti consiglio di farlo a meno che non vi sia una necessità specifica per una build upstream che non può assolutamente essere soddisfatta da una build del fornitore

* Nota: in Red Hat 6, distcache non è più supportato, quindi sarà necessario rimuovere "--enable-distcache" dal file .spec.


1

La patch che hai provato ad applicare è per la compilazione con Microsoft Visual Studio. L'indizio è nell'intestazione della patch:

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

Questo in realtà non corregge un albero dei sorgenti di Apache su 2.2.4. Ma stavi davvero cercando di applicare questo all'SRPM?

Come cjc menziona le correzioni di sicurezza del backport di Red Hat su qualunque versione vengano spedite, ma il numero di versione non viene necessariamente superato. E ancora, puoi sempre compilare Apache da solo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.