Fullmoon System

Configurer CentOS 7 Vault : récupération après la fin de vie et préparation de la migration

EdwardMoon

CentOS 7 Vault est une archive en lecture seule des derniers paquets de CentOS Linux 7.9.2009, dont la maintenance a pris fin. Si la disparition des listes de miroirs empêche les recherches de paquets, cette archive peut servir temporairement à récupérer les données et à préparer une migration. Elle ne fournit ni nouveaux correctifs de sécurité ni maintenance continue.

CentOS Linux 7 a atteint sa fin de vie le 30 juin 2024. Ne prolongez pas l'exploitation d'un serveur de production exposé à Internet en remplaçant simplement ses dépôts par Vault. Isolez-le, effectuez les sauvegardes et inventaires nécessaires, puis migrez vers un Linux pris en charge.

Récupération d'urgence avec CentOS 7 Vault : utiliser temporairement l'archive en lecture seule, puis migrer vers un Linux pris en charge
Vault permet une récupération temporaire sans rétablir la maintenance de sécurité ; la dernière étape reste la migration vers un Linux pris en charge

Dans quels cas utiliser CentOS 7 Vault ?

Situation Décision Action
Serveur isolé nécessitant un outil de sauvegarde Usage temporaire acceptable Vérifier Vault, puis sauvegarder immédiatement
Inventaire des paquets et des dépendances Usage temporaire acceptable Conserver les résultats, puis migrer
Serveur de production exposé à Internet Usage inacceptable Isoler ou migrer vers un système pris en charge
Besoin de correctifs de sécurité Non fourni Utiliser une distribution prise en charge

Étape 1 : isoler et sauvegarder avant d'utiliser Vault

cat /etc/centos-release
uname -r
sudo install -d -m 0700 /root/repo-backup
sudo cp -a /etc/yum.repos.d /root/repo-backup/
sudo rpm -qa --qf '%{NAME}|%{VERSION}-%{RELEASE}|%{ARCH}\n'   | sort | sudo tee /root/repo-backup/packages.txt >/dev/null
sudo sha256sum /root/repo-backup/packages.txt

Avant de modifier les dépôts, réduisez l'exposition externe avec le pare-feu ou les groupes de sécurité et assurez un accès console. Conservez les fichiers de dépôts, l'inventaire des paquets et l'état des services pour suivre les changements réalisés pendant la récupération.

Étape 2 : désactiver les anciens miroirs

