Comment mettre à jour apache2 vers la dernière version de Debian Jessie?

16

Dans ma machine Debian, la version actuelle d'apache2 est 2.4.10:

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

Je voudrais mettre à jour apache vers une dernière version (au moins 2.4.26): J'ai essayé:

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.

Mais il ne trouve aucune mise à jour. Que puis-je faire pour passer à une dernière version?

entrez la description de l'image ici

wawanopoulos
la source
Quelle version de Debian utilisez-vous?
Jan
1
Pourquoi voulez-vous mettre à jour?
Stephen Kitt du
1
@wawanopoulos: Jessie est toujours prise en charge , vous devez donc vous attendre à ce que des correctifs de sécurité ou des rétroportages apparaissent même si le numéro de version diffère de l'amont.
Kevin
1
Il n'y a rien à réparer.
Stephen Kitt,
1
Ils sont corrigés dans le paquet Debian. Le rapport Tenable est basé uniquement sur les numéros de version, ce qui malheureusement ne fonctionne pas avec de nombreux packages de distribution.
Stephen Kitt,

Réponses:

32

Ne mettez pas à niveau manuellement Apache.

La mise à niveau manuelle pour des raisons de sécurité est inutile et probablement nuisible.

Comment Debian publie le logiciel

Pour comprendre pourquoi, vous devez comprendre comment Debian traite les problèmes de packaging, de versions et de sécurité. Parce que Debian valorise la stabilité par rapport aux changements, la politique consiste à geler les versions logicielles dans les packages d'une version stable. Cela signifie que pour une version stable très peu de changements, et une fois que les choses fonctionnent, ils devraient continuer à fonctionner pendant longtemps.

Mais que se passe-t-il si un bug grave ou un problème de sécurité est découvert après la sortie d'une version stable de Debian? Celles-ci sont corrigées, dans la version logicielle fournie avec Debian stable . Donc, si Debian stable est livré avec Apache 2.4.10, un problème de sécurité est trouvé et corrigé 2.4.26, Debian prendra ce correctif de sécurité, l'appliquera 2.4.10et le distribuera 2.4.10à ses utilisateurs. Cela minimise les perturbations des mises à niveau de version, mais rend le reniflage de version tel que Tenable n'a aucun sens.

Des bogues graves sont collectés et corrigés dans des versions ponctuelles ( .9dans Debian 8.9) tous les quelques mois. Les correctifs de sécurité sont corrigés immédiatement et fournis via un canal de mise à jour.

En général, tant que vous exécutez une version Debian prise en charge, que vous vous en tenez aux stocks de paquets Debian et que vous restez à jour sur leurs mises à jour de sécurité, vous devriez être bon.

Votre rapport Tenable

Pour vérifier si Debian stable est vulnérable à vos problèmes, les «multiples problèmes 2.4.x <2.4.27» de Tenable sont inutiles. Nous devons savoir exactement de quels problèmes de sécurité ils parlent. Heureusement, chaque vulnérabilité significative se voit attribuer un identificateur CVE ( Common Vulnerability and Exposures ), afin que nous puissions parler facilement de vulnérabilités spécifiques.

Par exemple, sur cette page pour le problème Tenable 101788, nous pouvons voir que ce problème concerne les vulnérabilités CVE-2017-9788 et CVE-2017-9789. Nous pouvons rechercher ces vulnérabilités sur le traqueur de sécurité Debian . Si nous le faisons, nous pouvons voir que CVE-2017-9788 a le statut "fixe" dans ou avant la version 2.4.10-10+deb8u11. De même, CVE-2017-9789 est fixe .

Le problème tenable 10095 concerne CVE-2017-3167 , CVE-2017-3169 , CVE-2017-7659 , CVE-2017-7668 et CVE-2017-7679 , tous corrigés.

Donc, si vous êtes sur la version 2.4.10-10+deb8u11, vous devriez être à l'abri de toutes ces vulnérabilités! Vous pouvez vérifier cela avec dpkg -l apache2(assurez-vous que votre terminal est suffisamment large pour afficher le numéro de version complet).

Rester à jour

Alors, comment vous assurez-vous d'être à jour avec ces mises à jour de sécurité?

Tout d'abord, vous devez avoir le référentiel de sécurité dans votre /etc/apt/sources.listou /etc/apt/sources.list.d/*quelque chose comme ceci:

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

C'est une partie normale de toute installation, vous ne devriez rien faire de spécial.

Ensuite, vous devez vous assurer que vous installez les packages mis à jour. C'est votre responsabilité; cela ne se fait pas automatiquement. Un moyen simple mais fastidieux consiste à se connecter régulièrement et à exécuter

# apt-get update
# apt-get upgrade

À en juger par le fait que vous signalez votre version Debian comme 8.8 (nous sommes à 8.9) et celle ... and 48 not upgraded.de votre message, vous voudrez peut-être le faire bientôt.

