1 votes

Sous Debian, comment auditer les paquets installés par rapport aux paquets d'un dépôt particulier ?

Je gère un certain nombre de serveurs Debian et je suis généralement le dépôt stable de Debian, mais j'installe occasionnellement à partir du dépôt de test de Debian ou de sources tierces. À des fins d'audit, sur chaque machine, pour tous les paquets actuellement installés, je voudrais comparer la version du paquet installé avec la version du paquet dans un dépôt particulier, c'est-à-dire le dépôt stable de Debian.

En utilisant les modèles de recherche d'aptitude, je peux identifier les paquets installés qui sont ou ne sont pas disponibles dans le dépôt stable de Debian :

aptitude search "?installed?origin(Debian)?archive(stable)"
aptitude search "?installed?not(?origin(Debian)?archive(stable))"

Mais pour les paquets disponibles dans le dépôt stable de Debian, je ne suis pas en mesure de déterminer si la version installée correspond à la version du dépôt.

Je suppose qu'il serait possible d'utiliser l'épinglage apt pour forcer une mise à niveau :

Package:      *
Pin:          release n=stable, o=Debian
Pin-Priority: 1001

Et ensuite utiliser le mode de fonctionnement à sec pour vérifier quels paquets seraient affectés :

apt-get update
apt-get --dry-run upgrade

Mais pour atténuer les risques liés à l'utilisation de l'épinglage d'apt sur 1000, il faudrait une configuration distincte pour apt, ce qui semble plus compliqué que nécessaire.

Une possibilité pour l'avenir serait de mettre en place un dépôt privé, et de n'installer qu'à partir du dépôt stable de Debian ou du dépôt privé. Ainsi, si un paquet était disponible dans le dépôt privé, on pourrait supposer (à des fins d'audit) qu'il n'a pas été installé à partir du dépôt stable de Debian. Tant que les paquets ne sont jamais installés manuellement, cela pourrait fonctionner raisonnablement bien. Mais mettre en place un dépôt privé semble un peu exagéré pour ce qui pourrait être une simple commande.

Existe-t-il un meilleur moyen de vérifier les versions des paquets ? Ou mieux encore, d'auditer les signatures de paquets ?

0voto

beppe9000 Points 155

Comme ça :

aptitude search "?installed?not(?narrow(?installed,?origin(^Debian$)?archive(^stable$)))"

Utilisation de ?narrow compare les noms des paquets y Ainsi, la méthode ci-dessus compare les noms et les versions des paquets installés avec les noms et les versions des paquets du référentiel stable de Debian, puis inverse la correspondance pour trouver les paquets installés qui ne correspondent pas à la version du référentiel stable de Debian.

Danila Ladner La suggestion tirée des commentaires a également été utile ; j'ai transmis les résultats de la commande aptitude à apt-cache policy <package> afin de voir les détails de la version des paquets qui sont apparus lors de la recherche initiale et qui devaient être examinés de plus près.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X