
دليل خاص محدث لتشفير القرص بالكامل في Runet V0.2.
استراتيجية رعاة البقر:
[أ] تشفير نظام الكتلة Windows 7 نظام مثبت؛
[ب] تشفير نظام الكتل GNU/Linux (Debian) نظام مثبت (بما في ذلك / التمهيد);
[C] إعداد GRUB2 ، حماية محمل الإقلاع بالتوقيع الرقمي / المصادقة / التجزئة ؛
[د] التنظيف - إتلاف البيانات غير المشفرة.
[E] النسخ الاحتياطي العالمي لنظام التشغيل المشفر ؛
[F] هجوم <في [C6]> الهدف - محمل GRUB2 ؛
[G] وثائق مفيدة.
╭─── مخطط # غرفة 40 # :
├──╼ Windows 7 مثبتة - تشفير كامل للنظام، غير مخفي؛
├──╼ جنو/Linux تم التثبيت (Debian والتوزيعات المشتقة) - تشفير النظام الكامل غير مخفي(/ ، بما في ذلك / التمهيد ؛ مبادلة);
├──╼ محمل الإقلاع المستقل: مُحمل الإقلاع VeraCrypt مُثبّت في MBR ، مُحمّل الإقلاع GRUB2 مُثبّت في قسم موسّع ؛
├──╼ التثبيت / إعادة تثبيت نظام التشغيل غير مطلوب ؛
└──╼ برمجيات التشفير المستخدمة: يراكربت ؛ Cryptosetup. gnupg. حصان البحر هاشديب. GRUB2 - مجاني / مجاني.
تُساهم الخطة المذكورة أعلاه جزئيًا في حل مشكلة "التمهيد عن بُعد من محرك أقراص فلاش" وتتيح لك الاستمتاع بنظام تشغيل مُشفّر Windows/Linux وتبادل البيانات عبر "قناة مشفرة" من نظام تشغيل إلى آخر.
ترتيب تمهيد الكمبيوتر (أحد الخيارات):
- تشغيل الجهاز
- تنزيل محمل إقلاع يراكربت (سيؤدي إدخال كلمة المرور الصحيحة إلى استكمال التنزيل) Windows 7);
- سيؤدي الضغط على مفتاح "Esc" إلى تحميل محمل الإقلاع GRUB2 ؛
- محمل الإقلاع GRUB2 (اختيار توزيعة/ جنو/Linux(CLI)، سيتطلب مصادقة مستخدم GRUB2 المتميز <تسجيل الدخول / كلمة المرور> ؛
- بعد المصادقة الناجحة واختيار التوزيع ، ستحتاج إلى إدخال عبارة مرور لفتح "/boot/initrd.img" ؛
- بعد إدخال كلمات المرور الصحيحة في GRUB2 "مطلوب" لإدخال كلمة مرور (الثالث على التوالي، كلمة مرور BIOS أو كلمة مرور حساب مستخدم GNU/Linux (لا يُؤخذ في الاعتبار) لفتح نظام التشغيل GNU/OS وتشغيلهLinuxأو الاستبدال التلقائي للمفتاح السري (كلمتا مرور + مفتاح أو كلمة مرور + مفتاح);
- سيؤدي التدخل الخارجي في تكوين GRUB2 إلى تجميد GNU/Linux.
مزعجة؟ حسنًا ، لنبدأ أتمتة العمليات.
عند تقسيم القرص الصلب (جدول MBR) لا يمكن أن يحتوي الكمبيوتر الشخصي على أكثر من 4 أقسام رئيسية ، أو 3 أقسام رئيسية وواحد ممتد ، بالإضافة إلى منطقة غير مخصصة. يمكن أن يحتوي القسم الممتد ، على عكس القسم الرئيسي ، على أقسام فرعية. (محركات أقراص منطقية = قسم موسع). بمعنى آخر ، يحل "القسم الموسع" على محرك الأقراص الثابتة محل LVM للمهمة الحالية: تشفير النظام الكامل. إذا كان القرص الخاص بك مقسمًا إلى 4 أقسام رئيسية ، فأنت بحاجة إلى استخدام lvm أو التحويل (مع التنسيق) قسم من الرئيسي إلى المتقدم ، أو استخدم الأقسام الأربعة بكفاءة واترك كل شيء كما هو ، لتحصل على النتيجة المرجوة. حتى إذا كان لديك قسم واحد فقط على القرص الخاص بك ، سيساعدك Gparted في تقسيم محرك الأقراص الثابتة (لأقسام إضافية) دون فقدان البيانات ، ولكن مع دفع ثمن ضئيل لمثل هذه الإجراءات.
يتم عرض مخطط تخطيط القرص الثابت ، بالنسبة إلى المقالة بأكملها شفهيًا ، في الجدول أدناه.

جدول (رقم 1) للأقسام 1 تيرابايت.
يجب أن يكون لديك شيء مشابه.
sda1 - القسم الرئيسي # 1 NTFS (مشفر);
sda2 - علامة المقطع الموسعة ؛
sda6 - محرك منطقي (يتم تثبيت محمل الإقلاع GRUB2 عليه) ؛
sda8 - مبادلة (ملف مبادلة مشفر / ليس دائمًا) ؛
sda9 - اختبار القرص المنطقي ؛
sda5 - محرك منطقي للفضوليين ؛
sda7 — نظام التشغيل جنو/Linux (تم نقل نظام التشغيل إلى قرص منطقي مشفر)؛
sda3 — القسم الرئيسي رقم 2 مع نظام التشغيل Windows 7 (مشفر);
sda4 - القسم الرئيسي رقم 3 (كانت تحتوي على برنامج GNU/ غير مشفر)Linux(يستخدم كنسخة احتياطية/ليس دائمًا).
[أ] تشفير نظام الكتل Windows 7
أ 1. Vيراكربت
تحميل من أو من المرآة إصدار التثبيت من برنامج التشفير Vيراكربت (في وقت نشر الإصدار 1.24-Update3 ، لم يكن الإصدار المحمول من يراكربت مناسبًا لتشفير النظام). تحقق من المجموع الاختباري للبرنامج الذي تم تنزيله
$ Certutil -hashfile "C:VeraCrypt Setup 1.24.exe" SHA256
وقارن النتيجة مع CS المنشور على موقع الويب الخاص بمطور VeraCrypt.
إذا تم تثبيت برنامج HashTab ، فسيكون أسهل: RMB (إعداد ڤيراكربت 1.24.exe)-خصائص-تجزئة مجموع الملفات.
للتحقق من توقيع البرنامج ، يجب تثبيت البرنامج ومفتاح pgp العام للمطور في النظام ; .
أ 2. تثبيت / تشغيل برنامج VeraCrypt بحقوق المسؤول
A3. تحديد خيارات تشفير النظام للقسم النشطفيرا كريبت – النظام – تشفير قسم/محرك النظام – عادي – تشفير قسم النظام Windows – التحميل المتعدد – (تحذير: "لا ينصح المستخدمون غير المتمرسين باستخدام هذه الطريقة" وهذا صحيح ، أوافق على "نعم") - قرص التشغيل ("نعم" ، حتى لو لم يكن الأمر كذلك ، لا تزال "نعم") – عدد أقراص النظام "2 أو أكثر" – أنظمة متعددة على قرص واحد "نعم" – لا Windows مُحمّل الإقلاع "لا" (في الواقع ، "نعم" ، لكن لوادر VeraCrypt / GRUB2 لن تشارك MBR فيما بينها ، وبشكل أكثر دقة ، يتم تخزين أصغر جزء فقط من كود اللودر في مسار MBR / boot ، ويقع الجزء الرئيسي منه داخل الملف نظام) - نظام التشغيل المتعدد - إعدادات التشفير ...
إذا انحرفت عن الخطوات المذكورة أعلاه (مخططات تشفير نظام الكتلة)، سيصدر يراكربت تحذيرًا ولن يسمح بتشفير القسم.
الخطوة التالية ، نحو حماية البيانات المستهدفة ، هي إجراء "اختبار" واختيار خوارزمية تشفير. إذا كان لديك وحدة معالجة مركزية قديمة ، فمن المرجح أن تكون خوارزمية التشفير Twofish هي الأسرع. إذا كانت وحدة المعالجة المركزية قوية ، ستلاحظ الفرق: تشفير AES وفقًا لنتائج الاختبار سيكون أسرع بعدة مرات من منافسي التشفير. AES هي خوارزمية تشفير شائعة ، وقد تم تحسين أجهزة وحدات المعالجة المركزية الحديثة خصيصًا من أجل "السر" و "القرصنة".
يدعم يراكربت القدرة على تشفير الأقراص باستخدام تسلسل AES(سمكتان)/ ومجموعات أخرى. على وحدة المعالجة المركزية Intel النووية القديمة قبل عشر سنوات (لا يوجد دعم أجهزة AES ، تشفير A / T) تدهور الأداء غير محسوس بشكل أساسي. (بالنسبة لوحدات المعالجة المركزية AMD من نفس العصر / ~ المعلمات ، ينخفض الأداء قليلاً). يعمل نظام التشغيل في ديناميكيات واستهلاك الموارد للتشفير الشفاف غير محسوس. على عكس ، على سبيل المثال ، انخفاض ملحوظ في الأداء بسبب الاختبار المثبت لبيئة سطح المكتب غير المستقرة Mate v1.20.1 (أو الإصدار 1.20.2 لا أتذكره بالضبط) في جنو/Linuxأو بسبب تشغيل روتين القياس عن بعد في Windows٧- يُجري المستخدمون ذوو الخبرة عادةً اختبارات أداء الأجهزة قبل التشفير. على سبيل المثال، في أدوات مثل Aida64/Sysbench/systemd-analyze، يقارنون النتائج مع نتائج الاختبارات نفسها بعد تشفير النظام، مما يُفند الاعتقاد الخاطئ بأن "تشفير النظام ضار". يُلاحظ تباطؤ الجهاز وعدم سلاسة استخدامه عند نسخ البيانات المشفرة احتياطيًا أو استعادتها، لأن عملية "نسخ بيانات النظام احتياطيًا" نفسها لا تُقاس بالمللي ثانية، وتُضاف إليها عمليات "فك التشفير/التشفير الفوري". في النهاية، يُوازن كل مستخدم مُخوّل بالتعديل على التشفير بين احتياجاته ومستوى حرصه وسهولة استخدامه.
من الأفضل ترك معلمة PIM على الوضع الافتراضي حتى لا تدخل قيم التكرار الدقيقة في كل مرة تقوم فيها بتشغيل نظام التشغيل. يستخدم يراكربت عددًا كبيرًا من التكرارات لإنشاء "تجزئة بطيئة" حقًا. إن الهجوم على مثل هذا "الحلزون المشفر" باستخدام طريقة Brute Force / جداول قوس قزح يكون منطقيًا فقط من خلال عبارة مرور قصيرة "بسيطة" وقائمة أحرف شخصية للضحية. الدفع مقابل قوة كلمة المرور - التأخير في إدخال كلمة المرور الصحيحة عند تحميل نظام التشغيل (تركيب وحدات تخزين VeraCrypt في GNU/Linux (أسرع بكثير).
برنامج مجاني لهجمات القوة الغاشمة (استخراج عبارة المرور من رأس قرص VeraCrypt / LUKS) هاشكات. لا يعرف John the Ripper كيفية "كسر Veracrypt" ، وعند العمل مع LUKS ، لا يفهم تشفير Twofish.
نظرًا لقوة التشفير لخوارزميات التشفير ، فإن برامج cypherpunks التي لا يمكن إيقافها تطور برامج ذات ناقل هجوم مختلف. على سبيل المثال ، استخراج البيانات الوصفية / المفاتيح من ذاكرة الوصول العشوائي (حذاء بارد / هجوم DMA) ، هناك برامج متخصصة حرة وغير حرة لهذا الغرض.
بمجرد أن يُكمل برنامج VeraCrypt تهيئة/إنشاء "بيانات تعريف فريدة" للقسم النشط المُشفّر، سيطلب منك إعادة تشغيل جهاز الكمبيوتر الخاص بك واختبار وظائف مُحمّل الإقلاع. بعد إعادة التشغيل/البدء Windowsسيتم تحميل VeraCrypt في وضع الاستعداد، وكل ما تبقى هو تأكيد عملية التشفير - Y.
في الخطوة الأخيرة من تشفير النظام ، سيعرض يراكربت إنشاء نسخة احتياطية من رأس القسم المشفر النشط على شكل "veracrypt save disk.iso" - يجب القيام بذلك - في هذا البرنامج مثل هذه العملية هي مطلب (في LUKS ، كشرط - تم حذف هذا للأسف ، ولكن تم التأكيد عليه في الوثائق). قرص الإنقاذ مفيد للجميع ، ولكن لشخص أكثر من مرة. خسارة (إعادة كتابة العنوان / MBR) ستؤدي نسخة احتياطية من رأس الملف إلى منع الوصول بشكل دائم إلى القسم الذي تم فك تشفيره والذي يحتوي على نظام التشغيل Windows.
A4. إنشاء قرص انقاذ USB / قرص يراكربتبشكل افتراضي، يُتيح برنامج VeraCrypt نسخ "2-3 ميجابايت من البيانات الوصفية" على قرص مضغوط، ولكن ليس لدى الجميع أقراص مضغوطة أو محركات أقراص DVD-ROM، وقد يُمثل إنشاء قرص فلاش قابل للتشغيل باسم "قرص إنقاذ VeraCrypt" تحديًا تقنيًا للبعض: لن تتمكن برامج مثل Rufus/GUIdd-ROSA ImageWriter وغيرها من البرامج المشابهة من التعامل مع هذه المهمة، لأنه بالإضافة إلى نسخ البيانات الوصفية المُحولة إلى قرص الفلاش القابل للتشغيل، ستحتاج إلى نسخ/لصق الصورة خارج نظام ملفات محرك أقراص USB - باختصار، ستحتاج إلى نسخ مسار MBR/MBR بشكل صحيح إلى قرص الفلاش. من نظام التشغيل GNU/LinuxLinux يمكنك إنشاء محرك أقراص فلاش قابل للتشغيل باستخدام أداة "dd"، بالنظر إلى هذا الجدول.

إنشاء قرص إنقاذ في البيئة Windows وإلا، فإن مطور برنامج VeraCrypt لم يدرج حل هذه المشكلة في النسخة الرسمية. على "قرص الإنقاذ"، لكنه قدم حلاً بطريقة مختلفة: فقد جعل برنامجًا إضافيًا لإنشاء "قرص إنقاذ USB" متاحًا مجانًا على منتدى VeraCrypt الخاص به. قام أمين أرشيف هذا البرنامج Windows - "إنشاء قرص إنقاذ VeraCrypt على USB". بعد حفظ ملف rescue disk.iso، ستبدأ عملية تشفير نظام الكتل للقسم النشط. لا يتوقف نظام التشغيل عن العمل أثناء التشفير، ولا يلزم إعادة تشغيل الكمبيوتر. بمجرد اكتمال عملية التشفير، يصبح القسم النشط مشفرًا بالكامل وجاهزًا للاستخدام. إذا لم يظهر مُحمل إقلاع VeraCrypt عند بدء تشغيل الكمبيوتر، ولم تُجدِ عملية استعادة رأس الملف نفعًا، فتحقق من علامة "boot"؛ يجب أن تكون مُفعّلة على القسم الذي يحتوي على الملف. Windows (بغض النظر عن التشفير وأنظمة التشغيل الأخرى ، انظر الجدول رقم 1).
هذا وصف لتشفير نظام الكتل مع نظام التشغيل Windows انتهى.
[ب] LUKS. تشفير جنو/Linux (~Debian) نظام التشغيل المثبت. الخوارزمية والخطوات
لتشفير النظام المثبت Debian/التوزيع المشتق، يتطلب تعيين قسم مُجهز لجهاز كتلة افتراضي ونقله إلى قرص GNU المعين/Linuxوقم بتثبيت/تكوين GRUB2. إذا لم يكن لديك خادم أساسي وتقدر وقتك، فيجب عليك استخدام واجهة المستخدم الرسومية، ومعظم أوامر الطرفية الموضحة أدناه مصممة ليتم إدخالها في "وضع تشاك نوريس".
ب1. تشغيل الكمبيوتر من قرص USB مباشر GNU/Linux
"إجراء اختبار تشفير على أداء الأجهزة"
lscpu && сryptsetup benchmark 
إذا كنت مالكًا سعيدًا لسيارة قوية مع دعم أجهزة AES ، فستبدو الأرقام مثل الجانب الأيمن من الجهاز ، إذا كنت سعيدًا ، ولكن مع الحديد العتيق ، ستبدو مثل الجانب الأيسر.
B2. تخطيط القرص. تركيب / تنسيق fs للقرص المنطقي HDD في Ext4 (Gparted)
B2.1. إنشاء رأس قسم sda7 مشفرلوصف أسماء الأقسام ، من الآن فصاعدًا ، سأكون وفقًا لجدول القسم الخاص بي ، الموضح أعلاه. وفقًا لتخطيط القرص الخاص بك ، يجب عليك استبدال أسماء الأقسام الخاصة بك.
تعيين تشفير محرك الأقراص المنطقي (/ dev / sda7> / dev / mapper / sda7_crypt).
# إنشاء بسيط لـ "قسم LUKS-AES-XTS"
cryptsetup -v -y luksFormat /dev/sda7خيارات:
* luksFormat - LUKS تهيئة الرأس ؛
* -y -passphrase (ليس مفتاح / ملف) ؛
* -v - النطق (إخراج المعلومات في المحطة) ؛
* / dev / sda7 - محرك الأقراص المنطقي من القسم الممتد (حيث من المخطط نقل/تشفير برنامج جنو/Linux).
خوارزمية التشفير الافتراضية <LUKS1: aes-xts-simple64 ، المفتاح: 256 بت ، تجزئة الرأس LUKS: sha256 ، RNG: / dev / urandom> (يعتمد على إصدار التشفير).
#Проверка default-алгоритма шифрования
cryptsetup --help #самая последняя строка в выводе терминала.إذا لم يكن هناك دعم للأجهزة لـ AES على وحدة المعالجة المركزية ، فسيكون أفضل خيار هو إنشاء "قسم LUKS-Twofish-XTS" موسع.
ب 2.2. إنشاء متقدم لـ "قسم LUKS-Twofish-XTS"
cryptsetup luksFormat /dev/sda7 -v -y -c twofish-xts-plain64 -s 512 -h sha512 -i 1500 --use-urandom خيارات:
* luksFormat - LUKS تهيئة الرأس ؛
* / dev / sda7 هو محرك الأقراص المنطقي المشفر في المستقبل ؛
* -v يتكلم ؛
* -y عبارة المرور ؛
* -c اختيار خوارزمية تشفير البيانات ؛
* حجم مفتاح التشفير ؛
* -h خوارزمية التجزئة / وظيفة التشفير ، يتم استخدام RNG (- استخدام يوراندوم) لإنشاء مفتاح تشفير / فك تشفير فريد لرأس القرص المنطقي ، ومفتاح رأس ثانوي (XTS) ؛ مفتاح رئيسي فريد يتم تخزينه في رأس القرص المشفر ، ومفتاح XTS ثانوي ، وكل هذه البيانات الوصفية وروتين تشفير يقوم ، باستخدام المفتاح الرئيسي ومفتاح XTS الثانوي ، بتشفير / فك تشفير أي بيانات على القسم (باستثناء عنوان القسم) يتم تخزينها في حوالي 3 ميجابايت على قسم القرص الثابت المحدد.
* -i التكرارات بالملي ثانية ، بدلاً من "المبلغ" (يؤثر التأخير الزمني في معالجة عبارة المرور على تحميل نظام التشغيل وقوة التشفير للمفاتيح). للحفاظ على توازن قوة التشفير بكلمة مرور بسيطة مثل "الروسية" ، تحتاج إلى زيادة القيمة - (i) ، باستخدام كلمة مرور معقدة مثل "؟ 8dƱob / øfh" ، يمكن تقليل القيمة.
* -استخدام مولد الأرقام العشوائية ، يولد المفاتيح والملح.
بعد تعيين قسم sda7> sda7_crypt (العملية سريعة ، نظرًا لأن الرأس المشفر يتم إنشاؤه باستخدام ما يقرب من 3 ميغابايت من البيانات الوصفية وهذا كل شيء)، تحتاج إلى تنسيق وتركيب نظام الملفات sda7_crypt.
B2.3. رسم الخرائط
cryptsetup open /dev/sda7 sda7_crypt
#выполнение данной команды запрашивает ввод секретной парольной фразы.
خيارات:
* فتح - تطابق القسم "بالاسم" ؛
* / dev / sda7 - محرك أقراص منطقي ؛
* sda7_crypt - تعيين الاسم المستخدم لتحميل القسم المشفر أو تهيئته عند بدء تشغيل نظام التشغيل.
B2.4. تنسيق نظام الملفات sda7_crypt إلى ext4. تركيب قرص في نظام التشغيل(ملاحظة: Gparted لن يعمل بعد الآن مع قسم مشفر)
#форматирование блочного шифрованного устройства
mkfs.ext4 -v -L DebSHIFR /dev/mapper/sda7_crypt
خيارات:
* -v - اللفظ.
* -L - تسمية القرص (التي يتم عرضها في Explorer بين الأقراص الأخرى).
بعد ذلك ، يجب عليك تثبيت جهاز الحظر المشفر افتراضيًا / dev / sda7_crypt في النظام
mount /dev/mapper/sda7_crypt /mntسيؤدي العمل مع الملفات الموجودة في المجلد / mnt إلى تشفير / فك تشفير البيانات في sda7 تلقائيًا.
أكثر ملاءمة لتعيين قسم وتثبيته في File Explorer (نوتيلوس / كاجا GUI)، سيكون القسم بالفعل في قائمة اختيار القرص ، كل ما تبقى هو إدخال عبارة مرور لفتح / فك تشفير القرص. سيتم اختيار الاسم المعين تلقائيًا وليس "sda7_crypt" ، ولكن شيء مثل / dev / mapper / Luks-xx-xx ...
ب .2.5. نسخة احتياطية لرأس القرص (البيانات الوصفية ~ 3 ميغا بايت)واحدة من أكثر مهم العمليات التي يجب القيام بها دون تأخير - نسخة احتياطية من رأس "sda7_crypt". في حالة الكتابة فوق / تلف الرأس (على سبيل المثال ، تثبيت GRUB2 على قسم sda7 ، إلخ.)، ستفقد البيانات المشفرة نهائياً دون أي إمكانية لاستعادتها ، لأنه لن يكون من الممكن إعادة توليد نفس المفاتيح ، يتم إنشاء المفاتيح الفريدة.
#Бэкап заголовка раздела
cryptsetup luksHeaderBackup --header-backup-file ~/Бэкап_DebSHIFR /dev/sda7
#Восстановление заголовка раздела
cryptsetup luksHeaderRestore --header-backup-file <file> <device> خيارات:
* luksHeaderBackup - header-backup-file - أمر النسخ الاحتياطي ؛
* luksHeaderRestore - header-backup-file - أمر الاستعادة ؛
* ~ / Backup_DebSHIFR - ملف النسخ الاحتياطي ؛
* / dev / sda7 - القسم المطلوب نسخ رأس القرص المشفر احتياطيًا إليه.
في هذه الخطوة ، يتم الانتهاء من <إنشاء وتحرير قسم مشفر>.
ب3. نقل نظام التشغيل جنو/Linux (sda4) إلى القسم المشفر (sda7)
إنشاء مجلد / mnt2 (ملاحظة - ما زلنا نعمل مع USB مباشر ، sda7_crypt مُثبت على / mnt)ونقوم بتثبيت GNU/Linux إلى /mnt2، والتي يجب تشفيرها.
mkdir /mnt2
mount /dev/sda4 /mnt2
نقوم بإجراء النقل الصحيح لنظام التشغيل باستخدام برنامج Rsync
rsync -avlxhHX --progress /mnt2/ /mntتم وصف خيارات Rsync في القسم E1.
علاوة على ذلك، يجب تجزئة قسم القرص
e4defrag -c /mnt/ #после проверки, e4defrag выдаст, что степень дефрагментации раздела~"0", это заблуждение, которое может вам стоить существенной потери производительности!
e4defrag /mnt/ #проводим дефрагментацию шифрованной GNU/Linux اجعلها قاعدة لإجراء e4defrag على GNU / LInux المشفر من وقت لآخر إذا كان لديك محرك أقراص ثابتة.
النقل والمزامنة [GNU/Linux > جنو/Linux[المشفر] يتم إكمال هذه الخطوة.
ب4. تهيئة جنو/Linux على القسم المشفر sda7
بعد نقل نظام التشغيل بنجاح من /dev/sda4 إلى /dev/sda7، ستحتاج إلى الدخول إلى GNU/Linux على القسم المشفر، وإجراء المزيد من عمليات التهيئة (بدون إعادة تشغيل جهاز الكمبيوتر) بخصوص النظام المشفر. أي أن تكون في USB مباشر ، ولكن لتنفيذ الأوامر "المتعلقة بجذر نظام التشغيل المشفر." محاكاة حالة مماثلة ستكون "chroot". للحصول بسرعة على معلومات نظام التشغيل الذي تعمل عليه حاليًا (مشفرة أم لا ، حيث تتم مزامنة البيانات في sda4 و sda7)، قم بإلغاء مزامنة أنظمة تشغيل. إنشاء في الدلائل الجذر (sda4 / sda7_crypt) ملفات الرموز الفارغة ، مثل / mnt / encryptedOS و / mnt2 / decryptedOS. تحقق سريعًا من نظام التشغيل الذي تستخدمه (بما في ذلك المستقبل):
ls /<Tab-Tab>ب 4.1. "محاكاة تسجيل الدخول إلى نظام تشغيل مشفر"
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt
ب 4.2. التحقق من تنفيذ العمل بالنسبة للنظام المشفر
ls /mnt<Tab-Tab>
#и видим файл "/шифрованнаяОС"
history
#в выводе терминала должна появиться история команд su рабочей ОС.ب 4.3. إنشاء / تكوين مقايضة مشفرة ، تحرير crypttab / fstabنظرًا لأن ملف المبادلة يتم تنسيقه في كل مرة يبدأ فيها نظام التشغيل ، فليس من المنطقي إنشاء وتعيين التبديل إلى القرص المنطقي الآن ، وكتابة الأوامر ، كما في الفقرة B2.2. بالنسبة إلى Swap ، في كل بداية ، سيتم إنشاء مفاتيح التشفير المؤقتة تلقائيًا. دورة حياة مفاتيح swap-a: فك / فك قسم المبادلة (+ مسح ذاكرة الوصول العشوائي)؛ أو أعد تشغيل نظام التشغيل. إعداد المبادلة ، افتح الملف المسؤول عن تكوين كتلة الأجهزة المشفرة (مشابه لملف fstab ، لكنه مسؤول عن التشفير).
nano /etc/crypttab قاعدة
# "target name" "source device" "key file" "options" الخيارات "
swap / dev / sda8 / dev / urandom swap ، cipher = twofish-xts-normal64 ، الحجم = 512 ، التجزئة = sha512
خيارات
* تبديل - الاسم المعين عند تشفير / dev / mapper / swap.
* / dev / sda8 - استخدم القسم المنطقي للتبديل.
* / dev / urandom - مولد مفاتيح تشفير عشوائية للتبديل (مع كل تمهيد جديد لنظام التشغيل ، يتم إنشاء مفاتيح جديدة). يعد المولد / dev / urandom أقل عشوائية من / dev / random ، بعد استخدام كل شيء / dev / random عند العمل في ظروف خطيرة بجنون العظمة. عند تشغيل نظام التشغيل ، يبطئ / dev / random التحميل لبضع دقائق ± (انظر تحليل النظام).
* swap ، cipher = twofish-xts-normal64 ، الحجم = 512 ، التجزئة = sha512: - يعرف الجزء أنه مبادل ويتم تنسيقه وفقًا لذلك ؛ خوارزمية التشفير.
#Открываем и правим fstab
nano /etc/fstab
قاعدة
# swap كان في / dev / sda8 أثناء التثبيت
/ dev / mapper / swap بلا مبادلة 0 0
/ dev / mapper / swap هو الاسم الوارد في crypttab.
مقايضة بديلة مشفرة
إذا كنت لا ترغب في إعطاء قسم كامل كملف مبادلة لسبب ما ، فيمكنك الذهاب بطريقة بديلة وأفضل: إنشاء ملف مبادلة في ملف في قسم نظام تشغيل مشفر.
fallocate -l 3G /swap #создание файла размером 3Гб (почти мгновенная операция)
chmod 600 /swap #настройка прав
mkswap /swap #из файла создаём файл подкачки
swapon /swap #включаем наш swap
free -m #проверяем, что файл подкачки активирован и работает
printf "/swap none swap sw 0 0" >> /etc/fstab #при необходимости после перезагрузки swap будет постоянныйاكتمل إعداد قسم المبادلة.
ب4.4. إعداد GNU/ المشفرLinux (تعديل ملفات crypttab/fstab)يصف ملف / etc / crypttab ، كما كتبت أعلاه ، أجهزة الحظر المشفرة التي تم تكوينها في وقت تمهيد النظام.
#правим /etc/crypttab
nano /etc/crypttab
إذا قمت بمطابقة sda7> قسم sda7_crypt كما في الفقرة B2.1
# "target name" "source device" "key file" "options" الخيارات "
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 none luks
إذا قمت بمطابقة sda7> قسم sda7_crypt كما في الفقرة B2.2
# "target name" "source device" "key file" "options" الخيارات "
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 none cipher=twofish-xts-plain64,size=512,hash=sha512
إذا قمت بمطابقة sda7> قسم sda7_crypt كما في الفقرة B2.1 أو B2.2 ، لكنك لا تريد إعادة إدخال كلمة المرور لإلغاء تأمين نظام التشغيل وتشغيله ، فيمكنك استبدال المفتاح السري / الملف العشوائي بدلاً من كلمة المرور
# "target name" "source device" "key file" "options" الخيارات "
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 /etc/skey luks
وصف
* لا شيء - يشير إلى أنه عند بدء تشغيل نظام التشغيل ، يلزم إدخال عبارة مرور سرية لإلغاء تأمين الجذر.
* UUID - معرف القسم. لمعرفة هويتك ، اكتب في الجهاز (تذكير أنك تعمل طوال هذا الوقت فصاعدًا في محطة طرفية في بيئة chroot وليس في محطة USB مباشرة أخرى).
fdisk -l #проверка всех разделов
blkid #должно быть что-то подобное
/dev/sda7: UUID=«81048598-5bb9-4a53-af92-f3f9e709e2f2» TYPE=«crypto_LUKS» PARTUUID=«0332d73c-07»
/dev/mapper/sda7_crypt: LABEL=«DebSHIFR» UUID=«382111a2-f993-403c-aa2e-292b5eac4780» TYPE=«ext4»
يكون هذا الخط مرئيًا عند طلب blkid من محطة USB المباشرة مع تثبيت sda7_crypt).
UUID مأخوذ من sdaX الخاص بك (ليس sdaX_crypt !، UUID sdaX_crypt - سيختفي تلقائيًا عند إنشاء تكوين grub.cfg).
* التشفير = twofish-xts-normal64 ، الحجم = 512 ، التجزئة = sha512 -luks تشفير الوضع المتقدم.
* / etc / skey - ملف المفتاح السري ، والذي يتم استبداله تلقائيًا لإلغاء تأمين تمهيد نظام التشغيل (بدلاً من إدخال كلمة المرور الثالثة). يمكنك تحديد أي ملف يصل إلى 8 ميغا بايت ، ولكن سيتم قراءة البيانات <1 ميغا بايت.
#Создание "генерация" случайного файла <секретного ключа> размером 691б.
head -c 691 /dev/urandom > /etc/skey
#Добавление секретного ключа (691б) в 7-й слот заголовка luks
cryptsetup luksAddKey --key-slot 7 /dev/sda7 /etc/skey#Проверка слотов "пароли/ключи luks-раздела"
cryptsetup luksDump /dev/sda7
سيبدو شيئا من هذا القبيل:
(افعلها بنفسك وانظر بنفسك).
cryptsetup luksKillSlot /dev/sda7 7 #удаление ключа/пароля из 7 слотаيحتوي / etc / fstab على معلومات وصفية حول أنظمة الملفات المختلفة.
#Правим /etc/fstab
nano /etc/fstab
# "نظام الملفات" "نقطة التحميل" "اكتب" الخيارات "" تفريغ "" تمرير "
# / كان في / dev / sda7 أثناء التثبيت
أخطاء / dev / mapper / sda7_crypt / ext4 = remount-ro 0 1
خيار
* / dev / mapper / sda7_crypt هو اسم تعيين sda7> sda7_crypt المحدد في ملف / etc / crypttab.
اكتمل الآن إعداد crypttab / fstab.
ب 4.5. تحرير ملفات التكوين. لحظة مهمةب 4.5.1. تحرير ملف config /etc/initramfs-tools/conf.d/resume
#Если у вас ранее был активирован swap раздел, отключите его.
nano /etc/initramfs-tools/conf.d/resume
والتعليق بها (إن وجد) "#" سطر "استئناف". يجب أن يكون الملف فارغًا تمامًا.
ب 4.5.2. تحرير ملف config /etc/initramfs-tools/conf.d/cryptsetup
nano /etc/initramfs-tools/conf.d/cryptsetupيجب أن تطابق
# /etc/initramfs-tools/conf.d/cryptsetup
CRYPTSETUP = نعم
تصدير CRYPTSETUP
ب 4.5.3. تحرير ملف / etc / default / grub config (هذا التكوين هو المسؤول عن القدرة على إنشاء grub.cfg عند العمل مع المشفر / التمهيد)
nano /etc/default/grub أضف السطر "GRUB_ENABLE_CRYPTODISK = y"
ضبط على "y" ، سيقوم grub-mkconfig و grub-install بالتحقق من محركات الأقراص المشفرة وإنشاء أوامر إضافية مطلوبة للوصول إليها في وقت التمهيد (insmods ).
يجب أن تكون متشابهة
GRUB_DEFAULT = 0
GRUB_TIMEOUT = 1
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "acpi_backlight = بائع"
GRUB_CMDLINE_LINUX = "عدد مرات الظهور الهادئة"
GRUB_ENABLE_CRYPTODISK = ص
ب 4.5.4. تحرير ملف config / etc / cryptsetup-initramfs / conf-hook
nano /etc/cryptsetup-initramfs/conf-hook تحقق من أن الخط علق بها <#>.
في المستقبل (وحتى الآن ، لن يكون لهذه المعلمة أي قيمة ، ولكنها في بعض الأحيان تتداخل مع تحديث صورة initrd.img).
ب 4.5.5. تحرير ملف config / etc / cryptsetup-initramfs / conf-hook
nano /etc/cryptsetup-initramfs/conf-hookيضيف
KEYFILE_PATTERN = "/ etc / skey"
UMASK = 0077
سيؤدي هذا إلى حزم المفتاح السري "skey" في initrd.img ، المفتاح مطلوب لإلغاء تأمين الجذر في تمهيد نظام التشغيل (إذا لم تكن هناك رغبة في إدخال كلمة المرور مرة أخرى ، فسيتم استبدال مفتاح "skey" تلقائيًا).
ب 4.6. تحديث /boot/initrd.img [الإصدار]لحزم المفتاح الخاص في initrd.img وتطبيق إصلاحات مجموعة التشفير ، قم بتحديث الصورة
update-initramfs -u -k all عند تحديث initrd.img (كما يقول المثل ، "ربما ، لكن غير مؤكد") ستكون هناك تحذيرات تتعلق بإعداد التشفير ، أو ، على سبيل المثال ، إشعار بفقدان وحدات Nvidia - وهذا أمر طبيعي. بعد تحديث الملف ، تحقق من أنه قد تم تحديثه بالفعل مع مرور الوقت (نسبة إلى بيئة chroot ./boot/initrd.img). تحذير! قبل [update-initramfs -u -k all] تأكد من التحقق من أن cryptsetup open / dev / sda7 sda7_crypt - هذا هو الاسم الذي يجب أن يكون ، والذي يظهر في / etc / crypttab ، وإلا بعد إعادة التشغيل - خطأ BUSYBOX)
تكمل هذه الخطوة إعداد ملفات التكوين.
[С] تثبيت وتكوين GRUB2 / الحماية
C1. إذا لزم الأمر ، قم بتهيئة القسم المخصص لمحمل الإقلاع (20 ميجابايت على الأقل كافية للقسم)
mkfs.ext4 -v -L GRUB2 /dev/sda6C2. تحميل / dev / sda6 إلى / mntنظرًا لأننا نعمل في chroot ، فلن يكون هناك دليل / mnt2 في الجذر ، وسيكون المجلد / mnt فارغًا.
قم بتركيب قسم GRUB2
mount /dev/sda6 /mntإذا كان لديك إصدار أقدم من GRUB2 مثبتًا ، في / mnt / boot / grub / i-386-pc (نظام أساسي آخر محتمل ، على سبيل المثال ليس "i386-pc") لا توجد وحدات معماة (باختصار ، يجب أن يحتوي المجلد على وحدات نمطية ، بما في ذلك .mod: cryptodisk؛ luks؛ gcry_twofish؛ gcry_sha512؛ signature_test.mod) ، في مثل هذه الحالة ، يجب اهتزاز GRUB2.
apt-get update
apt-get install grub2
مهم! عند تحديث حزمة GRUB2 من المستودع ، عندما يُسأل "عن اختيار" مكان تثبيت أداة تحميل التشغيل ، يجب أن ترفض التثبيت (السبب - محاولة تثبيت GRUB2 - في "MBR" أو على USB المباشر). وإلا فسوف تفسد رأس / أداة تحميل يراكربت. بعد تحديث حزم GRUB2 وإلغاء التثبيت ، يجب تثبيت محمل الإقلاع يدويًا على محرك أقراص منطقي ، وليس في "MBR". إذا كان المستودع الخاص بك يحتوي على إصدار قديم من GRUB2 ، فحاول من الموقع الرسمي - لم تحقق (تم العمل مع محمل التمهيد GRUB 2.02 ~ BetaX الجديد).
ج 3. تثبيت GRUB2 على قسم موسع [sda6]يجب أن يكون لديك قسم مثبت [p.C.2]
grub-install --force --root-directory=/mnt /dev/sda6 خيارات
* --force - قم بتثبيت أداة تحميل التشغيل ، متجاوزًا جميع التحذيرات الموجودة دائمًا تقريبًا ومنع التثبيت (علامة مطلوبة).
* - دليل الجذر - تثبيت الدليل إلى جذر sda6.
* / dev / sda6 - قسم sdaX الخاص بك (لا تتخطى <space> بين / mnt / dev / sda6).
ج 4. إنشاء ملف التكوين [grub.cfg]انس أمر "update-grub2" ، واستخدم أمر إنشاء ملف التكوين الكامل
grub-mkconfig -o /mnt/boot/grub/grub.cfg بعد الانتهاء من إنشاء / تحديث ملف grub.cfg ، يجب أن تكون هناك خطوط (أ) مع نظام التشغيل الموجود على القرص في طرف الإخراج (قد يتمكن grub-mkconfig من العثور على نظام التشغيل وتحميله من قرص USB قابل للتشغيل إذا كان لديك قرص فلاش متعدد الإقلاع مع Windows 10 وعدد من عمليات التوزيع المباشر - وهذا أمر طبيعي). إذا كانت المحطة الطرفية "فارغة" ، فلن يتم إنشاء ملف "grub.cfg" ، فهذه هي الحالة عند وجود أخطاء GRUB في النظام (وعلى الأرجح محمل من فرع الاختبار بالمستودع) ، أعد تثبيت GRUB2 من مصادر موثوقة.
اكتمل الآن تثبيت "التكوين البسيط" وتكوين GRUB2.
ج5. اختبار إثبات نظام التشغيل GNU المشفر/Linuxإتمام مهمة التشفير بنجاح. الخروج بحذر من نظام GNU/ المشفر.Linux (الخروج من بيئة chroot).
umount -a #размонтирование всех смонтированных разделов шифрованной GNU/Linux
Ctrl+d #выход из среды chroot
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount -a #размонтирование всех смонтированных разделов на live usb
reboot بعد إعادة تشغيل جهاز الكمبيوتر ، يجب تحميل مُحمل إقلاع يراكربت.

*أدخل كلمة مرور القسم النشط - سيبدأ نظام التشغيل بالتحميل Windows.
*سيؤدي الضغط على مفتاح "Esc" إلى نقل التحكم إلى GRUB2 عند تحديد GNU/ المشفرLinux – ستحتاج إلى كلمة مرور (sda7_crypt) لفتح /boot/initrd.img (إذا كتب grub2 uuid "غير موجود" - فهذه مشكلة في برنامج الإقلاع grub2، ويجب إعادة تثبيته، على سبيل المثال، من فرع الاختبار/المستقر و pd).

* اعتمادًا على كيفية إعداد النظام (انظر القسم B4.4 / 4.5) ، بعد إدخال كلمة المرور الصحيحة لإلغاء تأمين الصورة /boot/initrd.img ، ستحتاج إلى كلمة مرور لتمهيد نظام التشغيل kernel / root ، أو سيتم استبدال المفتاح السري تلقائيًا بـ "سكي" ، مما يلغي الحاجة إلى إعادة إدخال عبارة المرور.

(لقطة شاشة "الاستبدال التلقائي للمفتاح السري").
*ثم ستبدأ عملية إقلاع نظام GNU المألوفة.Linux مع مصادقة حساب المستخدم.

* بعد إذن المستخدم وتسجيل الدخول إلى نظام التشغيل ، تحتاج إلى إعادة تحديث /boot/initrd.img (انظر Q4.6).
update-initramfs -u -k allوفي حالة وجود سطور إضافية في قائمة GRUB2 (من الالتقاط OS-m مع USB المباشر) تخلص منهم
mount /dev/sda6 /mnt
grub-mkconfig -o /mnt/boot/grub/grub.cfg
ملخص موجز لتشفير نظام جنوLinux:
- جنو /Linuxنظام التشغيل inux مشفر بالكامل، بما في ذلك /boot/kernel و initrd؛
- يتم حزم المفتاح السري في initrd.img ؛
- مخطط التفويض الحالي (أدخل كلمة المرور لفتح initrd؛ كلمة المرور/المفتاح لتشغيل نظام التشغيل؛ كلمة مرور تفويض الحساب) Linux).
تم الانتهاء من تشفير نظام تقسيم كتلة "التكوين البسيط لـ GRUB2".
ج 6. تكوين GRUB2 المتقدم. حماية Bootloader مع التوقيع الرقمي + حماية المصادقةجنو /Linux يتم تشفير برنامج الإقلاع بالكامل، ولكن لا يمكن تشفيره - وهذا شرط من شروط نظام الإدخال والإخراج الأساسي (BIOS). لهذا السبب، فإن الإقلاع المتسلسل المشفر لـ GRUB2 غير ممكن، بينما الإقلاع المتسلسل البسيط ممكن. من وجهة نظر أمنية، هذا غير ضروري [انظر القسم F].
بالنسبة لـ GRUB2 "المعرضة للخطر" ، قام المطورون بتطبيق خوارزمية حماية أداة تحميل التشغيل "التوقيع / المصادقة".
- عندما يكون محمل الإقلاع محميًا بـ "التوقيع الرقمي الخاص به" ، فإن التعديل الخارجي للملفات ، أو محاولة تحميل وحدات إضافية في محمل الإقلاع هذا ، سيؤدي إلى حظر عملية التمهيد.
- عند حماية أداة تحميل التشغيل باستخدام المصادقة ، لتحديد التمهيد لمجموعة التوزيع ، أو إدخال أوامر إضافية في CLI ، ستحتاج إلى إدخال تسجيل الدخول وكلمة المرور الخاصة بالمستخدم الخارق GRUB2.
ج 6.1. حماية Bootloader مع المصادقةتحقق من أنك تعمل في محطة طرفية في نظام تشغيل مشفر
ls /<Tab-Tab> #обнаружить файл-маркерقم بإنشاء كلمة مرور مستخدم متميز للترخيص في GRUB2
grub-mkpasswd-pbkdf2 #введите/повторите пароль суперпользователя. احصل على تجزئة كلمة المرور. شيء من هذا القبيل
grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
قم بتركيب قسم GRUB
mount /dev/sda6 /mnt قم بتحرير ملف التكوين
nano -$ /mnt/boot/grub/grub.cfg تحقق من البحث عن الملف من عدم وجود علامات في أي مكان في "grub.cfg" ("-غير مقيد" "-user"،
أضف في النهاية (قبل السطر ### END /etc/grub.d/41_custom ###)
"set superusers =" root "
password_pbkdf2 تجزئة الجذر ".
يجب أن يكون شيء من هذا القبيل
# يوفر هذا الملف طريقة سهلة لإضافة إدخالات قائمة مخصصة. ببساطة اكتب ملف
# إدخالات قائمة تريد إضافتها بعد هذا التعليق. احرص على عدم التغيير
# خط "exec tail" أعلاه.
### النهاية /etc/grub.d/40_custom ###### ابدأ /etc/grub.d/41_custom ###
إذا [-f $ {config_directory} /custom.cfg] ؛ ثم
المصدر $ {config_directory} /custom.cfg
elif [-z "$ {config_directory}" -a -f $ prefix / custom.cfg] ؛ ثم
بادئة المصدر $ / custom.cfg؛
fi
تعيين المستخدمين المتميزين = "الجذر"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
### النهاية /etc/grub.d/41_custom ###
#
إذا كنت تستخدم غالبًا الأمر "grub-mkconfig -o /mnt/boot/grub/grub.cfg" ولا تريد إجراء تغييرات على grub.cfg في كل مرة ، أدخل الأسطر أعلاه (كلمة سر الدخول) إلى نص مستخدم GRUB في الأسفل
nano /etc/grub.d/41_custom قطة << EOF
تعيين المستخدمين المتميزين = "الجذر"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
EOF
عند إنشاء التكوين "grub-mkconfig -o /mnt/boot/grub/grub.cfg" ، ستتم إضافة السطور المسؤولة عن المصادقة تلقائيًا إلى grub.cfg.
تكمل هذه الخطوة إعداد مصادقة GRUB2.
ج6.2. حماية محمل الإقلاع بالتوقيع الرقميمن المفترض أن لديك بالفعل مفتاح تشفير pgp الشخصي الخاص بك (أو إنشاء مثل هذا المفتاح). يجب تثبيت برنامج التشفير على النظام: gnuPG؛ كليوباترا / المعدل التراكمي ؛ فرس البحر. سوف تجعل برامج التشفير حياتك أسهل بكثير في كل هذه الحالات. Seahorse - نسخة مستقرة من الحزمة 3.14.0 (الإصدارات أعلاه ، على سبيل المثال ، V3.20 رديئة ولها أخطاء كبيرة).
يجب إنشاء / تشغيل / إضافة مفتاح PGP في بيئة su فقط!
قم بإنشاء مفتاح تشفير شخصي
gpg - -gen-keyتصدير مفتاحك
gpg --export -o ~/perskeyقم بتركيب محرك الأقراص المنطقي في نظام التشغيل إذا لم يكن مثبتًا بالفعل
mount /dev/sda6 /mnt #sda6 – раздел GRUB2قم بتنظيف قسم GRUB2
rm -rf /mnt/قم بتثبيت GRUB2 في sda6 بوضع مفتاحك الخاص في صورة GRUB الرئيسية "core.img"
grub-install --force --modules="gcry_sha256 gcry_sha512 signature_test gcry_dsa gcry_rsa" -k ~/perskey --root-directory=/mnt /dev/sda6 خيارات
* --force - قم بتثبيت أداة تحميل التشغيل ، متجاوزًا جميع التحذيرات الموجودة دائمًا (علامة مطلوبة).
* --modules = "gcry_sha256 gcry_sha512 signature_test gcry_dsa gcry_rsa" - يوجه GRUB2 لتحميل الوحدات المطلوبة مسبقًا عند بدء تشغيل الكمبيوتر.
* -k ~ / perskey - المسار إلى "مفتاح PGP" (بعد تعبئة المفتاح في صورة ، يمكن حذفه).
* --جذر دليل - تعيين دليل التمهيد إلى جذر sda6
/ dev / sda6 هو قسم sdaX الخاص بك.
إنشاء / تحديث grub.cfg
grub-mkconfig -o /mnt/boot/grub/grub.cfgأضف السطر "trust / boot / grub / perskey" إلى نهاية ملف "grub.cfg" (فرض استخدام مفتاح pgp.) نظرًا لأننا قمنا بتثبيت GRUB2 مع مجموعة من الوحدات ، بما في ذلك وحدة التوقيع “signature_test.mod” ، فإن هذا يلغي الحاجة إلى إضافة أوامر مثل "set check_signatures = force" إلى التكوين.
يجب أن تبدو شيئا من هذا القبيل (خطوط النهاية في ملف grub.cfg)
### ابدأ /etc/grub.d/41_custom ###
إذا [-f $ {config_directory} /custom.cfg] ؛ ثم
المصدر $ {config_directory} /custom.cfg
elif [-z "$ {config_directory}" -a -f $ prefix / custom.cfg] ؛ ثم
بادئة المصدر $ / custom.cfg؛
fi
الثقة / التمهيد / اليرقة / بيرسكي
تعيين المستخدمين المتميزين = "الجذر"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
### النهاية /etc/grub.d/41_custom ###
#
لا يحتاج المسار إلى "/ boot / grub / perskey" للإشارة إلى قسم قرص معين ، على سبيل المثال hd0,6،2 ، بالنسبة لمحمل الإقلاع نفسه "الجذر" هو المسار الافتراضي للقسم الذي تم تثبيت GRUBXNUMX عليه (انظر مجموعة العفن = ..).
توقيع GRUB2 (كل الملفات في كل الأدلة / GRUB) باستخدام مفتاح "perskey".
حل سهل كيفية التوقيع (لـ nautilus / caja explorer): تثبيت امتداد "فرس البحر" للمستكشف من المستودع. يجب إضافة مفتاحك إلى بيئة su.
افتح المستكشف من sudo "/ mnt / boot" - علامة RMB. على الشاشة يبدو هكذا

المفتاح نفسه هو "/ mnt / boot / grub / perskey" (نسخ إلى دليل اليرقة) يجب أيضًا توقيعه بتوقيعه الخاص. تأكد من ظهور توقيعات الملف [* .sig] في الدليل / الدلائل الفرعية.
بالطريقة أعلاه ، نوقع "/ boot" (نواة لدينا ، initrd). إذا كان وقتك يستحق أي شيء ، فإن هذه الطريقة تلغي الحاجة إلى كتابة نص برمجي لتوقيع "العديد من الملفات".
لإزالة كافة تواقيع محمل الإقلاع (إذا حدث خطأ ما)
rm -f $(find /mnt/boot/grub -type f -name '*.sig')من أجل عدم التوقيع على أداة تحميل التشغيل بعد تحديث النظام ، نقوم بتجميد جميع حزم التحديث المتعلقة بـ GRUB2.
apt-mark hold grub-common grub-pc grub-pc-bin grub2 grub2-commonفي هذه الخطوة <حماية محمل الإقلاع بالتوقيع الرقمي> يكتمل التكوين المتقدم لـ GRUB2.
ج 6.3. اختبار إثبات محمل الإقلاع GRUB2 المحمي بالتوقيع الرقمي والمصادقةGRUB2. عند اختيار أي GNU/Linux أو أدخل واجهة سطر الأوامر (سطر الأوامر) مطلوب إذن المستخدم المتميز. بعد إدخال تسجيل الدخول / كلمة المرور الصحيحة ، ستحتاج إلى كلمة المرور من initrd

لقطة شاشة ، مصادقة ناجحة لمستخدم GRUB2 المتميز.
إذا قمت بتزوير أي من ملفات GRUB2 / قمت بإجراء تغييرات على grub.cfg ، أو قمت بحذف الملف / التوقيع ، قم بتحميل الوحدة النمطية الخبيثة ، ثم سيظهر تحذير مطابق. سيتوقف التمهيد GRUB2 مؤقتًا.

لقطة شاشة ، محاولة للتدخل في GRUB2 "من الخارج".
تحت التمهيد "العادي" بدون تدخل "، تكون حالة رمز الخروج من النظام" 0 ". لذلك ، من غير المعروف ما إذا كانت الحماية تعمل أم لا. (أي ، "مع أو بدون حماية أداة تحميل التشغيل بتوقيع" أثناء التمهيد العادي ، فإن الحالة هي نفسها "0" - وهذا أمر سيء).
كيفية التحقق من حماية التوقيع الرقمي؟
طريقة غير مريحة للتحقق: قم بتزوير / إزالة الوحدة النمطية المستخدمة بواسطة GRUB2 ، على سبيل المثال ، إزالة توقيع luks.mod.sig والحصول على خطأ.
الطريقة الصحيحة هي الذهاب إلى CLI لمحمل الإقلاع وكتابة الأمر
trust_list رداً على ذلك ، يجب أن يتلقوا بصمة إصبع "perskey" ، إذا كانت الحالة "0" ، فإن حماية التوقيع لا تعمل ، تحقق مرة أخرى من البند C6.2.
في هذه الخطوة ، انتهى الإعداد المتقدم "حماية GRUB2 بالتوقيع الرقمي والمصادقة".
C7 طريقة بديلة لتأمين محمل الإقلاع GRUB2 بالتجزئةطريقة "حماية محمل وحدة المعالجة المركزية / المصادقة" الموضحة أعلاه هي طريقة كلاسيكية. بسبب النقص في GRUB2 ، في ظروف جنون العظمة ، فإنه يخضع لهجوم حقيقي ، والذي سأقدمه أدناه في الفقرة [F]. بالإضافة إلى ذلك ، بعد تحديث نظام التشغيل / النواة ، من الضروري إعادة تسجيل محمل الإقلاع.
حماية محمل الإقلاع GRUB2 بالتجزئة
مزايا على الكلاسيكيات:
- مستوى أعلى من الموثوقية (يحدث التجزئة / التحقق فقط من مورد محلي مشفر. يتم التحكم في القسم المخصص بالكامل ضمن GRUB2 لأي تغييرات ، ويتم تشفير كل شيء آخر ، في المخطط الكلاسيكي مع حماية / مصادقة محمل وحدة المعالجة المركزية ، يتم التحكم في الملفات فقط ، ولكن ليس مجانًا الفضاء ، حيث يمكن إضافة "شيء شرير").
- التسجيل المشفر (تتم إضافة سجل شخصي مشفر يمكن قراءته إلى النظام).
- سرعة (تحدث الحماية / التحقق من القسم بأكمله المخصص لـ GRUB2 على الفور تقريبًا).
- أتمتة جميع عمليات التشفير.
سلبيات الكلاسيكيات.
- تزوير التوقيع (نظريًا ، من الممكن العثور على تضارب دالة تجزئة معينة).
- زيادة مستوى الصعوبة (مقارنةً بالنسخة الكلاسيكية، يتطلب الأمر مهارات أكثر قليلاً في نظام التشغيل جنو/Linux).
كيف تعمل فكرة تجزئة GRUB2 / القسم
قسم GRUB2 "موقّع" ، عندما يتم تحميل نظام التشغيل ، يتم فحص قسم أداة تحميل التشغيل للتأكد من ثباته ، متبوعًا بتسجيل الدخول في بيئة آمنة (مشفرة). إذا تم اختراق محمل الإقلاع أو قسمه ، فبالإضافة إلى سجل الغزو ، ما يلي
شيء.
يتم إجراء فحص مماثل أربع مرات في اليوم ، ولا يتم تحميل موارد النظام.
باستخدام الأمر "- check_GRUB $" ، يتم إجراء فحص فوري في أي وقت بدون تسجيل ، ولكن مع إخراج المعلومات إلى CLI.
باستخدام الأمر "- sudo GRUB_signature $" ، تتم إعادة توقيع قسم / محمل الإقلاع GRUB2 على الفور وتسجيل تحديثه (مطلوب بعد تحديث نظام التشغيل / التمهيد) وتستمر الحياة.
تنفيذ طريقة التجزئة لمحمل الإقلاع والتقسيم الخاص به
0) دعنا نوقع على قسم / محمل الإقلاع GRUB عن طريق تثبيته أولاً على / media / username
-$ hashdeep -c md5 -r /media/username/GRUB > /podpis.txt1) نقوم بإنشاء برنامج نصي بدون امتداد في جذر نظام التشغيل المشفر ~ / podpis ، ونطبق الحقوق الضرورية 744 الأمان والحماية من "المخادع" إليه.
ملئها بالمحتوى
#!/bin/bash
#Проверка всего раздела выделенного под загрузчик GRUB2 на неизменность.
#Ведется лог "о вторжении/успешной проверке каталога", короче говоря ведется полный лог с тройной вербализацией. Внимание! обратить взор на пути: хранить ЦП GRUB2 только на зашифрованном разделе OS GNU/Linux.
echo -e "******************************************************************n" >> '/var/log/podpis.txt' && date >> '/var/log/podpis.txt' && hashdeep -vvv -a -k '/podpis.txt' -r '/media/username/GRUB' >> '/var/log/podpis.txt'
a=`tail '/var/log/podpis.txt' | grep failed` #не использовать "cat"!!
b="hashdeep: Audit failed"
#Условие: в случае любых каких-либо изменений в разделе выделенном под GRUB2 к полному логу пишется второй отдельный краткий лог "только о вторжении" и выводится на монитор мигание gif-ки "warning".
if [[ "$a" = "$b" ]]
then
echo -e "****n" >> '/var/log/vtorjenie.txt' && echo "vtorjenie" >> '/var/log/vtorjenie.txt' && date >> '/var/log/vtorjenie.txt' & sudo -u username DISPLAY=:0 eom '/warning.gif'
fiقم بتشغيل البرنامج النصي من su، سيتم فحص تجزئة قسم GRUB ومحمل الإقلاع الخاص به ، احفظ السجل.
دعنا ننشئ أو ننسخ ، على سبيل المثال ، "ملف ضار" [virus.mod] إلى قسم GRUB2 ونجري فحصًا / اختبارًا مؤقتًا:
-$ hashdeep -vvv -a -k '/podpis.txt' -r '/media/username/GRUBيجب أن يشهد CLI غزوًا لنا#Stripped سجل في CLI
Ср янв 2 11::41 MSK 2020
/media/username/GRUB/boot/grub/virus.mod: Moved from /media/username/GRUB/1nononoshifr
/media/username/GRUB/boot/grub/i386-pc/mda_text.mod: Ok
/media/username/GRUB/boot/grub/grub.cfg: Ok
hashdeep: Audit failed
Input files examined: 0
Known files expecting: 0
Files matched: 325
Files partially matched: 0
Files moved: 1
New files found: 0
Known files not found: 0 # كما ترى ، ظهرت عبارة "تم نقل الملفات: 1 وفشل التدقيق" ، مما يعني أن عملية التحقق فشلت.
نظرًا لخصائص القسم الذي تم اختباره ، بدلاً من "تم العثور على ملفات جديدة"> "تم نقل الملفات"
2) ضع صورة gif هنا> ~ / warning.gif ، اضبط الأذونات على 744.
3) تكوين fstab لتثبيت قسم GRUB تلقائيًا في التمهيد
-$ sudo nano /etc/fstabLABEL = إعدادات GRUB / media / username / GRUB ext4 الافتراضية 0 0
4) نقوم بتدوير السجل
-$ sudo nano /etc/logrotate.d/podpis /var/log/subpis.txt {
يوميا
استدارة 50
الحجم 5M
التاريخ
ضغط
delaycompress
olddir / var / log / old
}/var/log/vtorjenie.txt {
شهريا
استدارة 5
الحجم 5M
التاريخ
olddir / var / log / old
}
5) إضافة وظيفة إلى كرون
-$ sudo crontab -e"اشتراك"
0 * / 6 * * * '/ subpis
6) إنشاء أسماء مستعارة دائمة
-$ sudo su
-$ echo "alias подпись_GRUB='hashdeep -c md5 -r /media/username/GRUB > /podpis.txt'" >> /root/.bashrc && bash
-$ echo "alias проверка_GRUB='hashdeep -vvv -a -k '/podpis.txt' -r /media/username/GRUB'" >> .bashrc && bash
بعد تحديث نظام التشغيل -$ apt-get upgrade إعادة توقيع قسم GRUB الخاص بنا
-$ подпись_GRUB
تكمل هذه الخطوة حماية التجزئة لقسم GRUB.
[D] التنظيف - إتلاف البيانات غير المشفرة
احذف ملفاتك الشخصية تمامًا بحيث "لا يستطيع حتى الله قراءتها" ، وفقًا لمتحدث ساوث كارولينا تري جودي.
كالعادة ، هناك العديد من "الأساطير و "حول استعادة البيانات بعد حذفها من القرص الصلب. إذا كنت تؤمن بالسحر الإلكتروني ، أو كنت عضوًا في مجتمع Dr على الويب ولم تحاول أبدًا استعادة البيانات بعد الحذف / الكتابة فوقها (مثل الاسترداد باستخدام R-studio)، فمن غير المرجح أن تناسبك الطريقة المقترحة ، استخدم الطريقة الأقرب إليك.
بعد نجاح عملية نقل GNU/Linux عند نقل البيانات إلى قسم مشفر، يجب حذف النسخة القديمة نهائيًا دون إمكانية استعادة البيانات. طريقة التنظيف الشاملة: برنامج لـ Windows/Linux برنامج واجهة المستخدم الرسومية المجاني .
Быстро تنسيق القسم، البيانات التي تريد إتلافها (باستخدام Gparted) ، قم بتشغيل BleachBit ، وحدد "Clean up free space" - حدد أحد الأقسام (ملف sdaX الخاص بك مع نسخة سابقة من GNU/Linux)، ستبدأ عملية التنظيف. BleachBit - يمسح القرص بتمريرة واحدة - هذا ما "نحتاجه" ، لكن! يعمل هذا من الناحية النظرية فقط إذا قمت بتهيئة محرك الأقراص وتنظيفه في برنامج BB v2.0.
اهتمام! يمسح BB القرص ، ويترك البيانات الوصفية ، ويتم الاحتفاظ بأسماء الملفات عند إتلاف البيانات (Ccleaner - لا يترك أي بيانات وصفية).
والخرافة حول إمكانية استعادة البيانات ليست في الحقيقة خرافة.Bleachbit V2.0-2 حزمة نظام تشغيل غير مستقرة سابقًا Debian (وأي برنامج آخر مشابه: sfill ؛ wipe-Nautilus - شوهد أيضًا في هذا العمل القذر) في الواقع كان لديه خطأ فادح: وظيفة "إخلاء المساحة الحرة" يعمل بشكل غير صحيح على محركات الأقراص الصلبة / محركات أقراص فلاش (نتفس / ext4). البرنامج من هذا النوع ، عند تنظيف المساحة الخالية ، لا يقوم بالكتابة فوق القرص بأكمله ، كما يعتقد العديد من المستخدمين. و البعض (الكثير من) البيانات المحذوفة يتعامل نظام التشغيل / البرنامج مع هذه البيانات على أنها بيانات غير محذوفة / بيانات مستخدم ويتخطى هذه الملفات عند مسح نظام التشغيل / نظام التشغيل. المشكلة هي أنه بعد هذا الوقت الطويل ، يتم تنظيف القرص يمكن استرداد "الملفات المحذوفة" حتى بعد 3 مرات من مسح القرص.
على نظام جنو/Linux في بليتشبيت 2.0-2 تعمل وظائف حذف الملفات والمجلدات نهائيًا بكفاءة، لكن وظيفة تنظيف المساحة الحرة لا تعمل كذلك. للمقارنة: Windows في برنامج CCleaner، تعمل وظيفة "OSP for NTFS" بشكل صحيح، ولن يتمكن الله حقًا من قراءة البيانات المحذوفة.
وهكذا ، لإزالة تماما "مساومة" البيانات القديمة غير المشفرة ، يحتاج Bleachbit الوصول المباشر إلى هذه البيانات، ثم استخدم وظيفة "حذف الملفات / الدلائل بشكل غير قابل للاسترداد".
لحذف "الملفات المحذوفة باستخدام أدوات نظام التشغيل القياسية" في Windows استخدم برنامج CCleaner/BB مع ميزة "OSP". في GNU/Linux حل هذه المشكلة (إزالة الملفات المحذوفة) تحتاج إلى التدرب بنفسك (حذف البيانات + محاولة مستقلة لاستعادتها ولا تعتمد على إصدار البرنامج (إذا لم تكن إشارة مرجعية ، فحينها خطأ))فقط في هذه الحالة ستتمكن من فهم آلية هذه المشكلة والتخلص من البيانات المحذوفة بالكامل.
لم يتم التحقق من Bleachbit v3.0 ، ربما تم إصلاح المشكلة بالفعل.
يعمل Bleachbit v2.0 بصدق.
تكمل هذه الخطوة تنظيف القرص.
[E] النسخ الاحتياطي لنظام التشغيل المشفر العام
كل مستخدم لديه طريقته الخاصة في نسخ البيانات احتياطيًا ، لكن البيانات المشفرة لـ "نظام التشغيل" تتطلب أسلوبًا مختلفًا قليلاً للمهمة. لا يمكن أن تعمل البرامج الموحدة مثل "Clonezilla" والبرامج المماثلة مباشرة مع البيانات المشفرة.
تعيين مهمة النسخ الاحتياطي لأجهزة الحظر المشفرة:
- الشمولية - نفس خوارزمية/برنامج النسخ الاحتياطي لـ Windows/Linux;
- القدرة على العمل في وحدة التحكم باستخدام أي قرص USB حي من نوع GNU/Linux دون الحاجة إلى تنزيل برامج إضافية (لكن ما زلت أوصي بواجهة المستخدم الرسومية);
- أمان النسخ الاحتياطي - يجب أن تكون "الصور" المخزنة مشفرة / محمية بكلمة مرور ؛
- يجب أن يتطابق حجم البيانات المشفرة مع حجم البيانات المنسوخة الفعلية ؛
- سهولة استخراج الملفات الضرورية من النسخة الاحتياطية (لا يوجد شرط لفك تشفير القسم بأكمله أولاً).
على سبيل المثال ، النسخ الاحتياطي / الاستعادة عبر الأداة المساعدة "dd"
dd if=/dev/sda7 of=/путь/sda7.img bs=7M conv=sync,noerror
dd if=/путь/sda7.img of=/dev/sda7 bs=7M conv=sync,noerrorيتوافق مع جميع نقاط المهمة تقريبًا ، لكن وفقًا للفقرة 4 ، لا يصمد أمام النقد ، لأنه ينسخ قسم القرص بالكامل ، بما في ذلك المساحة الخالية - ليس مثيرًا للاهتمام.
على سبيل المثال، GNU/ النسخ الاحتياطيLinux يُعد استخدام برنامج الأرشفة [tar] | gpg] مناسبًا، ولكن للنسخ الاحتياطي. Windows نحتاج إلى البحث عن حل آخر - إنه ليس حلاً مثيراً للاهتمام.
E1. النسخ الاحتياطي الشامل Windows/Linuxدمج وحدات التخزين باستخدام rsync (Grsync) و VeraCryptخوارزمية لإنشاء نسخة احتياطية:
- إنشاء حاوية مشفرة (حجم / ملف) Vيراكربت لنظام التشغيل ؛
- نقل / مزامنة نظام التشغيل باستخدام برنامج Rsync إلى حاوية التشفير VeraCrypt ؛
- إذا لزم الأمر ، قم بتحميل مجلد Vيراكربت إلى www.
إنشاء حاوية يراكربت مشفرة له خصائصه الخاصة:
إنشاء حجم ديناميكي (إنشاء DT متاح فقط في Windowsويمكن استخدامه أيضًا في GNU/Linux);
إنشاء مجلد عادي ، ولكن هناك مطلب "طبيعة بجنون العظمة" (حسب المطور) - تنسيق الحاوية.
يتم إنشاء وحدة تخزين ديناميكية بشكل فوري تقريبًا في نظام التشغيل Windowsولكن عند نسخ البيانات من نظام التشغيل GNU/Linux > بشكل عام، يتم تقليل أداء عملية النسخ الاحتياطي في VeraCrypt DT بشكل كبير.
يتم إنشاء حجم 70 جيجا بايت Twofish عادي (دعنا نقول ، متوسط طاقة الكمبيوتر الشخصي) إلى HDD ~ في نصف ساعة (الكتابة فوق بيانات الحاوية السابقة في مسار واحد ، بسبب متطلبات الأمان). من فيرا كريبت Windows/Linux تمت إزالة ميزة التنسيق السريع لوحدة التخزين أثناء إنشائها، لذا فإن إنشاء الحاوية ممكن فقط من خلال "الكتابة فوق البيانات في تمريرة واحدة" أو إنشاء وحدة تخزين ديناميكية منخفضة الأداء.
أنشئ مجلد Vيراكربت منتظم (غير ديناميكي / ntfs)لا ينبغي أن يكون هناك أي مشاكل.
قم بتهيئة/إنشاء/فتح حاوية في واجهة المستخدم الرسومية لبرنامج VeraCrypt > GNU/Linux USB مباشر (سيتم تركيب وحدة التخزين تلقائيًا على /media/veracrypt2، وحدة تخزين نظام التشغيل) Windows مثبتة في /media/veracrypt1). أنشئ نسخة احتياطية مشفرة لنظام التشغيل Windows باستخدام واجهة المستخدم الرسومية لـ rsync (غرسينك)عن طريق تحديد المربعات.

