當前位置: 首頁>>技術教程>>正文


如何在Ubuntu中使用SHA256哈希或GPG密鑰驗證下載

, ,

您可能經常下載了一些開源軟件,例如各種Linux發行版ISO。在下載時,您可能還會注意到下載校驗和文件的鏈接。該鏈接是做什麽用的?實際上,Linux發行版將校驗和文件與源ISO文件一起分發,以驗證下載文件的完整性。使用文件的校驗和,可以驗證下載的文件是真實文件,並且未被篡改。當您從其他地方而不是從原始網站(如第三方網站)下載文件的可能性更大時,此功能特別有用。從任何第三方下載文件時,強烈建議驗證校驗和。

在本文中,我們將逐步執行一些步驟,以幫助您驗證Ubuntu操作係統中的所有下載。對於本文,我使用Ubuntu 18.04 LTS來描述該過程。而且,我已經下載了ubuntu-18.04.2-desktop-amd64.iso它將在本文中用於驗證過程。

您可以使用兩種方法來驗證下載文件的完整性。第一種方法是通過SHA256哈希,這是一種快速但安全性較低的方法。第二個是通過gpg密鑰,它是一種檢查文件完整性的更安全的方法。

使用SHA256哈希驗證下載

在第一種方法中,我們將使用散列來驗證下載。散列是一種驗證過程,它驗證係統上下載的文件是否與原始源文件相同,並且未被第三方更改。該方法的步驟如下:

步驟1:下載SHA256SUMS文件

您需要從官方Ubuntu鏡像中找到SHA256SUMS文件。鏡像頁麵包括一些額外的文件以及Ubuntu映像。我正在使用下麵的鏡像下載SHA256SUMS文件:

Verify download using SHA256

找到文件後,單擊它以將其打開。它包含Ubuntu提供的原始文件的校驗和。

SHA256SUM

步驟2:生成下載的ISO文件的SHA256校驗和

現在按以下方式打開終端Ctrl + Alt + T組合鍵。然後導航到放置下載文件的目錄。

$ cd [path-to-file]

然後在終端中運行以下命令以生成下載的ISO文件的SHA256校驗和。

Get sha256 sum of a file廣告

步驟3:比較兩個文件中的校驗和。

將係統生成的校驗和與Ubuntu的官方鏡像站點提供的校驗和進行比較。如果校驗和匹配,則您已下載了一個真實文件,否則該文件已損壞。

驗證下載您唱gpg鍵

此方法比以前的方法更安全。讓我們看看它是如何工作的。該方法的步驟如下:

步驟1:下載SHA256SUMS和SHA256SUMS.gpg

您將需要從任何Ubuntu鏡像中找到SHA256SUMS和SHA256SUMS.gpg文件。找到這些文件後,將其打開。右鍵單擊並使用“另存為頁麵”選項進行保存。將兩個文件保存在同一目錄中。

Using GPG to verify an Ubuntu Download

步驟2:找到用於發布簽名的密鑰

啟動終端並導航到放置校驗和文件的目錄。

$ cd [path-to-file]

然後運行以下命令以驗證使用了哪個密鑰來生成簽名。

$ gpg –verify SHA256SUMS.gpg SHA256SUMS

我們還可以使用此命令來驗證簽名。但是目前沒有公鑰,因此它將返回錯誤消息,如下圖所示。

use gpg verify

通過查看以上輸出,您可以看到密鑰ID:46181433FBB75451和D94AA3F0EFE21092。我們可以使用這些ID從Ubuntu服務器請求它們。

步驟3:取得Ubuntu伺服器的公開金鑰

我們將使用上述密鑰ID從Ubuntu服務器請求公共密鑰。可以通過在Terminal中運行以下命令來完成。該命令的常規語法為:

$ gpg –keyserver <keyserver-name –recv-keys <publicKey>

Get the public key of Ubuntu server

現在您已經收到來自Ubuntu服務器的密鑰。

步驟4:驗證密鑰指紋

現在,您將需要驗證密鑰指紋。為此,請在終端中運行以下命令。

$ gpg --list-keys --with-fingerprint <0x-----> <0x------>

Verify the key fingerprints

步驟5:驗證簽名

現在,您可以運行命令來驗證簽名。這與您以前用來查找用於發布簽名的密鑰的命令相同。

$ gpg --verify SHA256SUMS.gpg SHA256SUMS

GPG Verify SHA256 sum

現在您可以看到上麵的輸出。它顯示好的簽名驗證我們ISO文件完整性的消息。如果它們不匹配,它將顯示為壞簽名

您還會注意到警告標誌,這僅僅是因為您尚未對密鑰進行簽名,並且它們不在您的可信任來源列表中。

最後一步

現在,您將需要為下載的ISO a文件生成sha256校驗和。然後將其與您從Ubuntu鏡像下載的SHA256SUM文件進行匹配。確保將下載的文件SHA256SUMS和SHA256SUMS.gpg放在同一目錄中。

在終端中運行以下命令:

$ sha256sum -c SHA256SUMS 2>&1 | grep OK

您將獲得如下輸出。如果輸出不同,則意味著您下載的ISO文件已損壞。

這就是在Ubuntu中驗證下載所​​需的全部知識。使用above-described驗證方法,可以確認您已經下載了一個真實的ISO文件,該文件在下載過程中沒有被破壞和篡改。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/11274.html,未經允許,請勿轉載。