Pour être informé des mises à jour de sécurité, je recommande fortement de souscrire à la liste de diffusion des annonces de sécurité Debian .

Une autre option consiste à s'assurer que votre serveur peut vous envoyer des e-mails et à installer un package comme apticron , qui vous envoie des e-mails lorsque des packages sur votre système doivent être mis à jour. Fondamentalement, il exécute régulièrement la apt-get updatepartie et vous harcèle pour faire la apt-get upgradepartie.

Enfin, vous pouvez installer quelque chose comme des mises à niveau sans assistance , qui non seulement vérifie les mises à jour, mais installe automatiquement les mises à jour sans intervention humaine. La mise à niveau automatique des packages sans supervision humaine comporte certains risques, vous devez donc décider par vous-même si c'est une bonne solution pour vous. Je l'utilise et j'en suis satisfait, mais mise à jour du caveat.

Pourquoi vous mettre à niveau est dangereux

Dans ma deuxième phrase, j'ai dit que la mise à niveau vers la dernière version d'Apache est probablement nuisible .

La raison en est simple: si vous suivez la version d'Apache de Debian et prenez l'habitude d'installer les mises à jour de sécurité, alors vous êtes en bonne position, en termes de sécurité. L'équipe de sécurité Debians identifie et corrige les problèmes de sécurité, et vous pouvez profiter de ce travail avec un minimum d'effort.

Si, toutefois, vous installez Apache 2.4.27+, par exemple en le téléchargeant à partir du site Web d'Apache et en le compilant vous-même, le travail de gestion des problèmes de sécurité vous appartient entièrement. Vous devez suivre les problèmes de sécurité et effectuer le travail de téléchargement / compilation / etc chaque fois qu'un problème est détecté.

Il s'avère que c'est une bonne quantité de travail, et la plupart des gens se relâchent. Ils finissent donc par exécuter leur version auto-compilée d'Apache qui devient de plus en plus vulnérable à mesure que des problèmes sont détectés. Et donc ils finissent bien pire que s'ils avaient simplement suivi les mises à jour de sécurité de Debian. Alors oui, probablement nocif.

Cela ne veut pas dire qu'il n'y a pas de place pour compiler le logiciel vous-même (ou prendre sélectivement des paquets à partir de tests Debian ou instables), mais en général, je le déconseille.

Durée des mises à jour de sécurité

Debian ne conserve pas ses versions pour toujours. En règle générale, une version Debian reçoit un support de sécurité complet pendant un an après avoir été obsolète par une version plus récente.

La version que vous utilisez, Debian 8 / jessie, est une version stable obsolète ( oldstableen termes Debian). Il recevra un support de sécurité complet jusqu'en mai 2018 et un support à long terme jusqu'en avril 2020. Je ne suis pas tout à fait sûr de l'étendue de ce support LTS.

