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?
debian
apache-httpd
wawanopoulos
źródło
źródło
Odpowiedzi:
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 naprawiony2.4.26
, Debian weźmie tę poprawkę bezpieczeństwa, zastosuje ją2.4.10
i roześle2.4.10
ją 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 (
.9
w Debianie8.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.list
lub/etc/apt/sources.list.d/*
coś takiego: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
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 update
część i powoduje, że wykonujesz tęapt-get upgrade
część.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ą (oldstable
w 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
, inodejs
.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.
źródło
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.
źródło
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.
źródło
2.4.25-3+deb9u3
OP stwierdził w komentarzach, że:
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 :
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ę
apache2
pakietu 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 apache2
i sprawdzając, czy to wersja jest2.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)”.źródło
Apache2 (2.4.10-10) to najnowsza wersja zainstalować z repozytorium Debiana poprzez
apt
polecenia, gdy jest dostępna nowa wersja zostanie zaktualizowany automatycznie przezapt
.niestety
apache2
nie jest dostępne na bacports Jessie.Możesz zainstalować najnowszą wersję dostępną na stronie apache , kompilując:
Kompilowanie i instalowanie
źródło
Dostępną wersję można wyświetlić w repozytorium za pomocą:
źródło