Apt

擴展包簽名密鑰

  • February 1, 2018

我有一大堆遠端鎖定的 Debian 盒子,我無法訪問它們,所有埠都關閉了。它們數量眾多,遍布全國,物理訪問將是一項相當麻煩的後勤操作。

這些框由定期apt-get upgrade -y針對專用儲存庫執行的本地 cron 作業更新。

我發現儲存庫的歌唱密鑰即將到期。這將使得無法再更新這些框。我已經更新了可公開訪問的密鑰伺服器上的歌唱密鑰,但如果 apt-get 發現密鑰已過期,它似乎不會自動更新來自密鑰伺服器的密鑰。

我可以發送更新以向更新腳本添加一些內容以更新密鑰。但是,如果在密鑰過期之前關閉了一個框,則無法再安裝修復此問題的更新。

我試圖重新上傳儲存庫中的所有包以未簽名,以解決這個問題。但隨後 apt-get 告訴我:

WARNING: The following packages cannot be authenticated! E: There are problems and -y was used without --force-yes

這基本上給了我同樣的問題,我只能通過通過儲存庫發送更新來修復更新腳本,由於簽名密鑰過期,該更新很快將被忽略。並且在密鑰過期之前錯過獲取更新的任何框都將不再更新。

我現在有點著急了。在沒有物理訪問所有這些遠端盒子的情況下,我有什麼辦法可以擺脫這種情況?

不,如果在密鑰過期之前未更新框,則不能。

正如您所說,這些盒子不會自動更新密鑰,它們既不會安裝未簽名的軟體包,也不會安裝使用過期密鑰簽名的軟體包。如果他們這樣做,整個簽約將毫無意義。

因此,最好的選擇似乎是盡快啟動它們並在舊密鑰到期之前部署新密鑰。對於其他機器,您將需要使用 ssh 或本地訪問或任何其他方式來部署新密鑰。

引用自:https://serverfault.com/questions/895188