Hashdeep: أداة قوية للتحقق من ملفات في نظام التشغيل لينكس

كمستخدم متمرس لنظام لينكس لأكثر من عقد من الزمان، لقد مررت بالعديد من الأدوات التي تساعد في جوانب مختلفة من إدارة النظام، والأمان، والطب الشرعي.العديد من الأدوات التي تساعد في جوانب مختلفة من إدارة النظام، والأمان، والطب الشرعي.

إحدى هذه الأدوات التي أجدها مفيدة بشكل خاص هي hashdeep، وهي أداة قوية لسطر الأوامر تُستخدم بشكل أساسي لـ التحقق من سلامة الملفات والتحقق من صحة الهاش التشفيري.

في هذه المقالة، سأقدم فهماً مفصلاً لما هو hashdeep، وكيف يعمل، وكيف يمكنك استخدامه بفعالية في بيئات لينكس.

ما هو hashdeep؟

hashdeep هو أداة تُستخدم لحساب، ومقارنة، والتحقق من الهاشات الخاصة بالملفات، وهي معرفات فريدة يتم إنشاؤها بتطبيق دالة هاش (مثل SHA-256 أو MD5) على محتويات ملف. هذه الهاشات تعمل كـ “بصمات” للملفات. عندما يكون لملفين نفس الهاش، فهذا يعني أن محتوياتهما متطابقة.

hashdeep يدعم العديد من خوارزميات الهاش مثل MD5، SHA-1، و SHA-256، مما يجعله مرناً للعديد من الاستخدامات.

يُستخدم بشكل شائع في:

  • التحقق من سلامة الملفات: التأكد من أن الملفات لم يتم العبث بها أو تلفها بمرور الوقت.
  • الطب الشرعي الرقمي: التحقق من سلامة الملفات في التحقيقات الجنائية.
  • النسخ الاحتياطي والاستعادة: التحقق من سلامة ملفات النسخ الاحتياطي وضمان اتساق البيانات خلال عمليات الاسترداد.

تثبيت hashdeep في لينكس

قبل أن نتعمق في استخدامه، دعونا أولاً نقوم بتثبيت hashdeep على نظام لينكس الخاص بك، وهو متاح في معظم مستودعات حزم التوزيعات، لذا فإن التثبيت سهل.

sudo apt install hashdeep         [On Debian, Ubuntu and Mint]
sudo yum install hashdeep         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/hashdeep  [On Gentoo Linux]
sudo apk add hashdeep             [On Alpine Linux]
sudo pacman -S hashdeep           [On Arch Linux]
sudo zypper install hashdeep      [On OpenSUSE]    
sudo pkg install hashdeep         [On FreeBSD]

بمجرد التثبيت، يمكنك البدء في استخدام hashdeep لحساب والتحقق من تجزئة الملفات.

فيما يلي بعض الاستخدامات الأكثر شيوعًا.

1. حساب تجزئات الملفات

الاستخدام الأساسي لـ hashdeep هو حساب تجزئة ملف واحد أو ملفات متعددة.

hashdeep -c sha256 myqr.png

في هذا الأمر:

  • -c sha256 يحدد خوارزمية التجزئة (SHA-256 في هذه الحالة).
  • myqr.png هو الملف الذي تريد حساب تجزئته.

يمكنك استبدال sha256 بـ md5 أو sha1 أو غيرها من الخوارزميات المدعومة بناءً على تفضيلاتك.

Calculating File Hashes in Linux

2. تجزئة الملفات بشكل متكرر في دليل

يمكنك أيضًا تجزئة جميع الملفات في دليل، بما في ذلك الدلائل الفرعية، باستخدام العلم -r (متكرر):

hashdeep -c sha256 -r /path/to/your/directory
Recursively Hashing a Directory

3. حفظ التجزئات في ملف

إذا كنت ترغب في حفظ القيم المحسوبة للتجزئة إلى ملف لاستخدامها في المقارنة لاحقًا، يمكنك استخدام الخيار -o لتحديد ملف الإخراج:

hashdeep -r ravi > hashes.txt
cat hashes.txt
Save Calculated Hashes to a File

4. التحقق من سلامة الملف

إحدى استخدامات hashdeep الأكثر أهمية هي التحقق من سلامة الملفات. إذا كان لديك بالفعل قائمة بالتجزئات المعروفة (مثل من جلسة سابقة)، يمكنك مقارنة تجزئات الملف الحالية بتلك القيم المعروفة لمعرفة ما إذا كانت هناك ملفات تم تعديلها.

للقيام بذلك، استخدم الأمر التالي للتحقق من الملفات:

hashdeep -a -k hashes.txt -r /home/ravi/ravi

سيقوم هذا الأمر بالتحقق بشكل تكراري من جميع الملفات ضمن دليل “ravi” مقابل التجزئات المدرجة في hashes.txt، مما يسمح لك بالتحقق من سلامتها بشكل صحيح.

Verifying File Integrity

5. إنشاء تجزئات متعددة بشكل متزامن

لحساب أنواع متعددة من التجزئات (مثل MD5، SHA-1، و SHA-256) في نفس الوقت، يمكنك تحديد أكثر من خوارزمية باستخدام العلم -c:

hashdeep -c md5,sha1,sha256 -r /path/to/your/directory
Calculate Multiple Hashes
الختام

hashdeep هو أداة متعددة الاستخدامات وقوية لفحص سلامة الملفات والتحقيقات الرقمية. دعمه لعدة خوارزميات تجزئة، والتجزئة التكرارية للمجلدات، ومقارنة الملفات يجعله أداة لا غنى عنها لأي شخص يعمل في مجال الأمان، التحقيقات الجنائية الرقمية، أو إدارة النظام.

Source:
https://www.tecmint.com/hashdeep-file-integrity-checker/