sudo grep -RHE '^[[]|^enabled=|^baseurl=|^mirrorlist=|^metalink='   /etc/yum.repos.d/*.repo
sudo mkdir -p /etc/yum.repos.d/disabled
sudo mv /etc/yum.repos.d/CentOS-*.repo   /etc/yum.repos.d/disabled/
N'utilisez pas de caractère générique pour déplacer des fichiers de dépôts appartenant à d'autres fournisseurs. Vérifiez la liste exacte des fichiers avant toute commande et traitez les dépôts privés ou d'agents selon le plan de migration de leur responsable.

Étape 3 : créer le fichier de dépôt CentOS 7 Vault

sudo tee /etc/yum.repos.d/CentOS-Vault-7.9.2009.repo >/dev/null <<'REPO'
[base]
name=CentOS-7.9.2009 - Base - Vault
baseurl=https://vault.centos.org/7.9.2009/os/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-7.9.2009 - Updates - Vault
baseurl=https://vault.centos.org/7.9.2009/updates/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-7.9.2009 - Extras - Vault
baseurl=https://vault.centos.org/7.9.2009/extras/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
REPO
7.9.2009 est la dernière arborescence de version de CentOS Linux 7. Ne contournez pas les erreurs en désactivant la vérification GPG, en imposant HTTP ou en installant directement des RPM d'origine inconnue.

Étape 4 : vérifier HTTPS et les métadonnées

curl --proto '=https' --tlsv1.2 --fail --head   https://vault.centos.org/7.9.2009/os/x86_64/repodata/repomd.xml

sudo yum clean all
sudo rm -rf /var/cache/yum
sudo yum makecache
sudo yum repolist enabled
sudo yum repoinfo base updates extras

Étape 5 : vérifier la signature GPG

rpm -qf /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
KEYCHECK_DIR=$(mktemp -d)
chmod 0700 "$KEYCHECK_DIR"
gpg --homedir "$KEYCHECK_DIR" --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
gpg --homedir "$KEYCHECK_DIR" --fingerprint
# Comparer à l'empreinte officielle en utilisant uniquement un trousseau GPG privé dans un répertoire temporaire.

sudo yum install yum-utils
VAULT_CHECK_DIR=$(mktemp -d)
cd "$VAULT_CHECK_DIR"
yumdownloader --destdir . centos-release
rpm --checksig --verbose ./*.rpm

La présence d'un fichier de clé GPG ne suffit pas à établir la confiance. Vérifiez qu'il appartient au paquet centos-release installé et comparez son empreinte à l'empreinte officielle. Maintenez la vérification des signatures des RPM téléchargés.

Étape 6 : limiter les opérations de récupération

# Vérifier les paquets ciblés et leurs dépendances avant l'installation
sudo yum install --assumeno rsync tar

# Installer uniquement les outils de récupération approuvés
sudo yum install rsync tar

sudo yum history info last
sudo rpm -Va | sudo tee /root/repo-backup/rpm-verify-after.txt >/dev/null
Les derniers paquets de Vault ne corrigent pas les vulnérabilités découvertes après la fin de vie. Installez uniquement les outils nécessaires à la récupération et raccourcissez le délai de migration, plutôt que d'effectuer une mise à jour générale pour prolonger l'exploitation.

Étape 7 : collecter les informations de migration

sudo systemctl list-unit-files --state=enabled   | sudo tee /root/repo-backup/enabled-units.txt >/dev/null
sudo ss -lntup | sudo tee /root/repo-backup/listeners.txt >/dev/null
sudo firewall-cmd --list-all-zones   | sudo tee /root/repo-backup/firewalld.txt >/dev/null
getenforce | sudo tee /root/repo-backup/selinux-mode.txt >/dev/null
sudo find /etc/systemd/system -type f -print   | sudo tee /root/repo-backup/systemd-local-files.txt >/dev/null
sudo tar -C /root -czf /root/centos7-migration-inventory.tgz repo-backup

Étape 8 : diagnostiquer les erreurs

Could not resolve host

getent ahosts vault.centos.org
cat /etc/resolv.conf
ip route
curl --fail --head https://vault.centos.org/

SSL certificate problem

date -u
timedatectl status
rpm -q ca-certificates
trust list --filter=ca-anchors
openssl s_client -connect vault.centos.org:443   -servername vault.centos.org -verify_return_error </dev/null

Vérifiez successivement l'heure, le DNS, le proxy et la chaîne de certification. Ne désactivez pas la validation TLS et ne rendez pas permanente l'option insecure de curl.

Erreur 404 ou erreur de métadonnées

sudo yum repolist -v
sudo grep -RHE '^baseurl=|^mirrorlist=|^metalink='   /etc/yum.repos.d/*.repo
curl --fail --head   https://vault.centos.org/7.9.2009/updates/x86_64/repodata/repomd.xml

Étape 9 : retirer Vault après la migration

sudo yum-config-manager --disable base updates extras
sudo mv /etc/yum.repos.d/CentOS-Vault-7.9.2009.repo   /etc/yum.repos.d/disabled/
sudo yum clean all

Quand Vault n'est plus nécessaire, désactivez sa configuration et consignez la date de fin d'utilisation dans le dossier de migration. Bloquez les écritures sur l'ancien serveur CentOS 7, puis retirez-le selon la procédure de l'organisation après expiration de sa durée de conservation.

Documentation officielle et articles associés

À retenir sur CentOS 7 Vault

CentOS 7 Vault conserve en lecture seule les derniers paquets de CentOS 7 ; il ne rétablit pas les mises à jour de sécurité. Isolez le serveur, vérifiez les dépôts, GPG et HTTPS, puis récupérez uniquement les outils et informations nécessaires. Migrez dès que possible vers un environnement pris en charge, comme Rocky Linux.