Dobrý den, drazí přátelé. Ačkoli to není vždy doporučeno, často k získání nejnovějších verzí balíčku nebo celého programu potřebujeme přidat externí úložiště. Obvykle mají tato úložiště klíč GPG, který nám umožňuje instalaci zabezpečit. Co se stane, když platnost těchto GPG klíčů vyprší? No a úložiště už není možné používat. V tomto příspěvku se tedy dozvíte, jak odstranit prošlý klíč v APT.
Podle Wikipedie:
GPG je nástroj pro šifrování a digitální podpis vyvinutý Wernerem Kochem, který je náhradou za PGP (Pretty Good Privacy), ale s hlavním rozdílem, že se jedná o svobodný software licencovaný pod GPL. GPG používá standard IETF s názvem OpenPGP.
S tímto nástrojem budeme schopni vytvořit veřejné klíče úložišť, které umožní systému určit, zda je důvěryhodný nebo ne. Zvláště pokud byly tyto balíčky upraveny a mohly by způsobit problémy v systému.
Z těchto důvodů mají všechna úložiště klíč GPG, který je nutné přidat do systému ručně nebo pomocí apt-key
.
Problém nastává, když těmto klíčům vyprší platnost, protože jsou vytvářeny na omezenou dobu. To způsobí, že APT zobrazí chybu s názvem EXPKEYSIG
.
Chcete-li tento problém vyřešit, je nejlepší odstranit klíč ze systému a poté stáhnout nový klíč GPG z úložiště.
Tak jdeme na to.
Odebrání klíče, jehož platnost vypršela, v APT
Když máme při spuštění v systému přidaný GPG klíč, jehož platnost vypršela
sudo apt update
Zobrazí se chyba podobná této.
Err:2 [repository_URL] InRelease The following signatures were invalid: EXPKEYSIG B188E2B695BD4743 Reading package lists... Done W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: [repository_URL] InRelease: The following signatures were invalid: EXPKEYSIG B188E2B695BD4743 W: Failed to fetch [repository_URL] The following signatures were invalid: EXPKEYSIG B188E2B695BD4743 W: Some index files failed to download. They have been ignored, or old ones used instead.
Důležitou součástí této chyby je ověření, že GPG klíč skutečně vypršel.
Nejlepší věcí, kterou pak uděláte, je odstranit ji ze systému. Toho lze dosáhnout dvěma způsoby. Pokud byl klíč GPG přidán ručně, je uložen v /etc/apt/trusted.gpg.d/
cestu s .gpg
a můžete jednoduše použít rm
příkaz k jeho odstranění.
Na druhou stranu, pokud byl klíč GPG přidán s apt-key
příkaz, pak je proces jiný a měli byste použít stejný příkaz k odstranění klíče GPG.
Chcete-li zkontrolovat, kterým GPG klíčům v systému vypršela platnost, můžete použít tento příkaz
sudo apt-key list 2>/dev/null | grep expired -B 1
Ukázkový výstup
pub rsa3072 2018-01-14 [SC] [expired: 2021-07-21] [SC] [expired: 2021-07-21] [expired: 2021-07-21 1505 8500 A023 5D97 F5D1 0063 B188 E2B6 95BD 4743 uid [ expired] Automatic Signing Key
Z tohoto výstupu obrazovky máme zájem získat posledních 8 čísel otisku klíče GPG. Tato čísla tvoří ID, které potřebujeme.
V tomto případě 95BD4743
je číslo, které hledáme.
Chcete-li tedy odstranit klíč GPG, musíte spustit
sudo apt-key for [ID]
Pro tento příklad by to bylo
sudo apt-key for 95BD4743
A voila, zbývá vám jen stáhnout a přidat nový klíč GPG z dotčeného úložiště.
Poté, když spustíte
sudo apt update
Chyba zmizí a budete moci úložiště znovu používat.
Závěr
V tomto příspěvku jste se naučili základní trik správy úložiště, jako je odstranění vypršeného klíče v APT. Tímto způsobem s tím nebudete mít žádné problémy, až přijde čas. Tento trik nebo návod funguje jak pro uživatele stolních počítačů, tak pro uživatele serveru.
Web GPG
Další příspěvky zabezpečení