La version stable actuelle de Debian est Debian 9 / stretch. Envisagez de passer à Debian 9 , qui est fourni avec des versions plus récentes de tous les logiciels et une prise en charge complète de la sécurité pendant plusieurs années (probablement jusqu'à la mi-2020). Je recommande la mise à niveau à un moment qui vous convient, mais bien avant mai 2018.

Remarques de clôture

Plus tôt, j'ai écrit que Debian rétroportait les correctifs de sécurité. Cela s'est avéré intenable pour certains logiciels en raison du rythme élevé de développement et du taux élevé de problèmes de sécurité. Ces packages sont l'exception et sont actuellement mis à jour vers une version amont récente. Les packages que je connais s'appliquent à chromium(le navigateur),, firefoxet nodejs.

Enfin, toute cette façon de gérer les mises à jour de sécurité n'est pas unique à Debian; de nombreuses distributions fonctionnent comme ceci, en particulier celles qui favorisent la stabilité par rapport aux nouveaux logiciels.

marcelm
la source
J'entends les points que vous faites ici, mais ils seraient beaucoup plus saillants si vous comparez Stretch (stable) à Sid (instable). Stretch obtient de toute façon la plus grande attention et les mêmes règles s'appliquent aux mises à jour de sécurité. La raison principale de oldstable est la prise en charge héritée de tous ces administrateurs système paresseux ou seulement ceux avec des dépendances logicielles internes qui n'ont pas été mises à jour. Pourriez-vous démontrer une différence appréciable de sécurité en utilisant stable vs old stable?
jdwolf
@jdwolf Pour autant que je sache, tant que oldstable est pris en charge, il reçoit autant de support de sécurité que stable. Je gère plusieurs dizaines de machines Debian, actuellement un mélange de Jessie et Stretch, et je lis tous les DSA qui s'appliquent à moi. Je n'ai jamais remarqué un schéma d'ancienne étable qui n'attire pas assez l'attention. Si vous avez déjà lu des DSA, vous pouvez voir qu'ils ont tendance à répertorier la version fixe pour stable et oldstable (généralement avec des informations sur les tests et unstable) dans la même annonce.
marcelm
Je comprends cela, mais votre message donne l'impression que la mise à jour de oldstable vers stable est une mauvaise chose.
jdwolf
@jdwolf Ce n'est pas du tout mon intention! En fait, je recommande stable sur oldstable (en supposant que la situation le permet). De quelle partie avez-vous cette impression? J'ai un peu édité mon article; j'espère que c'est plus clair maintenant je ne préconise pas oldstable plutôt que stable.
marcelm
6

Debian Jessie est toujours prise en charge, et les correctifs de sécurité fournis dans les versions plus récentes ont été rétroportés dans le package disponible dans Jessie (2.4.10-10 + deb8u11, ce qui signifie qu'il y a eu 11 mises à jour jusqu'à présent depuis la sortie de Jessie). Toutes les vulnérabilités connues et corrigeables d'Apache sont corrigées dans le package Jessie ; tant que vous maintenez votre installation à jour, vous devez être en sécurité. Les futures vulnérabilités continueront d'être corrigées dans Jessie, tant qu'elle reste prise en charge.

Il est peu probable qu'une nouvelle version soit jamais rétroportée sur Jessie. Comme indiqué ci-dessus, vous êtes en sécurité si vous restez sur Jessie, tant qu'il est pris en charge; si vous avez besoin de nouvelles fonctionnalités non disponibles dans 2.4.10, vous devrez mettre à niveau vers Debian 9.

Stephen Kitt
la source
3

Vous utilisez Debian Jessie qui est l'ancienne version stable de Debian. La dernière version d'Apache dans Jessie est la 2.4.10.

Vous avez donc deux options, exécutez apt dist-upgrade et migrez vers Debian Stretch ou vous pouvez attendre qu'il soit disponible dans les rétroportages.

jdwolf
la source
Et qu'est-ce que la version apache dans Debian Stretch?
wawanopoulos
@wawanopoulos2.4.25-3+deb9u3
LinuxSecurityFreak
3

OP a indiqué dans les commentaires que:

  • Ils sont sur Debian Jessie.
  • Ils veulent mettre à niveau Apache pour résoudre un problème de sécurité.

Debian Jessie est la version oldstable actuelle (à partir du 2017-11-12). Il devrait recevoir des mises à jour de sécurité régulières de l'équipe de sécurité Debian. Selon la FAQ sur la sécurité Debian :

L'équipe de sécurité essaie de prendre en charge une distribution stable pendant environ un an après la publication de la prochaine distribution stable, sauf lorsqu'une autre distribution stable est publiée au cours de cette année. Il n'est pas possible de prendre en charge trois distributions; soutenir deux simultanément est déjà assez difficile.

L'écurie Debian actuelle est Stretch, qui a été publiée le 2017-06-17 . Par conséquent, nous nous attendons à ce que l'équipe de sécurité prenne en charge Jessie jusqu'à la mi-2018 environ. Passé ce délai, il sera en LTS jusqu'à fin avril 2020.

L'essentiel: le système OP est toujours sous support. OP peut continuer à mettre à niveau le apache2package comme d'habitude. S'ils ne disposent pas déjà de la mise à jour de sécurité, ils la recevront dès qu'elle aura été rétroportée et publiée. Les numéros de version peuvent ne pas correspondre, mais cela ne signifie pas que le système n'est pas sécurisé.

Selon cet e-mail , en septembre, Debian a rétroporté un correctif vers CVE-2017-9798 dans Jessie. S'il s'agit de la vulnérabilité dont OP est préoccupé (et que le dépôt jessie-security se trouve dans leur fichier sources.list, comme il se doit), il devrait déjà être corrigé sur leur système (et ils peuvent le confirmer en exécutant apt show apache2et en vérifiant que la version est 2.4.10-10+deb8u11). Sinon, ils devraient mettre le numéro CVE dans la boîte de recherche du tracker de sécurité Debian et voir ce qui se passe. Il devrait produire une page décrivant l'état de la vulnérabilité dans différentes versions de Debian; OP recherchera la ligne "jessie (security)".

Kevin
la source
1

L' apache2 (2.4.10-10) est la dernière version installée à partir du référentiel debian via la aptcommande, quand une nouvelle version est disponible, elle sera mise à jour automatiquement via apt.

apache2n'est malheureusement pas disponible sur jessie bacports.

Vous pouvez installer la dernière version disponible sur le site Web d'apache en compilant:

Compilation et installation

GAD3R
la source
C'est un mauvais conseil; si l'OP compile son propre Apache, il devra le faire après chaque problème de sécurité découvert. Il est préférable de conserver la version prise en charge de la distribution qu'ils exécutent.
marcelm
1

Vous pouvez voir la version disponible dans votre référentiel avec:

root@server 20:54:59:~# apt-cache policy apache2
FaxMax
la source