انتظر حتى نهاية العملية. عند الانتهاء من النسخ الاحتياطي ، سيكون لدينا ملف واحد مشفر.
وبالمثل، قم بإنشاء نسخة احتياطية من نظام التشغيل GNU/OSLinux، قم بإلغاء تحديد خيار "متوافق مع واجهة المستخدم الرسومية rsync" Windows".
اهتمام! حاوية Veracrypt لبرنامج "GNU backup/Linux» إنشاء في نظام الملفات ext4. إذا قمت بعمل نسخة احتياطية في حاوية ntfs ، فعند استعادة هذه النسخة ، ستفقد جميع الحقوق / المجموعات لجميع بياناتك.
يمكنك تنفيذ جميع العمليات في المحطة. الخيارات الأساسية لـ rsync:
* -g - حفظ المجموعات ؛
* -P --progress - حالة وقت العمل على الملف ؛
* -H- نسخ الروابط الثابتة كما هي ؛
* -أ- وضع الأرشفة (عدة أعلام rlptgoD);
* -v-النطق.
إذا كنت ترغب في تثبيت وحدة تخزين Windows يمكنك إنشاء اسم مستعار (su) من خلال وحدة التحكم في برنامج cryptsetup باستخدام VeraCrypt.
echo "alias veramount='cryptsetup open --veracrypt --tcrypt-system --type tcrypt /dev/sdaX Windows_crypt && mount /dev/mapper/ Windows_crypt /media/veracrypt1'" >> .bashrc && bash
الآن، عند تنفيذ الأمر "veramount pictures"، سيظهر طلب لإدخال عبارة مرور، وسيتم تحميل وحدة تخزين النظام المشفرة في نظام التشغيل. Windows.
Map / mount VeraCrypt system folder في أمر cryptsetup
cryptsetup open --veracrypt --tcrypt-system --type tcrypt /dev/sdaX Windows_crypt
mount /dev/mapper/Windows_crypt /mntخريطة / تحميل قسم / حاوية يراكربت في أمر cryptsetup
cryptsetup open --veracrypt --type tcrypt /dev/sdaY test_crypt
mount /dev/mapper/test_crypt /mntبدلاً من الاسم المستعار، سنضيف (برنامج نصي لبدء التشغيل) وحدة تخزين النظام مع نظام التشغيل Windows وقرص NTFS مشفر منطقيًا في GNU/Linux
قم بإنشاء نص وحفظه في ~ / VeraOpen.sh
printf 'Ym9i' | base64 -d | cryptsetup open --veracrypt --tcrypt-system --type tcrypt /dev/sda3 Windows_crypt && mount /dev/mapper/Windows_crypt /media/Winda7 #декодируем пароль из base64 (bob) и отправляем его на запрос ввода пароля при монтировании системного диска ОС Windows.
printf 'Ym9i' | base64 -d | cryptsetup open --veracrypt --type tcrypt /dev/sda1 ntfscrypt && mount /dev/mapper/ntfscrypt /media/КонтейнерНтфс #аналогично, но монтируем логический диск ntfs.
نعطي حقوق "حقيقية":
sudo chmod 100 /VeraOpen.shأنشئ ملفين متطابقين (نفس الاسم!) في /etc/rc.local و ~ / etc / init.d / rc.local
ملء الملفات
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will «exit 0» on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
sh -c "sleep 1 && '/VeraOpen.sh'" #после загрузки ОС, ждём ~ 1с и только потом монтируем диски.
exit 0نعطي حقوق "حقيقية":
sudo chmod 100 /etc/rc.local && sudo chmod 100 /etc/init.d/rc.local هذا كل شيء، الآن عند تشغيل GNU/Linux لسنا بحاجة إلى إدخال كلمات مرور لتركيب أقراص NTFS المشفرة؛ يتم تركيب الأقراص تلقائيًا.
ملاحظة موجزة حول ما تم وصفه أعلاه في الفقرة E1 خطوة بخطوة (ولكن الآن لنظام التشغيل GNU/Linux)
1) قم بإنشاء وحدة تخزين في نظام الملفات ext4 بحجم أكبر من 4 جيجابايت (للملف). Linux في Veracrypt [Cryptobox].
2) إعادة التشغيل ليعيش USB.
3) ~ $ cryptsetup open / dev / sda7 Lunux #map القسم المشفر.
4) ~$ mount /dev/mapper/Linux /mnt #تركيب قسم مشفر على /mnt.
5) ~ $ mkdir mnt2 # إنشاء دليل للنسخ الاحتياطي في المستقبل.
6) ~ $ cryptsetup open - veracrypt - type tcrypt ~ / Cryptobox Cryptobox && mount / dev / mapper / Cryptobox / mnt2 # تعيين مجلد Veracrypt المسمى "Cryptobox" وقم بتركيب Cryptobox في / mnt2.
7) ~ $ rsync -avlxhHX --progress / mnt / mnt2 / # للنسخ الاحتياطي لقسم مشفر إلى مجلد Veracrypt المشفر.
(ملاحظة/ اهتمام! إذا كنت تقوم بنقل برنامج GNU/ المشفرLinux من بنية/جهاز إلى آخر، على سبيل المثال، من Intel إلى AMD (أي أنك تقوم بنشر نسخة احتياطية من قسم مشفر إلى قسم مشفر آخر من Intel إلى AMD)، لا تنسى بعد نقل نظام التشغيل المشفر ، قم بتحرير المفتاح السري البديل بدلاً من كلمة المرور ، ربما. المفتاح السابق ~ / etc / skey - لن يناسب قسمًا مشفرًا آخر ، ومن غير المرغوب فيه إنشاء مفتاح جديد "cryptsetup luksAddKey" من ضمن chroot - يمكن حدوث خلل ، فقط في ~ / etc / crypttab حدد مؤقتًا "لا شيء "بدلاً من" / etc / skey "" ، بعد إعادة التشغيل وإدخال نظام التشغيل ، أعد إنشاء مفتاحك البديل السري مرة أخرى).
كيف يتذكر خبراء تكنولوجيا المعلومات عمل نسخ احتياطية منفصلة لرؤوس أقسام نظام التشغيل المشفرة Windows/Linuxوإلا فإن التشفير سينقلب ضدك.
في هذه الخطوة ، يتم الانتهاء من النسخ الاحتياطي لأنظمة التشغيل المشفرة.
[F] هجوم على محمل الإقلاع GRUB2
تفاصيلإذا كنت قد قمت بحماية أداة تحميل التشغيل الخاصة بك من خلال التوقيع الرقمي و / أو المصادقة (انظر البند ج 6.)، فلن يحمي هذا من الوصول المادي. ستظل البيانات المشفرة غير قابلة للوصول ، ولكن تجاوز الحماية (إعادة تعيين حماية التوقيع الرقمي) يسمح GRUB2 لخبراء الإنترنت بحقن الكود الخاص بهم في أداة تحميل التشغيل دون إثارة الشكوك (ما لم يراقب المستخدم حالة أداة تحميل التشغيل يدويًا ، أو يأتي برمز البرنامج النصي المخصص الصلب الخاص به لـ grub.cfg).
خوارزمية الهجوم. دخيل
* أحذية الكمبيوتر من USB الحية. أي تغيير (الجاني) سوف تنبه الملفات المالك الحقيقي للكمبيوتر حول التطفل في أداة تحميل التشغيل. لكن إعادة تثبيت بسيطة لـ GRUB2 مع الاحتفاظ بـ grub.cfg (والإمكانية اللاحقة لتحريره) سيسمح للمهاجم بتحرير أي ملفات (في هذا السيناريو ، عند تحميل GRUB2 ، لن يتم إخطار المستخدم الحقيقي. الحالة هي نفسها <0>)
* تحميل قسم غير مشفر وحفظ "/mnt/boot/grub/grub.cfg".
* إعادة تثبيت محمل الإقلاع (إزالة "perskey" من صورة core.img)
grub-install --force --root-directory=/mnt /dev/sda6 * إرجاع "grub.cfg"> "/mnt/boot/grub/grub.cfg" ، وتعديله إذا لزم الأمر ، على سبيل المثال ، إضافة وحدة "keylogger.mod" إلى المجلد الذي يحتوي على وحدات محمل ، في "grub.cfg" > سطر "insmod keylogger". أو ، على سبيل المثال ، إذا كان العدو ماكرًا ، فبعد إعادة تثبيت GRUB2 (تظل جميع التوقيعات في مكانها) يقوم ببناء صورة GRUB2 الرئيسية باستخدام "grub-mkimage مع خيار (-c)." سيسمح لك الخيار "-c" بتحميل التكوين الخاص بك قبل تحميل "grub.cfg" الرئيسي. يمكن أن يتكون التكوين من سطر واحد فقط: إعادة التوجيه إلى أي "modern.cfg" ، مختلطة مع ، على سبيل المثال ، 400 ملف تقريبًا (وحدات + توقيعات) في المجلد / boot / grub / i386-pc. في هذه الحالة ، يمكن للمخالف إدخال تعليمات برمجية عشوائية وتحميل الوحدات النمطية دون التأثير على "/boot/grub/grub.cfg" ، حتى إذا قام المستخدم بتطبيق "hashsum" على الملف وعرضه مؤقتًا على الشاشة.
لن يحتاج المهاجم إلى اختراق تسجيل الدخول / كلمة المرور للمستخدم الخارق GRUB2 ، سيحتاج فقط إلى نسخ الأسطر (مسؤول عن المصادقة) "/boot/grub/grub.cfg" إلى "modern.cfg"
تعيين المستخدمين المتميزين = "الجذر"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
وسيظل مضيف الكمبيوتر لديه مصادقة المستخدم المتميز لـ GRUB2.
تحميل السلسلة (يقوم برنامج bootloader بتحميل برنامج bootloader آخر)، كما ذكر أعلاه ، لا معنى له (لغرض مختلف). بسبب BIOS ، لا يمكن تحميل محمل الإقلاع المشفر (عند تحميل السلسلة ، يتم إعادة تشغيل GRUB2> تشفير GRUB2 ، خطأ!). ومع ذلك ، إذا كنت لا تزال تستخدم فكرة التحميل المتسلسل ، فيمكنك التأكد من أنه يتم تحميل الملف المشفر. (لم تتم ترقيته) "grub.cfg" من القسم المشفر. وهذا أيضًا شعور زائف بالأمان ، لأن كل ما هو مدرج في ملف "grub.cfg" المشفر (تحميل الوحدة النمطية) مكدسات مع وحدات يتم تحميلها من GRUB2 غير المشفر.
إذا كنت تريد التحقق من ذلك ، فقم بتخصيص / تشفير قسم sdaY آخر ، وانسخ GRUB2 إليه (عملية تثبيت اليرقة على القسم المشفر غير ممكن) وفي "grub.cfg" (تكوين غير مشفر) تغيير خطوط مثل هذا
menuentry 'GRUBx2' - فئة ببغاء - فئة gnu-linux - class gnu - class os $ menuentry_id_option 'gnulinux-simple-382111a2-f993-403c-aa2e-292b5eac4780' {
تحميل الفيديو
insmod gzio
إذا [x $ grub_platform = xxen]؛ ثم insmod xzio ؛ إنسمود ليزوبيو. فاي
insmod Part_msdos
تشفير Insmod
insmod لوكس
insmod gcry_twofish
insmod gcry_twofish
انسمود gcry_sha512
انسمود تحويلة 2
cryptomount -u 15c47d1c4bd34e5289df77bcf60ee838
set root=’cryptouuid/15c47d1c4bd34e5289df77bcf60ee838′
عادي /boot/grub/grub.cfg
}
خطوط
* insmod - تحميل الوحدات اللازمة للعمل مع قرص مشفر ؛
* GRUBx2 - اسم الخط المعروض في قائمة التمهيد GRUB2 ؛
* cryptomount -u 15c47d1c4bd34e5289df77bcf60ee838 - راجع fdisk -l (sda9) ؛
* تعيين الجذر - إعداد الجذر ؛
* عادي /boot/grub/grub.cfg - ملف التكوين القابل للتنفيذ على القسم المشفر.
الثقة في أنه يتم تحميل "grub.cfg" المشفر هو استجابة إيجابية لإدخال كلمة المرور / فتح "sdaY" عند اختيار السطر "GRUBx2" في قائمة GRUB.
عند العمل في CLI ، حتى لا يتم الخلط (وتحقق مما إذا كان متغير البيئة "تعيين الجذر" يعمل) ، إنشاء ملفات علامة فارغة ، على سبيل المثال ، في القسم المشفر "/ shifr_grub" ، في القسم غير المشفر "/ noshifr_grub". التحقق من صحة في CLI
cat /Tab-Tabكما هو مذكور أعلاه ، لن يساعدك هذا في تنزيل وحدات ضارة إذا انتهى الأمر بهذه الوحدات على جهاز الكمبيوتر الخاص بك. على سبيل المثال ، برنامج keylogger يمكنه حفظ ضغطات المفاتيح على ملف ومزجها مع ملفات أخرى في "~ / i386" حتى يتم تنزيلها بواسطة مهاجم لديه وصول فعلي إلى جهاز الكمبيوتر.
أسهل طريقة للتحقق من تنشيط حماية التوقيع الرقمي (لا إعادة تعيين)، ولم يغزو أحد محمل الإقلاع ، في CLI نكتب الأمر
list_trusted ردًا على ذلك ، نحصل على طاقم من "مفتاحنا" ، أو لا نحصل على أي شيء إذا تعرضنا للهجوم (تحتاج أيضًا إلى التحقق من "تعيين check_signatures = فرض").
من عيوب هذه الخطوة كتابة الأوامر يدويًا. إذا أضفت هذا الأمر إلى "grub.cfg" وقمت بالتوقيع رقميًا على التكوين ، فإن الإخراج الأولي للمفتاح المصبوب على الشاشة يكون قصيرًا جدًا في التوقيت ، وقد لا يكون لديك الوقت لرؤية الإخراج عندما تحصل على GRUB2 boot .
ليس هناك من يشكو منه بشكل خاص: المطور في بلده البند 18.2 يعلن رسميًا
"لاحظ أنه حتى مع حماية كلمة مرور GRUB ، لا يمكن لـ GRUB نفسه منع أي شخص لديه وصول مادي إلى الجهاز من تغيير تكوين البرامج الثابتة لهذا الجهاز (على سبيل المثال ، Coreboot أو BIOS) لجعل الجهاز يقوم بالتمهيد من جهاز مختلف (يتحكم فيه المهاجم). GRUB هو في أفضل الأحوال رابط واحد فقط في سلسلة تمهيد آمنة ".
يُحمّل برنامج GRUB2 بميزاتٍ كثيرة قد تُعطي شعورًا زائفًا بالأمان، وقد تجاوز تطويره بالفعل وظائف نظام MS-DOS، على الرغم من كونه مجرد برنامج إقلاع. ومن المفارقات أن GRUB2 قد يصبح نظام التشغيل "غدًا"، بينما نظام GNU/ القابل للإقلاعLinux الأجهزة الافتراضية لذلك.
مقطع فيديو قصير حول كيفية إعادة تعيين حماية التوقيع الرقمي لـ GRUB2 وأعلنت اقتحامي لمستخدم حقيقي (لقد أخافتك ، لكن بدلاً من ما يظهر في الفيديو ، يمكنك كتابة رمز تعسفي غير ضار / .mod).

الاستنتاجات:
1) حظر تشفير النظام لـ Windows — من الأسهل تنفيذه، والحماية بكلمة مرور واحدة أكثر ملاءمة من الحماية بعدة كلمات مرور في تشفير نظام GNU block system/Linuxولكن لنكن منصفين: فالأخير مؤتمت.
2) كتبت المقال على أنه مفصل وذو صلة بسيط دليلٌ لتشفير القرص بالكامل باستخدام VeraCrypt/LUKS على جهاز واحد، وهو الأفضل حاليًا على الشبكة الروسية (برأيي). يتجاوز طول الدليل 50 حرف، لذا لم يتناول بعض الفصول المهمة: حول خبراء التشفير الذين يختفون أو يلتزمون الصمت؛ وحول محتوى كتب GNU/GNU المختلفة.Linux لا يكتبون إلا القليل أو لا يكتبون شيئاً عن علم التشفير؛ وعن المادة 51 من دستور الاتحاد الروسي؛ وعن /المنع ، حول سبب حاجتك إلى تشفير "الجذر / التمهيد". تبين أن الدليل كبير بالفعل ، لكنه مفصل (يصف حتى الخطوات البسيطة)وهذا بدوره سيوفر عليك الكثير من الوقت عندما تدخل في "التشفير الحقيقي".
3) تم إجراء تشفير القرص بالكامل على Windows 7 64؛ جنو/Linux ببغاء 4x؛ جنو/Debian 9.0 / 9.5.
4) نفذت هجومًا ناجحًا على له محمل الإقلاع GRUB2.
5) تم إنشاء البرنامج التعليمي لمساعدة جميع المصابين بجنون العظمة في رابطة الدول المستقلة ، حيث يُسمح بالتشفير قانونيًا. وقبل كل شيء ، لأولئك الذين يرغبون في لف تشفير القرص بالكامل دون تدمير أنظمتهم التي تم تكوينها.
6) مراجعة وتحديث دليلها المناسب في عام 2020.
[G] وثائق مفيدة
- (فبراير 2012 RU)
- / usr / share / doc / cryptsetup (-run) [مشاركة محلية] (وثائق رسمية مفصلة حول إعداد تشفير جنو/Linux (باستخدام cryptsetup)
- (وثائق موجزة حول إعداد تشفير جنو/Linux (باستخدام cryptsetup)
- (وثائق archlinux)
- (صفحة دليل الأرشفة)
- (صفحة دليل الأرشفة)
- .
الكلمات المفتاحية: تشفير القرص الكامل، تشفير الأقسام، تشفير القرص الكامل Linux، تشفير النظام الكامل LUKS1.
يمكن للمستخدمين المسجلين فقط المشاركة في الاستطلاع. ، من فضلك.
هل تقوم بتشفير؟
17,1%أقوم بتشفير كل ما أستطيع. أنا بجنون العظمة 14
34,2%أنا فقط أقوم بتشفير البيانات الهامة 28
14,6%أحيانًا أقوم بالتشفير ، وأحيانًا أنسى ذلك
34,2%لا ، أنا لا أقوم بتشفير ، فهو غير مريح ومكلف
صوَّت 82 مستخدمًا. امتنع 22 مستخدما عن التصويت.
المصدر: www.habr.com
