بررسی Checksum و امضای GPG
چرا و چگونه صحت فایلهای ISO و Stage3 را با SHA256/SHA512 و امضای GPG تأیید کنیم.
چرا بررسی Checksum مهم است؟
پیش از بوت کردن یک ISO یا استخراج Stage3، باید از یکپارچگی فایل مطمئن شوید. خطاهای شبکه، قطعی سرور یا حتی حملات دستکاری میتوانند فایل دانلودی را خراب کنند. بررسی checksum این اطمینان را میدهد که فایل دقیقاً همان چیزی است که تیم Gentoo منتشر کرده است.
از رد کردن این مرحله خودداری کنید
استفاده از ISO دستکاریشده میتواند منجر به نصب بدافزار، سرقت اطلاعات یا خرابی کامل سیستم شود. این مرحله تنها چند ثانیه زمان میبرد اما امنیت نصب شما را تضمین میکند.
روشهای تأیید صحت
Gentoo از دو روش همزمان برای تأیید فایلها استفاده میکند:
| روش | فایل | کاربرد |
|---|---|---|
| SHA256 | .iso.sha256 یا .tar.xz.sha256 | بررسی یکپارچگی فایل |
| SHA512 | .DIGESTS | بررسی با الگوریتم قویتر |
| GPG | .asc | تأیید اصالت و امضای توسعهدهنده |
بررسی با SHA256
سادهترین روش، استفاده از دستور sha256sum است:
# دانلود فایل sha256 همراه ISO (اگر هنوز ندارید)
wget https://distfiles.gentoo.org/releases/amd64/autobuilds/current-install-amd64-minimal/install-amd64-minimal-*.iso.sha256
# بررسی
sha256sum -c install-amd64-minimal-*.iso.sha256
# خروجی مطلوب:
# install-amd64-minimal-20250114T164700Z.iso: OKاگر فقط هش را در اختیار دارید، میتوانید بهصورت دستی نیز مقایسه کنید:
# تولید هش فایل
sha256sum install-amd64-minimal-*.iso
# خروجی:
# 8e4e8d7c5a2b1f6e9c3d4a7b0e2f5a8d1c4b7e0f3a6d9c2b5e8f1a4d7c0b3e6 install-amd64-minimal-*.iso
# مقایسه با مقدار رسمی
diff <(sha256sum install-amd64-minimal-*.iso | awk '{print $1}') <(echo "EXPECTED_HASH")بررسی با SHA512 و فایل DIGESTS
برخی فایلها (مانند Stage3) با فرمت .DIGESTS ارائه میشوند که شامل چندین الگوریتم است:
# دانلود فایل DIGESTS
wget https://distfiles.gentoo.org/releases/amd64/autobuilds/current-stage3-amd64-desktop-openrc/stage3-amd64-desktop-openrc-*.tar.xz.DIGESTS
# بررسی فقط بخش SHA512
sha512sum -c stage3-amd64-desktop-openrc-*.tar.xz.DIGESTS
# خروجی مطلوب:
# stage3-amd64-desktop-openrc-20250114T164658Z.tar.xz: OKفرمت DIGESTS
فایل .DIGESTS شامل هم SHA512 و هم WHIRLPOOL است. دستور sha512sum فقط بخش مربوطه را میخواند و خطاهای مربوط به WHIRLPOOL را نادیده میگیرد؛ این رفتار طبیعی است.
تأیید امضای GPG
برای اطمینان از اینکه فایل .sha256 یا .DIGESTS واقعاً توسط تیم Gentoo امضا شده، باید امضای GPG را بررسی کنید:
مرحله ۱: دریافت کلید عمومی Gentoo
# دریافت کلیدهای رسمی Gentoo از keyserver
gpg --keyserver hkps://keys.gentoo.org --recv-keys 13EBBDBEDE7A127755DB164B4A824C75E90D6E1E
# خروجی:
# gpg: key 4A824C75E90D6E1E: public key "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" imported
# gpg: Total number processed: 1
# gpg: imported: 1مرحله ۲: تأیید امضا
# دانلود فایل امضا
wget https://distfiles.gentoo.org/releases/amd64/autobuilds/current-install-amd64-minimal/install-amd64-minimal-*.iso.asc
# بررسی امضا
gpg --verify install-amd64-minimal-*.iso.asc
# خروجی:
# gpg: assuming signed data in 'install-amd64-minimal-*.iso'
# gpg: Signature made Sun Jan 14 18:35:21 2025 +0330
# gpg: using RSA key 4A824C75E90D6E1E
# gpg: Good signature from "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" [unknown]مرحله ۳: بررسی اثر انگشت کلید
پس از Good signature، ممکن است هشدار This key is not certified with a trusted signature! ببینید. این طبیعی است. مهم این است که اثر انگشت کلید با مقدار رسمی تطابق داشته باشد:
13EB BDBE DE7A 1277 55DB 164B 4A82 4C75 E90D 6E1Eمقایسه با چند منبع
برای امنیت حداکثری، اثر انگشت کلید را از چند منبع مستقل (وبسایت رسمی Gentoo، mailing list، توییتر رسمی) مقایسه کنید تا از اصالت کلید مطمئن شوید.
خطاهای رایج
۱. خطای BAD signature
gpg: BAD signature from "Gentoo Linux Release Engineering..."دلیل: فایل تغییر کرده یا کلید اشتباه است. راهحل: فایل را دوباره دانلود و بررسی کنید. اگر خطا تکرار شد، از mirror دیگری استفاده کنید.
۲. خطای No public key
gpg: Can't check signature: No public keyدلیل: کلید عمومی Gentoo در keyring شما نیست. راهحل: با دستور gpg --recv-keys کلید را دریافت کنید.
۳. عدم تطابق checksum
install-amd64-minimal-*.iso: FAILED
sha256sum: WARNING: 1 computed checksum did NOT matchدلیل: دانلود ناقص یا فایل خراب. راهحل: فایل را دوباره با wget -c دانلود کنید و دوباره بررسی کنید.
خلاصه و مرحله بعد
بررسی checksum و امضای GPG تنها چند دقیقه طول میکشد اما از نصب یک فایل خراب یا دستکاریشده جلوگیری میکند. این کار را هم برای ISO نصب و هم برای Stage3 انجام دهید.
پس از تأیید صحت فایل، آمادهٔ ساخت فلش بوتپذیر هستید. برای آشنایی با Stage3، آموزش Stage3 را ببینید.
این صفحه در تاریخ ۱ تیر ۱۴۰۵ بهروزرسانی شده است.