Jak zaktualizować apache2 do najnowszej wersji na Debianie Jessie?


16

Na moim komputerze Debian bieżąca wersja apache2 to 2.4.10:

root@9dd0fd95a309:/# apachectl -V
Server version: Apache/2.4.10 (Debian)

Chciałbym zaktualizować apache do najnowszej wersji (co najmniej 2.4.26): Próbowałem:

root@9dd0fd95a309:/# apt-get install apache2
Reading package lists... Done
Building dependency tree
Reading state information... Done
apache2 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 48 not upgraded.

Ale nie znajduje żadnej aktualizacji. Co mogę zrobić, aby uaktualnić do najnowszej wersji?

wprowadź opis zdjęcia tutaj


Z jakiej wersji Debiana korzystasz?
stycznia

1
Dlaczego chcesz zaktualizować?
Stephen Kitt

1
@wawanopoulos: Jessie jest nadal obsługiwana, więc należy spodziewać się, że pojawią się łatki bezpieczeństwa lub backporty, nawet jeśli numer wersji różni się od wcześniejszego.
Kevin,

1
Nie ma nic do naprawienia.
Stephen Kitt

1
Są one naprawione w pakiecie Debian. Raport Tenable opiera się wyłącznie na numerach wersji, co niestety nie działa z wieloma pakietami dystrybucyjnymi.
Stephen Kitt

Odpowiedzi:


32

Nie aktualizuj ręcznie Apache.

Ręczna aktualizacja dla bezpieczeństwa jest niepotrzebna i prawdopodobnie szkodliwa.

Jak Debian wydaje oprogramowanie

Aby zrozumieć, dlaczego tak jest, musisz zrozumieć, w jaki sposób Debian radzi sobie z kwestiami dotyczącymi pakowania, wersji i bezpieczeństwa. Ponieważ Debian ceni sobie stabilność nad zmianami, zasadą jest zamrażanie wersji oprogramowania w pakietach stabilnej wersji. Oznacza to, że w przypadku wydania stabilnego bardzo mało zmian, a gdy coś zadziała, powinny one działać przez długi czas.

Ale co jeśli poważny błąd lub problem bezpieczeństwa zostanie wykryty po wydaniu stabilnej wersji Debiana? Zostały one naprawione w wersji oprogramowania dostarczonej ze stabilną wersją Debiana . Jeśli więc stabilna wersja Debiana jest dostarczana z Apache 2.4.10, problem bezpieczeństwa zostanie znaleziony i naprawiony 2.4.26, Debian weźmie tę poprawkę bezpieczeństwa, zastosuje ją 2.4.10i roześle 2.4.10ją użytkownikom. Minimalizuje to zakłócenia związane z aktualizacjami wersji, ale sprawia, że ​​wąchanie wersji, takie jak Tenable, nie ma znaczenia.

Poważne błędy są gromadzone i naprawiane w wydaniach punktowych ( .9w Debianie 8.9) co kilka miesięcy. Poprawki bezpieczeństwa są natychmiast naprawiane i dostarczane za pośrednictwem kanału aktualizacji.

Ogólnie rzecz biorąc, tak długo, jak korzystasz z obsługiwanej wersji Debiana, trzymasz się zapasów pakietów Debiana i jesteś na bieżąco z ich aktualizacjami bezpieczeństwa, powinieneś być dobry.

Twój raport Tenable

Aby sprawdzić, czy stabilna wersja Debiana jest podatna na twoje problemy, Tenable „2.4.x <2.4.27 wiele problemów” jest bezużyteczny. Musimy dokładnie wiedzieć, o których problemach bezpieczeństwa mówią. Na szczęście każdej znaczącej podatności przypisany jest identyfikator CVE ( Common Vulnerability and Exposures ), dzięki czemu możemy z łatwością porozmawiać o konkretnych lukach.

Na przykład na tej stronie dotyczącej problemu Tenable 101788 możemy zobaczyć, że dotyczy on luk w zabezpieczeniach CVE-2017-9788 i CVE-2017-9789. Możemy wyszukiwać te luki w narzędziu do śledzenia bezpieczeństwa Debiana . Jeśli to zrobimy, możemy zobaczyć, że CVE-2017-9788 ma status „naprawiony” w lub przed wersją 2.4.10-10+deb8u11. Podobnie CVE-2017-9789 jest naprawiony .

