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