Cara memutakhirkan Apache dari 2.2.3 ke 2.2.21

9

Menggunakan YUM saya menginstal apache. Versi apache yang diinstal adalah 2.2.3

Petugas keamanan kami ingin agar kami menggunakan apache 2.2.21

Ketika saya mencoba pembaruan yum 'httpd' tidak ada yang terjadi - Tidak ada Paket ditandai untuk Pembaruan

Saya memeriksa beranda Apache ( http://www.apache.org/dist/httpd/patches/ ) tentang tambalan. Berdasarkan instruksi tertulis mereka, saya mencoba menginstal 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

Dan saya mendapat pesan seperti itu:

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 [email protected],
|### 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:

Apa yang saya lakukan salah? Mengapa saya tidak dapat memperbarui versi Apatche ke 2.2.21?

pengguna1124133
sumber
1
Jangan lakukan itu. Lihat di bawah.
Nils

Jawaban:

16

Untuk menjalankan 2.2.x, Anda perlu mencari RPM lain - atau membuatnya dari sumber.

Namun saya curiga karena Anda menjalankan 2.2.3 bahwa Anda menjalankan RedHat Enterprise Linux 5 atau salah satu turunannya (CentOS 5 dll). Anda akan menemukan bahwa sejumlah besar perusahaan pengujian penetrasi atau petugas keamanan tidak memperhitungkan bahwa ketika Anda menjalankan 2.2.3 Anda benar-benar mendapatkan perbaikan keamanan dari revisi Apache yang kemudian.

Ini dikenal sebagai 'backporting'. RedHat memiliki deskripsi yang bagus di sini . Saya akan menyarankan meminta dari petugas keamanan Anda CVE tertentu yang mereka tertarik untuk memastikan yang ditambal, dan kemudian menggunakan alat redhat ini untuk mengidentifikasi apakah ini diperbaiki dalam versi apache yang sedang Anda jalankan. Anda bisa mendapatkan nomor versi dengan melakukan preforming rpm -qa httpd.

whmcr
sumber
bagus dengan info kolektif
Mughil
8

Saya berasumsi Anda memiliki RHEL5 (atau yang setara).

Anda dapat memberi tahu petugas keamanan bahwa Red Hat menerapkan pembaruan keamanan yang relevan dari 2.2.21 ke paket 2.2.3, tetapi tidak mengubah nomor versi dasar. Itu akan (jika Anda hanya menggunakan nomor versi paket) terlihat seperti Anda menjalankan Apache yang lebih lama, tetapi Anda sebenarnya seaman 2.2.21. Itu semacam titik distribusi perusahaan berumur panjang: Anda mendapatkan konsistensi, serta perbaikan.

Anda dapat memverifikasi ini dengan menjalankan sesuatu seperti:

rpm -q --changelog httpd

Misalnya, Anda akan melihat perbaikan terbaru ini di changelog:

* Thu Oct 06 2011 Joe Orton <[email protected]> - 2.2.3-53.3
- add security fix for CVE-2011-3368 (#743903)
- fix regressions in byterange handling (#736593)

Jika Anda benar-benar perlu menginstal 2.2.21, Anda dapat mengompilasinya sendiri. Ini akan memiliki implikasi keamanan buruknya sendiri: jika seseorang menemukan dan memperbaiki masalah baru dengan Apache minggu depan, Red Hat akan mendukung perbaikan itu dan membuatnya tersedia melalui yum, tetapi Apache yang Anda buat sendiri tidak akan memiliki perbaikan itu, dan Anda Harus melalui seluruh proses lagi untuk membangun dan menginstal Apache baru.

cjc
sumber
OK, maka saya tidak perlu menginstal 2.2.21. Saya akan mencoba mereka menjelaskan bahwa instalasi Apache saya saat ini mencakup semua perbaikan keamanan. [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 <[email protected]> - 2.2.3-53.3.el5.centos - Roll in CentOS Branding * Fri Oct 07 2011 Joe Orton <[email protected]> - 2.2.3-53.3 - add security fix for CVE-2011-3368 (#743903) - fix regressions in byterange handling (#736593)
user1124133
1
Penting untuk mengetahui bahwa distribusi apache sumber memang memiliki file spesifikasi RPM. Anda dapat menggunakannya untuk membangun RPM biner Apache dan mengganti yang datang dengan CentOS. Namun, kecuali Anda benar-benar harus melakukannya, akan lebih baik untuk tetap dengan yang datang Red Hat dan membiarkan mereka menangani pembaruan.
Rilindo
Kadang-kadang RH memperbaiki masalah CVE bahkan lebih cepat daripada unduhan stabil berikutnya. Jadi, jika Anda ingin httpd yang ditambal tanpa tindakan manual, tetap pada distribusi!
Nils
Bagaimana saya bisa mendapatkan pembaruan untuk server apache saya. Ketika saya menjalankan 'rpm -qa httpd' itu menunjukkan '2.2.3-43' itu berarti saya perlu memperbarui apache saya. Jadi bagaimana cara saya memperbarui apache secara manual?
Gangadhar Jannu
2

Untuk membuat Apache khusus di Red Hat (atau CentOS) langsung dari hulu, Anda harus melakukan hal berikut:

  1. Instal alat-alat berikut: "yum install rpm-devel rpmdevtools rpm-build"
  2. Sebagai pengguna biasa, jalankan rpmdev-setuptree. Ini akan membuat direktori yang disebut "rpmbuild".
  3. cd ke ~ / rpmbuild / SOURCE dan unduh ke direktori tarball sumber Apache dari httpd.apache.org.
  4. Ekstrak dari tarball itu file "httpd.spec" dan salin ke ~ / rpmbuild / SPECS
  5. Jalankan "rpmbuild -bb httpd.spec" dan itu akan mulai mengkompilasi dan membangun rpms. Jika ada dependensi yang hilang, itu akan berhenti dan memberi tahu Anda. Pada titik itu, instal paket-paket itu melalui yum dan mulai kembali proses build (Anda dapat menghindari ini dengan melihat baris BuildPrereq dalam file .spec). Jika tidak, dengan asumsi tidak ada masalah lebih lanjut, Anda akan dapat mengkompilasi build Apache Anda sendiri. *

Atau selamatkan diri Anda dari pekerjaan dan biarkan Red Hat menangani pembaruan. Saya tidak menyarankan Anda melakukan ini kecuali ada kebutuhan khusus untuk bangunan upstream yang tidak dapat sepenuhnya dipenuhi oleh vendor build

* Catatan: Di bawah Red Hat 6, distcache tidak lagi didukung, jadi Anda harus menghapus "--enable-distcache" dari file .spec.

Rilindo
sumber
1

Patch yang Anda coba terapkan untuk membangun dengan Microsoft Visual Studio. Petunjuknya ada di header tambalan:

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

Ini sebenarnya tidak menambal pohon sumber Apache ke 2.2.4. Tetapi apakah Anda benar-benar mencoba menerapkan ini pada SRPM?

Ketika cjc menyebutkan perbaikan keamanan backport Red Hat untuk versi apa pun yang mereka kirimkan tetapi nomor versi tidak perlu terbentur. Dan lagi, Anda selalu dapat mengkompilasi Apache sendiri.

James O'Gorman
sumber