在 Linux 中驗證 ISO 文件的初學者指南
從互聯(lián)網(wǎng)下載操作系統(tǒng)鏡像文件或軟件有時會帶來安全風險,因為惡意行為者可能會損壞或修改文件。為保證下載文件的真實性和完整性,需要對其進行校驗。在本初學者指南中,我們將引導你在 Linux 中驗證 ISO 文件。
什么是 ISO 文件?
ISO 文件通常用于創(chuàng)建可啟動媒體、安裝軟件和創(chuàng)建備份。ISO 文件包含壓縮格式的所有原始應用/光盤數(shù)據(jù),可以輕松下載并通過互聯(lián)網(wǎng)共享。
例如,如果你下載 Ubuntu 桌面、服務器或任何其他 Linux 操作系統(tǒng),你一定遇到過擴展名為 .iso 的文件。它還用于應用或其他操作系統(tǒng),例如 Windows。
為什么要驗證 ISO 文件?
驗證 ISO 文件對于確保下載的文件真實且未被修改至關重要。修改后的 ISO 文件可能包含可能損害你系統(tǒng)的惡意軟件或病毒。驗證 ISO 文件可確保下載的文件與開發(fā)人員創(chuàng)建的文件相同且未被篡改。
例如,幾年前 Linux Mint 服務器被黑 并且官方 ISO 文件被修改。由于你是從官方網(wǎng)站下載的,你可能會認為這些文件是真實的,但它們不一定是。
因此,在使用 ISO 文件安裝到你的筆記本電腦/臺式機之前,始終驗證 ISO 文件非常重要。
在 Linux 中驗證 ISO 文件的方法
Linux 中校驗 ISO 文件的常用方法有兩種:
- 使用 SHA-256 校驗和
- 使用 GPG 簽名
使用 SHA-256 校驗和
SHA-256 是一種加密哈希函數(shù),可為文件生成唯一的哈希值。校驗和是將 SHA-256 算法應用于文件的結果。校驗和是一個唯一的字符串,可用于驗證文件的完整性。
要使用 SHA-256 校驗和驗證 ISO 文件,請從開發(fā)者網(wǎng)站下載 SHA-256 校驗和。SHA-256 校驗和文件將包含 ISO 文件的校驗和值。你需要生成下載的 ISO 文件的校驗和值,并將其與 SHA-256 校驗和文件中的校驗和值進行比較。如果兩個值匹配,則下載的 ISO 文件是真實的且未被修改。
使用 GPG 簽名
GPG(GNU Privacy Guard)是一種加密軟件,可用于對文件進行簽名和驗證。GPG 簽名是一種數(shù)字簽名,可確保文件的真實性和完整性。開發(fā)者使用他們的私鑰簽署 ISO 文件,用戶使用開發(fā)者的公鑰驗證簽名。
要使用 GPG 簽名驗證 ISO 文件,你需要從開發(fā)者網(wǎng)站下載 GPG 簽名文件。GPG 簽名文件將包含開發(fā)者的公鑰和 ISO 文件的簽名。你需要導入開發(fā)者公鑰,下載 ISO 文件和 GPG 簽名文件,并使用開發(fā)者公鑰對 ISO 文件進行簽名驗證。如果簽名有效,則 ISO 文件是真實的并且未被修改。
如何在 Linux 中驗證 ISO 文件:示例
讓我們看一下上述在 Linux 中使用 SHA-256 校驗和及 GPG 簽名驗證 ISO 文件的方法的一些示例。
使用 SHA-256 校驗和驗證 ISO 文件
示例 - 要驗證和校驗和的 ISO 文件
- 我已經從 官方網(wǎng)站 下載了 Linux Mint 21.1 ISO 文件。
- 此外,我還下載了包含 ISO 文件校驗和的 SHA-256 文本文件(見上圖)。
- 現(xiàn)在,打開終端并轉到 ISO 和 SHA-256 校驗和文件所在的目錄。
- 在終端中使用
sha256sum
命令生成 ISO 文件的 SHA-256 校驗和值。例如,要生成上述名為 linuxmint-21.1-cinnamon-64bit.iso 的 ISO 文件的校驗和值,請運行以下命令:
sha256sum linuxmint-21.1-cinnamon-64bit.iso
- 將生成的校驗和值與 SHA-256 校驗和文件中的校驗和值進行比較。如果兩個值匹配,則 ISO 文件是真實的并且未被修改。
- 這是上述 ISO 文件的并排比較。
使用 sha256sum 命令驗證 ISO 文件
如果校驗和匹配,你可以確信該文件是真實的并且沒有被篡改。你可以對任何其他 ISO 文件和校驗和使用相同的命令進行驗證。
現(xiàn)在,讓我們看看如何使用 GPG 密鑰進行驗證。
使用 GPG 簽名驗證 ISO 文件
對于上面的示例,我已經從官方網(wǎng)站下載了 .gpg 文件和 ISO 文件。
下一步是下載并導入開發(fā)者的公鑰。你可以從開發(fā)者的網(wǎng)站或密鑰服務器下載公鑰。
我使用下面的命令為這個例子下載了 Linux Mint 的公鑰。因此,對于相應 Linux 發(fā)行版文件的 ISO 文件,請查看下載頁面以找出公鑰。
gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-key "27DE B156 44C6 B3CF 3BD7 D291 300F 846B A25B AE09"
注意:你還可以下載公鑰 .asc
文件(如果有),然后使用命令 gpg --import developer_key_file.asc
將其導入你的系統(tǒng)。
完成后,運行下面的 gpg 命令來驗證文件。
gpg --verify sha256sum.txt.gpg sha256sum.txt
使用 gpg 密鑰驗證 ISO 文件
如果文件是真實的,你應該會在上述命令的輸出中看到 “Good signature” 消息。此外,你可以匹配公鑰的最后 8 個字節(jié)?!癢arning” 是一條通用消息,你可以忽略它。
總結
驗證 ISO 文件是確保下載文件的真實性和完整性的重要步驟。在本初學者指南中,我介紹了在 Linux 中使用 SHA-256 校驗和和 GPG 簽名驗證 ISO 文件的方法和步驟。通過執(zhí)行這些步驟,你可以自信地下載和使用 ISO 文件,知道它們沒有被修改并且可以安全使用。
請記住,即使你是從官方網(wǎng)站下載的,在你驗證之前你永遠不會知道 ISO 文件是否真實。因此,請將此作為最佳實踐。
(題圖:MJ/iso cd image illustration in high resolution, very detailed, 8k)