Stały problem 10095 dotyczy CVE-2017-3167 , CVE-2017-3169 , CVE-2017-7659 , CVE-2017-7668 i CVE-2017-7679 .

Jeśli więc korzystasz z wersji 2.4.10-10+deb8u11, powinieneś być bezpieczny od wszystkich tych luk! Możesz to sprawdzić za pomocą dpkg -l apache2(upewnij się, że twój terminal jest wystarczająco szeroki, aby pokazać pełny numer wersji).

Bądź na bieżąco

Jak więc upewnić się, że jesteś na bieżąco z tymi aktualizacjami zabezpieczeń?

Po pierwsze, musisz mieć repozytorium zabezpieczeń w swoim /etc/apt/sources.listlub /etc/apt/sources.list.d/*coś takiego:

deb http://security.debian.org/ jessie/updates main

Jest to normalna część każdej instalacji, nie powinieneś robić nic specjalnego.

Następnie musisz upewnić się, że instalujesz zaktualizowane pakiety. To twoja odpowiedzialność; nie odbywa się to automatycznie. Prostym, ale żmudnym sposobem jest regularne logowanie i uruchamianie

# apt-get update
# apt-get upgrade

Sądząc po tym, że zgłaszasz swoją wersję Debiana jako 8.8 (mamy 8.9) i na ... and 48 not upgraded.podstawie twojego postu, możesz chcieć to zrobić wkrótce.

Aby otrzymywać powiadomienia o aktualizacjach bezpieczeństwa, zdecydowanie polecam zapisanie się na listę mailingową ogłoszeń bezpieczeństwa Debiana .

Inną opcją jest upewnienie się, że Twój serwer może wysyłać Ci e-maile, oraz instalacja pakietu takiego jak apticron , który wysyła Ci e -maile, gdy pakiety w twoim systemie wymagają aktualizacji. Zasadniczo regularnie uruchamia tę apt-get updateczęść i powoduje, że wykonujesz tę apt-get upgradeczęść.

Na koniec możesz zainstalować coś takiego jak aktualizacje nienadzorowane , które nie tylko sprawdzają dostępność aktualizacji, ale automatycznie instalują aktualizacje bez interwencji człowieka. Automatyczna aktualizacja pakietów bez nadzoru ze strony człowieka wiąże się z pewnym ryzykiem, dlatego musisz sam zdecydować, czy jest to dla Ciebie dobre rozwiązanie. Używam go i jestem z niego zadowolony, ale aktualizator zastrzeżeń.

Dlaczego ulepszanie siebie jest szkodliwe

W drugim zdaniu powiedziałem, że aktualizacja do najnowszej wersji Apache jest prawdopodobnie szkodliwa .

Powód tego jest prosty: jeśli postępujesz zgodnie z wersją Apache Debiana i robisz zwyczaj instalowania aktualizacji bezpieczeństwa, to jesteś w dobrej sytuacji, jeśli chodzi o bezpieczeństwo. Zespół ds. Bezpieczeństwa Debiana identyfikuje i rozwiązuje problemy bezpieczeństwa, a Ty możesz cieszyć się tą pracą przy minimalnym wysiłku.

Jeśli jednak zainstalujesz Apache 2.4.27+, powiedzmy, pobierając go ze strony Apache i samodzielnie go kompilując, wtedy praca nad rozwiązywaniem problemów związanych z bezpieczeństwem należy do Ciebie. Musisz śledzić problemy z bezpieczeństwem i przeglądać pobieranie / kompilację / etc za każdym razem, gdy pojawi się problem.

Okazuje się, że jest to sporo pracy i większość ludzi zwleka. W rezultacie uruchamiają samodzielnie skompilowaną wersję Apache, która staje się coraz bardziej wrażliwa w miarę wykrycia problemów. Tak więc kończą o wiele gorzej, niż gdyby po prostu śledzili aktualizacje zabezpieczeń Debiana. Tak, prawdopodobnie szkodliwe.

Nie oznacza to, że nie ma miejsca na samodzielne kompilowanie oprogramowania (lub selektywne pobieranie pakietów z testowania Debiana lub niestabilności), ale ogólnie odradzam.

Czas trwania aktualizacji zabezpieczeń

Debian nie utrzymuje swoich wydań na zawsze. Zasadniczo wydanie Debian otrzymuje pełne wsparcie bezpieczeństwa przez rok po tym, jak zostało zastąpione przez nowszą wersję.

Wersja, którą uruchamiasz, Debian 8 / jessie, jest przestarzałą wersją stabilną ( oldstablew kategoriach Debiana). Otrzyma pełne wsparcie bezpieczeństwa do maja 2018 r. , A wsparcie długoterminowe do kwietnia 2020 r. Nie jestem całkowicie pewien, jaki jest zakres tego wsparcia LTS.

Obecna stabilna wersja Debiana to Debian 9 / stretch. Rozważ uaktualnienie do Debian 9 , który zawiera nowsze wersje całego oprogramowania, oraz pełne wsparcie bezpieczeństwa przez kilka lat (prawdopodobnie do połowy 2020 r.). Zalecam aktualizację w dogodnym dla Ciebie terminie, ale na długo przed majem 2018 r.

Uwagi końcowe

Wcześniej napisałem, że poprawki bezpieczeństwa dla Debian backports. Ten zakończył się nie do utrzymania jakiegoś oprogramowania ze względu na wysokie tempo rozwoju i wysokiego tempa kwestii bezpieczeństwa. Te pakiety są wyjątkiem i zostały zaktualizowane do najnowszej wersji. Pakiety, o których wiem, że dotyczą chromium(przeglądarki) firefox, i nodejs.

Wreszcie, ten cały sposób radzenia sobie z aktualizacjami bezpieczeństwa nie jest unikalny dla Debiana; wiele dystrybucji działa w ten sposób, szczególnie te, które preferują stabilność w stosunku do nowego oprogramowania.


Słyszę punkty, które tu robisz, ale byłyby o wiele bardziej znaczące, gdyby porównać Stretch (stabilny) do Sid (niestabilny). Mimo to większość uwagi przyciąga Stretch, a te same zasady dotyczą aktualizacji zabezpieczeń. Główną przyczyną oldstable jest obsługa starszych wersji dla wszystkich tych leniwych administratorów systemu lub tylko tych z wewnętrznymi zależnościami oprogramowania, które nie zostały zaktualizowane. Czy możesz zademonstrować znaczącą różnicę w bezpieczeństwie, używając stabilnej vs starej stabilnej?
jdwolf,

@jdwolf O ile mi wiadomo, o ile jest obsługiwany oldstable, otrzymuje tyle samo wsparcia bezpieczeństwa, co stabilny. Zarządzam kilkadziesiąt maszyn Debiana, obecnie mieszanką jessie i stretch, i czytam wszystkie DSA, które mnie dotyczą. Nigdy nie zauważyłem, że wzór oldstable nie przyciąga wystarczającej uwagi. Jeśli kiedykolwiek czytasz DSA, możesz zauważyć, że mają one tendencję do wypisywania poprawionej wersji zarówno stabilnej, jak i starej (zwykle wraz z informacjami o testowaniu i niestabilności) w tym samym ogłoszeniu.
marcelm

Rozumiem, ale twój post sprawia wrażenie, że aktualizacja ze starej do stabilnej jest złą rzeczą.
jdwolf,

@jdwolf To wcale nie jest moja intencja! W rzeczywistości polecam stabilne w stosunku do oldstable (zakładając, że sytuacja na to pozwala). Z jakiej części masz wrażenie? Trochę zredagowałem swój post; mam nadzieję, że teraz jest jaśniej. Nie opowiadam się za oldstable nad stabilnością.
marcelm

6

Debian Jessie jest nadal obsługiwany, a poprawki bezpieczeństwa zawarte w nowszych wersjach zostały przeniesione do pakietu dostępnego w Jessie (2.4.10-10 + deb8u11, co oznacza, że ​​do tej pory wprowadzono 11 aktualizacji od wydania Jessie). Wszystkie znane, naprawialne luki w Apache zostały naprawione w pakiecie Jessie ; tak długo, jak aktualizujesz swoją instalację, powinieneś być bezpieczny. Przyszłe luki będą nadal naprawiane w Jessie, dopóki będą obsługiwane.

Jest mało prawdopodobne, aby nowsza wersja kiedykolwiek została przeniesiona do Jessie. Jak wskazano powyżej, jesteś bezpieczny, jeśli pozostaniesz na Jessie, o ile jest ona obsługiwana; jeśli potrzebujesz nowszych funkcji niedostępnych w 2.4.10, musisz zaktualizować system do wersji Debian 9.


3

Używasz Debian Jessie, która jest starą stabilną wersją Debiana. Najnowsza wersja Apache w Jessie to 2.4.10.

Masz więc dwie opcje, uruchom apt dist-upgrade i migruj do Debian Stretch lub możesz poczekać, aż będzie dostępny w backportach.


A co my w wersji apache w stretch debian?
wawanopoulos

@wawanopoulos2.4.25-3+deb9u3
LinuxSecurityFreak

3

OP stwierdził w komentarzach, że:

  • Są na Debian Jessie.
  • Chcą zaktualizować Apache, aby rozwiązać problem bezpieczeństwa.

Debian Jessie jest obecny oldstable uwolnienie (od 2017-11-12). Powinien otrzymywać regularne aktualizacje bezpieczeństwa od zespołu bezpieczeństwa Debiana. Na najczęściej zadawane pytania dotyczące bezpieczeństwa Debiana :

Zespół ds. Bezpieczeństwa próbuje wspierać stabilną dystrybucję przez około rok po wydaniu kolejnej stabilnej dystrybucji, z wyjątkiem sytuacji, gdy w tym roku zostanie wydana kolejna stabilna dystrybucja. Nie można obsługiwać trzech dystrybucji; obsługa dwóch jednocześnie jest już wystarczająco trudna.

Obecna stabilna wersja Debiana to Stretch, która została wydana 17.06.2017 . Dlatego oczekujemy, że zespół ds. Bezpieczeństwa będzie wspierać Jessie do około połowy 2018 roku. Po tym czasie będzie w LTS do końca kwietnia 2020 r.

Podsumowując: system OP jest nadal obsługiwany. OP może kontynuować aktualizację apache2pakietu jak zwykle. Jeśli nie mają jeszcze aktualizacji zabezpieczeń, otrzymają ją, gdy tylko zostanie zaktualizowana i wydana. Numery wersji mogą się nie zgadzać, ale nie oznacza to, że system jest niepewny.

Zgodnie z tym e-mailem we wrześniu Debian dokonał backportu poprawki do CVE-2017-9798 w Jessie. Jeśli dotyczy to luki w zabezpieczeniach, której dotyczy OP (a repozytorium jessie-security znajduje się w swoim pliku sources.list, tak jak powinno być), to powinno już zostać naprawione w ich systemie (i mogą to potwierdzić, uruchamiając apt show apache2i sprawdzając, czy to wersja jest 2.4.10-10+deb8u11). Jeśli nie, to powinni umieścić numer CVE w polu wyszukiwania w module monitorującym bezpieczeństwo Debiana i zobaczyć, co się pojawi. Powinien stworzyć stronę opisującą stan podatności w różnych wersjach Debiana; OP będzie szukał wiersza „jessie (security)”.


1

Apache2 (2.4.10-10) to najnowsza wersja zainstalować z repozytorium Debiana poprzez aptpolecenia, gdy jest dostępna nowa wersja zostanie zaktualizowany automatycznie przez apt.

niestety apache2nie jest dostępne na bacports Jessie.

Możesz zainstalować najnowszą wersję dostępną na stronie apache , kompilując:

Kompilowanie i instalowanie


To zła rada; jeśli OP skompiluje swój własny Apache, będzie musiał to zrobić po każdym wykrytym problemie bezpieczeństwa. O wiele lepiej jest pozostać przy obsługiwanej wersji uruchomionej dystrybucji.
marcelm

1

Dostępną wersję można wyświetlić w repozytorium za pomocą:

root@server 20:54:59:~# apt-cache policy apache2
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.