CentOS 7のVaultリポジトリ設定:サポート終了後の復旧と移行準備
EdwardMoon
CentOS 7 Vaultは、サポートが終了したCentOS Linux 7.9.2009の最終パッケージを保存する読み取り専用アーカイブです。ミラー一覧が利用できずパッケージの照会に失敗するシステムで、データ復旧や移行準備のために一時的に使用できます。ただし、新しいセキュリティ更新や継続的な運用サポートは提供されません。
CentOS Linux 7は2024年6月30日にサポートを終了しました。インターネットに公開した本番サーバーをVaultのURLに切り替えて使い続けるのではなく、ホストを隔離し、必要なバックアップと構成情報の収集を行って、サポート対象のLinuxへ移行します。

CentOS 7 Vaultを利用できる範囲
| 状況 | 判断 | 対応 |
|---|---|---|
| バックアップツールのインストールが必要な隔離サーバー | 短期間の利用に限定 | Vaultを検証し、直ちにバックアップ |
| パッケージ一覧・依存関係の調査 | 短期間の利用に限定 | 結果を保存して移行 |
| インターネットに公開する本番サーバー | 利用対象外 | 隔離、またはサポート対象OSへの移行 |
| セキュリティ修正を受けたい場合 | 対応不可 | サポート対象のディストリビューションを使用 |
手順1: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設定変更の前に、ファイアウォールやセキュリティグループで外部への公開を最小限に抑え、コンソールへのアクセスを確保します。リポジトリファイル、パッケージ一覧、サービスの状態を保存しておけば、復旧中の変更を追跡できます。
手順2:既存のミラー設定を無効にする
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/ワイルドカードで他のベンダーのリポジトリファイルまで移動しないでください。実行前に対象一覧を確認します。社内リポジトリやエージェント用リポジトリは、管理者の移行計画に沿って個別に扱います。
手順3: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
REPO7.9.2009はCentOS Linux 7の最終リリースツリーです。GPG検証の無効化、HTTPへの強制切り替え、出所不明のRPMの直接インストールでエラーを回避しないでください。
手順4:HTTPSとメタデータを検証する
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手順5: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
# 公式フィンガープリントと照合します。一時ディレクトリ内の専用GPGキーリングだけを使用します。
sudo yum install yum-utils
VAULT_CHECK_DIR=$(mktemp -d)
cd "$VAULT_CHECK_DIR"
yumdownloader --destdir . centos-release
rpm --checksig --verbose ./*.rpmGPG鍵ファイルが存在するだけで信頼せず、既存のcentos-releaseパッケージに属するファイルかどうかと、公式に公開されたフィンガープリントを確認します。ダウンロードしたRPMの署名検証も有効なままにします。
手順6:復旧に必要な最小限の作業を行う
# インストール前に対象と依存関係を確認
sudo yum install --assumeno rsync tar
# 承認済みの復旧ツールだけをインストール
sudo yum install rsync tar
sudo yum history info last
sudo rpm -Va | sudo tee /root/repo-backup/rpm-verify-after.txt >/dev/nullVaultにある最終パッケージでは、サポート終了後の脆弱性は修正されません。全体を大規模に更新して長期間運用するのではなく、復旧に必要な最小限のツールだけをインストールし、移行までの時間を短縮します。
手順7:移行に必要な情報を収集する
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手順8:障害を切り分ける
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時刻、DNS、プロキシ、CAチェーンの順に確認します。TLS検証を無効にしたり、curlのinsecureオプションを恒久的に設定したりしないでください。
404またはメタデータのエラー
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手順9:移行後にVault設定を撤去する
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 allVaultが不要になったら設定を無効にし、サポート対象OSへの移行記録に利用終了時刻を残します。旧CentOS 7サーバーは書き込みを停止し、保存期間が終了してから組織の廃棄手順に従って撤去します。
公式資料と関連記事
- CentOS Linuxの公式サポート終了案内
- CentOSプロジェクトの終了日のお知らせ
- 公式7.9.2009パッケージアーカイブ
- CentOS 7からRocky Linux 8への移行
- Linuxのディスク容量・inode不足の診断
CentOS 7 Vaultの要点
CentOS 7 Vaultは、サポート終了後のサーバー向けセキュリティ更新チャネルではなく、CentOS 7の最終パッケージを保存する読み取り専用アーカイブです。ホストを隔離してリポジトリ・GPG・HTTPSを検証し、復旧ツールと移行情報を確保したら、できるだけ早くRocky Linuxなどのサポート対象環境へ移行してください。