Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση
Ενημερώθηκε ο δικός του οδηγός για κρυπτογράφηση πλήρους δίσκου στο Runet V0.2.

Στρατηγική καουμπόη:

[A] Κρυπτογράφηση συστήματος μπλοκ των Windows 7 του εγκατεστημένου συστήματος.
[B] Κρυπτογράφηση συστήματος μπλοκ GNU/Linux (Debian) εγκατεστημένο σύστημα (συμπεριλαμβανομένου του /boot);
[C] Ρύθμιση GRUB2, προστασία bootloader με ψηφιακή υπογραφή/έλεγχος ταυτότητας/κατακερματισμός.
[D] καθαρισμός - καταστροφή μη κρυπτογραφημένων δεδομένων.
[E] καθολικό αντίγραφο ασφαλείας κρυπτογραφημένου λειτουργικού συστήματος.
[F] επίθεση <στο [C6]> στόχο - φορτωτής GRUB2.
[G] Χρήσιμη τεκμηρίωση.

╭───Σχέδιο #δωμάτιο 40# :
├──╼ Εγκατεστημένα Windows 7 - πλήρης κρυπτογράφηση συστήματος, όχι κρυφή.
├──╼ Εγκαταστάθηκε το GNU/Linux (Διανομές Debian και παραγώγων) - Η πλήρης κρυπτογράφηση συστήματος δεν είναι κρυφή(/, συμπεριλαμβανομένου του /boot; swap);
├──╼ ανεξάρτητοι φορτωτές εκκίνησης: ο φορτωτής εκκίνησης VeraCrypt εγκατεστημένος σε MBR, ο φορτωτής εκκίνησης GRUB2 εγκατεστημένος σε εκτεταμένο διαμέρισμα.
├──╼ δεν απαιτείται εγκατάσταση/επανεγκατάσταση του λειτουργικού συστήματος.
└──╼ χρησιμοποιημένο κρυπτογραφικό λογισμικό: VeraCrypt; Cryptosetup; gnupg; θαλάσσιο άλογο? hashdeep? GRUB2 - Δωρεάν/Δωρεάν.

Το παραπάνω σχήμα λύνει εν μέρει το πρόβλημα της "απομακρυσμένης εκκίνησης σε μονάδα flash", σας επιτρέπει να απολαμβάνετε κρυπτογραφημένο λειτουργικό σύστημα Windows / Linux και να ανταλλάσσετε δεδομένα μέσω ενός "κρυπτογραφημένου καναλιού" από το ένα λειτουργικό σύστημα στο άλλο.

Παραγγελία εκκίνησης υπολογιστή (μία από τις επιλογές):

  • ενεργοποίηση του μηχανήματος?
  • λήψη του προγράμματος εκκίνησης VeraCrypt (η σωστή εισαγωγή κωδικού πρόσβασης θα συνεχίσει για την εκκίνηση των Windows 7);
  • Πατώντας το πλήκτρο "Esc" θα φορτωθεί ο φορτωτής εκκίνησης GRUB2.
  • Φορτωτής εκκίνησης GRUB2 (επιλογή διανομής/GNU/Linux/CLI), θα απαιτήσει έλεγχο ταυτότητας του υπερχρήστη GRUB2 <login/password>.
  • Μετά από επιτυχή έλεγχο ταυτότητας και επιλογή της διανομής, θα χρειαστεί να εισαγάγετε μια φράση πρόσβασης για να ξεκλειδώσετε το "/boot/initrd.img".
  • μετά την εισαγωγή των σωστών κωδικών πρόσβασης στο GRUB2 "απαιτείται" για την εισαγωγή ενός κωδικού πρόσβασης (τρίτος στη σειρά, κωδικός πρόσβασης BIOS ή κωδικός πρόσβασης λογαριασμού χρήστη GNU/Linux - δεν λαμβάνεται υπόψη) για ξεκλείδωμα και εκκίνηση του GNU/Linux OS ή αυτόματη αντικατάσταση του μυστικού κλειδιού (δύο κωδικοί πρόσβασης + κλειδί ή κωδικός πρόσβασης + κλειδί);
  • μια εξωτερική εισβολή στη διαμόρφωση του GRUB2 θα παγώσει τη διαδικασία εκκίνησης GNU/Linux.

Ενοχλητικός? Εντάξει, ας πάμε να αυτοματοποιήσουμε τις διαδικασίες.

Κατά την κατάτμηση ενός σκληρού δίσκου (πίνακας MBR) Ένας υπολογιστής δεν μπορεί να έχει περισσότερα από 4 κύρια διαμερίσματα, ή 3 κύρια και ένα εκτεταμένο, καθώς και μια μη εκχωρημένη περιοχή. Μια εκτεταμένη ενότητα, σε αντίθεση με την κύρια, μπορεί να περιέχει υποενότητες. (λογικές μονάδες δίσκου = εκτεταμένο διαμέρισμα). Με άλλα λόγια, το "εκτεταμένο διαμέρισμα" στον σκληρό δίσκο αντικαθιστά το LVM για την τρέχουσα εργασία: πλήρη κρυπτογράφηση συστήματος. Εάν ο δίσκος σας είναι χωρισμένος σε 4 κύρια διαμερίσματα, πρέπει να χρησιμοποιήσετε το lvm ή να μετατρέψετε (με μορφοποίηση) τμήμα από το κύριο σε προχωρημένο, ή χρησιμοποιήστε σωστά και τις τέσσερις ενότητες και αφήστε τα πάντα ως έχουν, λαμβάνοντας το επιθυμητό αποτέλεσμα. Ακόμα κι αν έχετε μόνο ένα διαμέρισμα στο δίσκο σας, το Gparted θα σας βοηθήσει να χωρίσετε τον σκληρό σας δίσκο (για επιπλέον ενότητες) χωρίς απώλεια δεδομένων, αλλά με μικρό τίμημα για τέτοιες ενέργειες.

Το σχήμα διάταξης του σκληρού δίσκου, σε σχέση με το οποίο θα εκφραστεί ολόκληρο το άρθρο, παρουσιάζεται στον παρακάτω πίνακα.

Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση
Πίνακας (Νο. 1) των ενοτήτων 1TB.

Θα πρέπει να έχετε κάτι παρόμοιο.
sda1 - κύριο διαμέρισμα #1 NTFS (κρυπτογραφημένο);
sda2 - δείκτης εκτεταμένης τομής.
sda6 - λογική μονάδα δίσκου (ο φορτωτής εκκίνησης GRUB2 είναι εγκατεστημένος σε αυτό).
sda8 - swap (κρυπτογραφημένο αρχείο ανταλλαγής / όχι πάντα).
sda9 - δοκιμή λογικού δίσκου.
sda5 - λογική μονάδα δίσκου για τους περίεργους.
sda7 - GNU/Linux OS (μεταφερόμενο λειτουργικό σύστημα σε κρυπτογραφημένη λογική μονάδα δίσκου).
sda3 - κύριο διαμέρισμα #2 με Windows 7 (κρυπτογραφημένο);
sda4 - κύριο διαμέρισμα #3 (περιείχε μη κρυπτογραφημένο GNU / Linux, που χρησιμοποιείται για δημιουργία αντιγράφων ασφαλείας / όχι πάντα).

[A] Αποκλεισμός κρυπτογράφησης συστήματος των Windows 7

Α'1. VeraCryptΠλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

Λήψη από επίσημη ιστοσελίδαή από έναν καθρέφτη sourceforge έκδοση εγκατάστασης του κρυπτογραφικού λογισμικού VeraCrypt (κατά τη στιγμή της δημοσίευσης του v1.24-Update3, η φορητή έκδοση του VeraCrypt δεν είναι κατάλληλη για κρυπτογράφηση συστήματος). Ελέγξτε το άθροισμα ελέγχου του λογισμικού που έχετε λάβει

$ Certutil -hashfile "C:VeraCrypt Setup 1.24.exe" SHA256

και συγκρίνετε το αποτέλεσμα με το αναρτημένο CS στον ιστότοπο του προγραμματιστή VeraCrypt.

Εάν είναι εγκατεστημένο το λογισμικό HashTab, ακόμα πιο εύκολο: RMB (VeraCrypt Setup 1.24.exe)-ιδιότητες-κατακερματισμός άθροισμα αρχείων.

Για να επαληθεύσετε την υπογραφή του προγράμματος, το λογισμικό και το δημόσιο κλειδί pgp του προγραμματιστή πρέπει να είναι εγκατεστημένα στο σύστημα gnuPG; gpg4win.

Α2. Εγκατάσταση/Εκκίνηση λογισμικού VeraCrypt με δικαιώματα διαχειριστήΠλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

Α3. Επιλογή επιλογών κρυπτογράφησης συστήματος για το ενεργό διαμέρισμαVeraCrypt - Σύστημα - Κρυπτογράφηση διαμερίσματος/μονάδας συστήματος - Κανονική - Κρυπτογράφηση κατάτμησης συστήματος των Windows - Πολλαπλή εκκίνηση - (προειδοποίηση: "Δεν συνιστάται στους άπειρους χρήστες να χρησιμοποιούν αυτήν τη μέθοδο" και είναι αλήθεια, συμφωνήστε "Ναι") – Δίσκος εκκίνησης («ναι», ακόμα κι αν όχι, και πάλι «ναι») – Αριθμός μονάδων δίσκου συστήματος «2 ή περισσότερες» – Πολλά συστήματα σε μία μονάδα δίσκου «Ναι» – Φορτωτής εκκίνησης εκτός των Windows «Όχι» (στην πραγματικότητα, "Ναι", αλλά οι φορτωτές VeraCrypt/GRUB2 δεν θα μοιραστούν το MBR μεταξύ τους, πιο συγκεκριμένα, μόνο το μικρότερο μέρος του κώδικα φόρτωσης αποθηκεύεται στο MBR/κομμάτι εκκίνησης, το κύριο μέρος του βρίσκεται μέσα στο αρχείο Σύστημα) – Multiboot – Ρυθμίσεις κρυπτογράφησης…

Εάν παρεκκλίνετε από τα παραπάνω βήματα (μπλοκ σχημάτων κρυπτογράφησης συστήματος), τότε το VeraCrypt θα εκδώσει μια προειδοποίηση και δεν θα επιτρέψει την κρυπτογράφηση του διαμερίσματος.

Το επόμενο βήμα, προς τη στοχευμένη προστασία δεδομένων, είναι η διεξαγωγή ενός «Test» και η επιλογή ενός αλγόριθμου κρυπτογράφησης. Εάν έχετε μια ξεπερασμένη CPU, τότε ο αλγόριθμος κρυπτογράφησης Twofish θα είναι πιθανότατα ο ταχύτερος. Εάν η CPU είναι ισχυρή, θα παρατηρήσετε τη διαφορά: AES - η κρυπτογράφηση σύμφωνα με τα αποτελέσματα των δοκιμών θα είναι αρκετές φορές ταχύτερη από τους ανταγωνιστές της σε κρυπτογράφηση. Ο AES είναι ένας δημοφιλής αλγόριθμος κρυπτογράφησης, το υλικό των σύγχρονων CPU είναι ειδικά βελτιστοποιημένο για "μυστικό" και "hacking".

Το VeraCrypt υποστηρίζει τη δυνατότητα κρυπτογράφησης δίσκων με καταρράκτη AES(δύο ψάρια)/ και άλλους συνδυασμούς. Σε μια παλιά πυρηνική CPU της Intel πριν από δέκα χρόνια (χωρίς υποστήριξη υλικού AES, κρυπτογράφηση καταρράκτη A/T) Η υποβάθμιση της απόδοσης είναι ουσιαστικά ανεπαίσθητη. (για επεξεργαστές AMD της ίδιας εποχής/~ παραμέτρων, η απόδοση είναι ελαφρώς μειωμένη). Το λειτουργικό σύστημα λειτουργεί δυναμικά και η κατανάλωση πόρων για διαφανή κρυπτογράφηση είναι ανεπαίσθητη. Σε αντίθεση, για παράδειγμα, με μια αισθητή μείωση της απόδοσης λόγω του εγκατεστημένου δοκιμαστικού ασταθούς περιβάλλοντος επιφάνειας εργασίας Mate v1.20.1 (ή v1.20.2 δεν θυμάμαι ακριβώς) στο GNU/Linux ή λόγω της λειτουργίας της ρουτίνας τηλεμετρίας στα Windows7↑. Συνήθως, οι εξελιγμένοι χρήστες εκτελούν δοκιμές απόδοσης υλικού πριν από την κρυπτογράφηση. Για παράδειγμα, στο Aida64 / Sysbench / systemd-αναλύστε το φταίξιμο και συγκρίνετε με τα αποτελέσματα των ίδιων δοκιμών μετά την κρυπτογράφηση του συστήματος, καταρρίπτοντας έτσι τον μύθο «η κρυπτογράφηση συστήματος είναι επιβλαβής» για τον εαυτό τους. Η επιβράδυνση του μηχανήματος και η ταλαιπωρία είναι αισθητή κατά τη δημιουργία αντιγράφων ασφαλείας / επαναφορά κρυπτογραφημένων δεδομένων, επειδή η ίδια η λειτουργία "αντιγράφων ασφαλείας δεδομένων συστήματος" δεν μετριέται σε ms και προστίθενται τα ίδια <decrypt / encrypt on the fly>. Τελικά, κάθε χρήστης που επιτρέπεται να ασχοληθεί με την κρυπτογραφία επιτυγχάνει μια ισορροπία μεταξύ του αλγόριθμου κρυπτογράφησης σε σχέση με την ικανοποίηση των εργασιών, τον βαθμό παράνοιας και την ευκολία χρήσης.

Είναι προτιμότερο να αφήνετε την παράμετρο PIM στην προεπιλογή, ώστε να μην εισάγετε τις ακριβείς τιμές επανάληψης κάθε φορά που εκκινείτε το λειτουργικό σύστημα. Το VeraCrypt χρησιμοποιεί έναν τεράστιο αριθμό επαναλήψεων για να δημιουργήσει έναν πραγματικά "αργό κατακερματισμό". Μια επίθεση σε ένα τέτοιο «κρυπτό σαλιγκάρι» χρησιμοποιώντας τη μέθοδο Brute force/rainbow tables έχει νόημα μόνο με μια σύντομη «απλή» φράση πρόσβασης και μια προσωπική λίστα χαρακτήρων του θύματος. Πληρωμή για την ισχύ του κωδικού πρόσβασης - η καθυστέρηση στην εισαγωγή του σωστού κωδικού πρόσβασης κατά τη φόρτωση του λειτουργικού συστήματος (Η τοποθέτηση τόμων VeraCrypt σε GNU/Linux είναι σημαντικά πιο γρήγορη).
Δωρεάν λογισμικό για επιθέσεις ωμής βίας (εξαγωγή φράσης πρόσβασης από την κεφαλίδα δίσκου VeraCrypt/LUKS) hashcat. Ο John the Ripper δεν ξέρει πώς να «σπάσει το Veracrypt» και όταν εργάζεται με το LUKS, δεν καταλαβαίνει την κρυπτογράφηση Twofish.

Λόγω της κρυπτογραφικής ισχύος των αλγορίθμων κρυπτογράφησης, οι ασταμάτητοι cypherpunks αναπτύσσουν λογισμικό με διαφορετικό διάνυσμα επίθεσης. Για παράδειγμα, εξαγωγή μεταδεδομένων/κλειδιών από τη μνήμη RAM (κρύο παπούτσι/επίθεση DMA), υπάρχει εξειδικευμένο ελεύθερο και μη λογισμικό για το σκοπό αυτό.

Στο τέλος της διαμόρφωσης / δημιουργίας "μοναδικών μεταδεδομένων" του κρυπτογραφημένου ενεργού διαμερίσματος, η VeraCrypt θα προσφέρει την επανεκκίνηση του υπολογιστή και τη δοκιμή της απόδοσης του bootloader του. Μετά την επανεκκίνηση / εκκίνηση των Windows, το VeraCrypt θα φορτωθεί σε κατάσταση αναμονής, το μόνο που μένει είναι να επιβεβαιώσετε τη διαδικασία κρυπτογράφησης - Y.

Στο τελικό βήμα της κρυπτογράφησης συστήματος, η VeraCrypt θα προσφέρει τη δημιουργία ενός αντιγράφου ασφαλείας της κεφαλίδας του ενεργού κρυπτογραφημένου διαμερίσματος με τη μορφή "veracrypt rescue disk.iso" - πρέπει να το κάνετε - σε αυτό το λογισμικό μια τέτοια λειτουργία είναι μια απαίτηση (στο LUKS, ως απαίτηση - αυτό δυστυχώς παραλείπεται, αλλά υπογραμμίζεται στην τεκμηρίωση). Ο δίσκος διάσωσης είναι χρήσιμος σε όλους, αλλά σε κάποιον περισσότερες από μία φορές. Απώλεια (Επανεγγραφή κεφαλίδας/MBR) Η δημιουργία αντιγράφων ασφαλείας κεφαλίδας θα αρνηθεί οριστικά την πρόσβαση στο αποκρυπτογραφημένο διαμέρισμα με το λειτουργικό σύστημα Windows.

Α4. Δημιουργήστε rescue usb/disk VeraCryptΑπό προεπιλογή, η VeraCrypt προσφέρει την εγγραφή "μεταδεδομένων ~2-3MB" σε ένα CD, αλλά δεν έχουν όλοι οι άνθρωποι δίσκους ή μονάδες DWD-ROM και η δημιουργία μιας μονάδας flash με δυνατότητα εκκίνησης "VeraCrypt Rescue disk" θα είναι μια τεχνική έκπληξη για κάποιον: Rufus / GUIdd-ROSA ImageWriter και άλλο παρόμοιο λογισμικό - δεν θα είναι σε θέση να αντεπεξέλθουν στην εργασία, επειδή εκτός από την αντιγραφή των μετατοπισμένων μεταδεδομένων σε μια μονάδα flash με δυνατότητα εκκίνησης, πρέπει να αντιγράψετε / επικολλήσετε από την εικόνα έξω από το σύστημα αρχείων μονάδας USB, με λίγα λόγια, αντιγράψτε σωστά το MBR / road to keychain. Κάτω από το λειτουργικό σύστημα GNU / Linux, μπορείτε να δημιουργήσετε μια μονάδα flash με δυνατότητα εκκίνησης χρησιμοποιώντας το βοηθητικό πρόγραμμα "dd", κοιτάζοντας αυτό το πιάτο.

Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

Η δημιουργία ενός δίσκου διάσωσης σε περιβάλλον Windows είναι διαφορετική. Ο προγραμματιστής του VeraCrypt δεν συμπεριέλαβε τη λύση σε αυτό το πρόβλημα στο επίσημο τεκμηρίωση στον "δίσκο διάσωσης", αλλά πρότεινε μια λύση με διαφορετικό τρόπο: δημοσίευσε πρόσθετο λογισμικό για τη δημιουργία ενός "δισκού διάσωσης usb" σε ελεύθερη πρόσβαση στο φόρουμ του VeraCrypt. Ο αρχειοθέτης για αυτό το λογισμικό των Windows είναι "create usb veracrypt rescue disk". Μετά την αποθήκευση του rescue disk.iso, θα ξεκινήσει η διαδικασία κρυπτογράφησης συστήματος μπλοκ του ενεργού διαμερίσματος. Κατά την κρυπτογράφηση, η λειτουργία του λειτουργικού συστήματος δεν σταματά, δεν απαιτείται επανεκκίνηση του υπολογιστή. Με την ολοκλήρωση της λειτουργίας κρυπτογράφησης, το ενεργό διαμέρισμα γίνεται πλήρως κρυπτογραφημένο, μπορείτε να το χρησιμοποιήσετε. Εάν ο φορτωτής εκκίνησης VeraCrypt δεν εμφανίζεται κατά την εκκίνηση του υπολογιστή και η λειτουργία επαναφοράς της κεφαλίδας δεν βοηθά, τότε ελέγξτε τη σημαία "boot", πρέπει να οριστεί στο διαμέρισμα όπου υπάρχουν τα Windows (ανεξαρτήτως κρυπτογράφησης και άλλων λειτουργικών συστημάτων, βλ. πίνακα Νο. 1).
Αυτό ολοκληρώνει την περιγραφή της κρυπτογράφησης συστήματος μπλοκ με λειτουργικό σύστημα Windows.

[B]LUKS. Κρυπτογράφηση GNU/Linux (~Debian) εγκατεστημένο ΛΣ. Αλγόριθμος και Βήματα

Για να κρυπτογραφήσετε μια εγκατεστημένη διανομή Debian/προερχόμενης, πρέπει να αντιστοιχίσετε το προετοιμασμένο διαμέρισμα σε μια συσκευή εικονικού μπλοκ, να το μετακινήσετε σε μια αντιστοιχισμένη μονάδα δίσκου GNU/Linux και να εγκαταστήσετε/ρυθμίσετε το GRUB2. Εάν δεν έχετε γυμνό διακομιστή και εκτιμάτε τον χρόνο σας, τότε πρέπει να χρησιμοποιήσετε το GUI και οι περισσότερες από τις εντολές τερματικού που περιγράφονται παρακάτω προορίζονται να εκτελούνται σε "λειτουργία Chuck-Norris".

Β1. Εκκίνηση υπολογιστή από live usb GNU/Linux

"Εκτέλεση κρυπτογράφησης για την απόδοση υλικού"

lscpu && сryptsetup benchmark

Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

Εάν είστε ευτυχισμένος κάτοχος ενός ισχυρού αυτοκινήτου με υποστήριξη υλικού AES, τότε οι αριθμοί θα μοιάζουν με τη δεξιά πλευρά του τερματικού, αν είστε ευχαριστημένοι, αλλά με το σίδερο αντίκες, θα μοιάζουν με την αριστερή πλευρά.

Β2. Διάταξη δίσκου. τοποθέτηση/διαμόρφωση των fs του λογικού δίσκου HDD σε Ext4 (Gparted)

Β2.1. Δημιουργία κρυπτογραφημένης κεφαλίδας διαμερίσματος sda7Για να περιγράψω τα ονόματα των διαμερισμάτων, στο εξής, θα είμαι σύμφωνα με τον πίνακα διαμερισμάτων μου, που παρουσιάζεται παραπάνω. Σύμφωνα με τη διάταξη του δίσκου σας, πρέπει να αντικαταστήσετε τα δικά σας ονόματα διαμερισμάτων.

Λογική αντιστοίχιση κρυπτογράφησης μονάδας δίσκου (/dev/sda7 > /dev/mapper/sda7_crypt).
#Απλή δημιουργία του "LUKS-AES-XTS partition"

cryptsetup -v -y luksFormat /dev/sda7

Επιλογές:

* luksFormat - Αρχικοποίηση κεφαλίδας LUKS.
* -y -passphrase (όχι κλειδί/αρχείο).
* -v - λεκτικοποίηση (έξοδος πληροφοριών στο τερματικό).
* /dev/sda7 - η λογική μονάδα δίσκου σας από το εκτεταμένο διαμέρισμα (όπου σχεδιάζεται μεταφορά/κρυπτογράφηση GNU/Linux).

Προεπιλεγμένος αλγόριθμος κρυπτογράφησης <LUKS1: aes-xts-plain64, κλειδί: 256 bit, κατακερματισμός κεφαλίδας LUKS: sha256, RNG: /dev/urandom> (εξαρτάται από την έκδοση cryptsetup).

#Проверка default-алгоритма шифрования
cryptsetup  --help #самая последняя строка в выводе терминала.

Εάν δεν υπάρχει υποστήριξη υλικού για AES στην CPU, η καλύτερη επιλογή θα ήταν να δημιουργήσετε ένα εκτεταμένο διαμέρισμα "LUKS-Twofish-XTS-partition".

Β2.2. Προηγμένη δημιουργία του "LUKS-Twofish-XTS-partition"

cryptsetup luksFormat /dev/sda7 -v -y -c twofish-xts-plain64 -s 512 -h sha512 -i 1500 --use-urandom

Επιλογές:
* luksFormat - Αρχικοποίηση κεφαλίδας LUKS.
* Το /dev/sda7 είναι η μελλοντική σας κρυπτογραφημένη λογική μονάδα δίσκου.
* -v λεκτικά;
* -y φράση πρόσβασης;
* -γ επιλογή αλγόριθμου κρυπτογράφησης δεδομένων.
* -s μέγεθος κλειδιού κρυπτογράφησης.
* -h αλγόριθμος κατακερματισμού/κρυπτοσυνάρτηση, χρησιμοποιείται RNG (—χρήση-τυχαία) για να δημιουργήσετε ένα μοναδικό λογικό κλειδί κρυπτογράφησης/αποκρυπτογράφησης κεφαλίδας δίσκου, δευτερεύον κλειδί κεφαλίδας (XTS). ένα μοναδικό κύριο κλειδί αποθηκευμένο στην κρυπτογραφημένη κεφαλίδα του δίσκου, ένα δευτερεύον κλειδί XTS, όλα αυτά τα μεταδεδομένα και μια ρουτίνα κρυπτογράφησης που, χρησιμοποιώντας το κύριο κλειδί και το δευτερεύον κλειδί XTS, κρυπτογραφούν / αποκρυπτογραφούν τυχόν δεδομένα στο διαμέρισμα (εκτός από την επικεφαλίδα ενότητας) αποθηκεύονται σε ~3MB στο επιλεγμένο διαμέρισμα σκληρού δίσκου.
* -i επαναλήψεις σε χιλιοστά του δευτερολέπτου, αντί για "ποσό" (η χρονική καθυστέρηση στην επεξεργασία της φράσης πρόσβασης επηρεάζει τη φόρτωση του λειτουργικού συστήματος και την κρυπτογραφική ισχύ των κλειδιών). Για να διατηρήσετε την ισορροπία της κρυπτογραφικής ισχύος με έναν απλό κωδικό πρόσβασης όπως "russian", πρέπει να αυξήσετε την τιμή -(i), με έναν σύνθετο κωδικό πρόσβασης όπως "?8dƱob/øfh", η τιμή μπορεί να μειωθεί.
* --χρησιμοποιήστε-τυχαία γεννήτρια τυχαίων αριθμών, παράγει κλειδιά και αλάτι.

Μετά την αντιστοίχιση του διαμερίσματος sda7 > sda7_crypt (η λειτουργία είναι γρήγορη, αφού δημιουργείται κρυπτογραφημένη κεφαλίδα με ~3 MB μεταδεδομένα και τέλος), πρέπει να μορφοποιήσετε και να προσαρτήσετε το σύστημα αρχείων sda7_crypt.

Β2.3. Χαρτογράφηση

cryptsetup open /dev/sda7 sda7_crypt
#выполнение данной команды запрашивает ввод секретной парольной фразы.

επιλογές:
* άνοιγμα - αντιστοιχίστε την ενότητα "με το όνομα".
* /dev/sda7 - λογική μονάδα δίσκου.
* sda7_crypt - αντιστοίχιση ονόματος που χρησιμοποιείται για την προσάρτηση του κρυπτογραφημένου διαμερίσματος ή την προετοιμασία του κατά την εκκίνηση του λειτουργικού συστήματος.

Β2.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.

Πιο βολικό να αντιστοιχίσετε και να προσαρτήσετε ένα διαμέρισμα στην Εξερεύνηση αρχείων (GUI nautilus/caja), το διαμέρισμα θα βρίσκεται ήδη στη λίστα επιλογής δίσκου, το μόνο που μένει είναι να εισαγάγετε μια φράση πρόσβασης για να ανοίξετε / αποκρυπτογραφήσετε τον δίσκο. Το αντιστοιχισμένο όνομα θα επιλεγεί αυτόματα και όχι "sda7_crypt", αλλά κάτι σαν /dev/mapper/Luks-xx-xx…

Β2.5. Αντίγραφο ασφαλείας κεφαλίδας δίσκου (μεταδεδομένα ~3mb)Ένα από τα πιο σπουδαίος λειτουργίες που πρέπει να γίνουν χωρίς καθυστέρηση - ένα αντίγραφο ασφαλείας της κεφαλίδας "sda7_crypt". Εάν αντικατασταθεί/καταστραφεί η κεφαλίδα (για παράδειγμα, εγκατάσταση του GRUB2 στο διαμέρισμα sda7, κ.λπ.), τα κρυπτογραφημένα δεδομένα θα χαθούν οριστικά χωρίς καμία δυνατότητα ανάκτησής τους, γιατί δεν θα είναι δυνατή η εκ νέου δημιουργία των ίδιων κλειδιών, τα κλειδιά δημιουργούνται μοναδικά.

#Бэкап заголовка раздела
cryptsetup luksHeaderBackup --header-backup-file ~/Бэкап_DebSHIFR /dev/sda7 

#Восстановление заголовка раздела
cryptsetup luksHeaderRestore --header-backup-file <file> <device>

επιλογές:
* luksHeaderBackup --header-backup-file - εντολή backup.
* luksHeaderRestore --header-backup-file - εντολή επαναφοράς.
* ~/Backup_DebSHIFR - αρχείο αντιγράφου ασφαλείας.
* /dev/sda7 - το διαμέρισμα του οποίου η κρυπτογραφημένη κεφαλίδα του δίσκου πρόκειται να δημιουργηθεί αντίγραφο ασφαλείας.
Σε αυτό το βήμα, η <δημιουργία και η επεξεργασία ενός κρυπτογραφημένου διαμερίσματος> έχει ολοκληρωθεί.

Β3. Μετεγκατάσταση του λειτουργικού συστήματος GNU/Linux (sda4) στο κρυπτογραφημένο διαμέρισμα (sda7)

Δημιουργία φακέλου /mnt2 (Σημείωση - εξακολουθούμε να εργαζόμαστε με live 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 > GNU/Linux-encrypted] έχει ολοκληρωθεί σε αυτό το βήμα.

ΣΤΙΣ 4. Ρύθμιση GNU/Linux σε κρυπτογραφημένο διαμέρισμα sda7

Μετά από μια επιτυχημένη μεταφορά λειτουργικού συστήματος /dev/sda4 > /dev/sda7, πρέπει να συνδεθείτε στο GNU/Linux σε ένα κρυπτογραφημένο διαμέρισμα και να εκτελέσετε περαιτέρω ρυθμίσεις (χωρίς επανεκκίνηση του υπολογιστή) σχετικά με το κρυπτογραφημένο σύστημα. Να είσαι δηλαδή σε live usb, αλλά να εκτελείς εντολές «σε σχέση με τη ρίζα του κρυπτογραφημένου λειτουργικού συστήματος». Προσομοίωση παρόμοια κατάσταση θα είναι "chroot". Για να λαμβάνετε γρήγορα πληροφορίες από ποιο λειτουργικό σύστημα εργάζεστε αυτήν τη στιγμή (κρυπτογραφημένα ή όχι, αφού τα δεδομένα στο sda4 και sda7 είναι συγχρονισμένα), αποσυγχρονίστε τα λειτουργικά συστήματα. Δημιουργία σε καταλόγους root (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Εφόσον το αρχείο swap διαμορφώνεται κάθε φορά που ξεκινά το λειτουργικό σύστημα, δεν έχει νόημα να δημιουργείτε και να αντιστοιχίζετε την εναλλαγή στον λογικό δίσκο τώρα και να πληκτρολογείτε εντολές, όπως στην παράγραφο B2.2. Για το Swap, σε κάθε εκκίνηση, τα προσωρινά κλειδιά κρυπτογράφησης θα δημιουργούνται αυτόματα. Κύκλος ζωής κλειδιών swap-a: αποπροσάρτηση/αποσυναρμολόγηση ενός διαμερίσματος swap (+εκκαθάριση RAM); ή επανεκκινήστε το λειτουργικό σύστημα. Εναλλάξτε τη ρύθμιση, ανοίξτε το αρχείο που είναι υπεύθυνο για τη διαμόρφωση μπλοκ κρυπτογραφημένων συσκευών (παρόμοιο με το αρχείο fstab, αλλά υπεύθυνο για το crypto).

nano /etc/crypttab 

κανόνας

#"όνομα στόχου" "συσκευή πηγής" "αρχείο κλειδιού" "επιλογές"
swap /dev/sda8 /dev/urandom swap,cipher=twofish-xts-plain64,size=512,hash=sha512

Επιλογές
* swap - αντιστοιχισμένο όνομα κατά την κρυπτογράφηση /dev/mapper/swap.
* /dev/sda8 - χρησιμοποιήστε το λογικό σας διαμέρισμα για εναλλαγή.
* /dev/urandom - γεννήτρια τυχαίων κλειδιών κρυπτογράφησης για εναλλαγή (με κάθε νέα εκκίνηση του λειτουργικού συστήματος, δημιουργούνται νέα κλειδιά). Η γεννήτρια /dev/urandom είναι λιγότερο τυχαία από την /dev/random, εξάλλου το /dev/random χρησιμοποιείται όταν εργάζεστε σε επικίνδυνες παρανοϊκές συνθήκες. Κατά την εκκίνηση του λειτουργικού συστήματος, το /dev/random επιβραδύνει τη φόρτωση για μερικά ± λεπτά (δείτε systemd-analyze).
* swap,cipher=twofish-xts-plain64,size=512,hash=sha512: -το διαμέρισμα γνωρίζει ότι είναι swap και έχει διαμορφωθεί ανάλογα. αλγόριθμος κρυπτογράφησης.

#Открываем и правим fstab
nano /etc/fstab

κανόνας

Το # swap ήταν ενεργοποιημένο / dev / sda8 κατά την εγκατάσταση
/dev/mapper/swap κανένας swap sw 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 будет постоянный

Η ρύθμιση του διαμερίσματος Swap έχει ολοκληρωθεί.

Β4.4. Ρύθμιση κρυπτογραφημένου GNU/Linux (επεξεργασία αρχείων crypttab/fstab)Το αρχείο /etc/crypttab, όπως έγραψα παραπάνω, περιγράφει κρυπτογραφημένες συσκευές μπλοκ που έχουν ρυθμιστεί κατά την εκκίνηση του συστήματος.

#правим /etc/crypttab 
nano /etc/crypttab 

εάν ταιριάξατε με την ενότητα sda7>sda7_crypt όπως στην παράγραφο B2.1

# "όνομα στόχου" "συσκευή πηγής" "αρχείο κλειδιού" "επιλογές"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 none luks

εάν ταιριάξατε με την ενότητα sda7>sda7_crypt όπως στην παράγραφο B2.2

# "όνομα στόχου" "συσκευή πηγής" "αρχείο κλειδιού" "επιλογές"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 none cipher=twofish-xts-plain64,size=512,hash=sha512

εάν ταιριάξατε με την ενότητα sda7>sda7_crypt όπως στην παράγραφο B2.1 ή B2.2, αλλά δεν θέλετε να εισαγάγετε ξανά τον κωδικό πρόσβασης για ξεκλείδωμα και εκκίνηση του λειτουργικού συστήματος, τότε μπορείτε να αντικαταστήσετε το μυστικό κλειδί / τυχαίο αρχείο αντί για τον κωδικό πρόσβασης

# "όνομα στόχου" "συσκευή πηγής" "αρχείο κλειδιού" "επιλογές"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 /etc/skey luks

Περιγραφή
*none - Υποδεικνύει ότι όταν εκκινείται το λειτουργικό σύστημα, απαιτείται μια μυστική φράση πρόσβασης για το ξεκλείδωμα της ρίζας.
* UUID - αναγνωριστικό κατάτμησης. Για να μάθετε την ταυτότητά σας, πληκτρολογήστε το τερματικό (υπενθύμιση ότι όλο αυτό το διάστημα και μετά, εργάζεστε σε τερματικό σε περιβάλλον chroot και όχι σε άλλο τερματικό live 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).
* cipher=twofish-xts-plain64,size=512,hash=sha512 -luks κρυπτογράφηση προηγμένης λειτουργίας.
* /etc/skey - αρχείο μυστικού κλειδιού, το οποίο αντικαθίσταται αυτόματα για να ξεκλειδώσει την εκκίνηση του λειτουργικού συστήματος (αντί να εισάγετε τον 3ο κωδικό πρόσβασης). Μπορείτε να καθορίσετε οποιοδήποτε αρχείο έως 8mb, αλλά τα δεδομένα θα διαβάζονται <1mb.

#Создание "генерация" случайного файла <секретного ключа> размером 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

# "σύστημα αρχείων" "σημείο προσάρτησης" "τύπος" "επιλογές" "απόθεση" "πάσο"
# / ήταν on / dev / sda7 κατά την εγκατάσταση
/dev/mapper/sda7_crypt / ext4 errors=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 (αυτή η διαμόρφωση είναι υπεύθυνη για τη δυνατότητα δημιουργίας grub.cfg κατά την εργασία με κρυπτογραφημένο /boot)

nano /etc/default/grub

προσθέστε τη γραμμή "GRUB_ENABLE_CRYPTODISK=y"
οριστεί σε 'y', το grub-mkconfig και το grub-install θα ελέγξουν για κρυπτογραφημένες μονάδες δίσκου και θα δημιουργήσουν πρόσθετες εντολές που απαιτούνται για πρόσβαση σε αυτές κατά την εκκίνηση (ενδέχεται ).
πρέπει να είναι παρόμοια

GRUB_DEFAULT = 0
GRUB_TIMEOUT = 1
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="acpi_backlight=vendor"
GRUB_CMDLINE_LINUX="ήσυχο εκκίνηση noautomount"
GRUB_ENABLE_CRYPTODISK=y

Β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, το κλειδί είναι απαραίτητο για να ξεκλειδώσετε τη ρίζα στην εκκίνηση του λειτουργικού συστήματος (εάν δεν επιθυμείτε να εισαγάγετε ξανά τον κωδικό πρόσβασης, το κλειδί "κλειδί" αντικαθίσταται αυτόματα).

Β4.6. Ενημέρωση /boot/initrd.img [έκδοση]Για να συσκευάσετε το ιδιωτικό κλειδί στο initrd.img και να εφαρμόσετε τις διορθώσεις cryptsetup, ενημερώστε την εικόνα

update-initramfs -u -k all

κατά την ενημέρωση του initrd.img (Όπως λέει και η παροιμία, "Ίσως, αλλά όχι βέβαιο") θα υπάρξουν προειδοποιήσεις σχετικά με την εγκατάσταση κρυπτογράφησης ή, για παράδειγμα, μια ειδοποίηση σχετικά με την απώλεια μονάδων Nvidia - αυτό είναι φυσιολογικό. Μετά την ενημέρωση του αρχείου, ελέγξτε ότι έχει όντως ενημερωθεί δείτε με την ώρα (σε σχέση με το περιβάλλον chroot ./boot/initrd.img). Προσοχή! πριν από [update-initramfs -u -k all] βεβαιωθείτε ότι έχετε ελέγξει ότι το cryptsetup είναι ανοιχτό /dev/sda7 sda7_crypt - αυτό είναι το όνομα που πρέπει να είναι, το οποίο εμφανίζεται στο /etc/crypttab, διαφορετικά μετά την επανεκκίνηση-ένα σφάλμα busybox)
Αυτό το βήμα ολοκληρώνει τη ρύθμιση των αρχείων διαμόρφωσης.

[С] Εγκατάσταση και διαμόρφωση του GRUB2/Protection

Γ1. Εάν είναι απαραίτητο, μορφοποιήστε το ειδικό διαμέρισμα για το bootloader (τουλάχιστον 20 MB είναι αρκετά για το διαμέρισμα)

mkfs.ext4 -v -L GRUB2 /dev/sda6

Γ2. Τοποθετήστε το /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). Διαφορετικά, θα καταστρέψετε την κεφαλίδα/φόρτωση του VeraCrypt. Μετά την ενημέρωση των πακέτων GRUB2 και την ακύρωση της εγκατάστασης, ο φορτωτής εκκίνησης πρέπει να εγκατασταθεί χειροκίνητα σε μια λογική μονάδα δίσκου και όχι στο "MBR". Εάν το αποθετήριο σας έχει μια παλιά έκδοση του GRUB2, δοκιμάστε εκσυγχρονίζω από τον επίσημο ιστότοπο - δεν το έλεγξα (συνεργάστηκε με φρέσκους φορτωτές εκκίνησης GRUB 2.02 ~BetaX).

C3. Εγκατάσταση του GRUB2 σε εκτεταμένο διαμέρισμα [sda6]Πρέπει να έχετε τοποθετήσει ένα διαμέρισμα [p.C.2]

grub-install --force --root-directory=/mnt /dev/sda6

επιλογές
* --force - εγκαταστήστε το bootloader, παρακάμπτοντας όλες τις προειδοποιήσεις που σχεδόν πάντα υπάρχουν και μπλοκάρετε την εγκατάσταση (απαιτούμενη σημαία).
* --root-directory - εγκατάσταση καταλόγου στη ρίζα του 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" πιθανότατα θα βρει και θα παραλάβει το λειτουργικό σύστημα από live usb, αν έχετε μια μονάδα flash πολλαπλών εκκίνησης με 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

Μετά την επανεκκίνηση του υπολογιστή, θα πρέπει να φορτωθεί το πρόγραμμα εκκίνησης VeraCrypt.
Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

*Εισαγωγή του κωδικού πρόσβασης για το ενεργό διαμέρισμα - Τα Windows θα ξεκινήσουν τη φόρτωση.
*Πατώντας το πλήκτρο "Esc" θα μεταφερθεί ο έλεγχος στο GRUB2, εάν επιλέξετε κρυπτογραφημένο GNU / Linux - θα χρειαστείτε έναν κωδικό πρόσβασης (sda7_crypt) για να ξεκλειδώσετε το /boot/initrd.img (αν το grub2 λέει uuid "δεν βρέθηκε" - αυτό είναι πρόβλημα με τον bootloader grub2, θα πρέπει να επανεγκατασταθεί, για παράδειγμα, από τον δοκιμαστικό κλάδο/σταθερό και το pd).
Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

*Ανάλογα με τον τρόπο ρύθμισης του συστήματος (βλ. ενότητα B4.4/4.5), αφού εισαγάγετε τον σωστό κωδικό πρόσβασης για να ξεκλειδώσετε την εικόνα /boot/initrd.img, θα χρειαστείτε έναν κωδικό πρόσβασης για την εκκίνηση του πυρήνα/ρίζας του λειτουργικού συστήματος ή Το μυστικό κλειδί θα αντικατασταθεί αυτόματα με το "skey", εξαλείφοντας την ανάγκη να εισαγάγετε ξανά τη φράση πρόσβασης.
Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση
(στιγμιότυπο οθόνης "αυτόματη αντικατάσταση του μυστικού κλειδιού").

*Στη συνέχεια, θα ξεκινήσει η γνωστή διαδικασία εκκίνησης GNU / Linux με έλεγχο ταυτότητας λογαριασμού χρήστη.
Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

*Μετά την εξουσιοδότηση χρήστη και τη σύνδεση στο λειτουργικό σύστημα, πρέπει να ενημερώσετε ξανά το /boot/initrd.img (βλ. Q4.6).

update-initramfs -u -k all

Και σε περίπτωση επιπλέον γραμμών στο μενού GRUB2 (από pickup OS-m με live usb) ξεφορτώσου τους

mount /dev/sda6 /mnt
grub-mkconfig -o /mnt/boot/grub/grub.cfg

Μια γρήγορη περίληψη της κρυπτογράφησης συστήματος GNU/Linux:

  • Το GNU/Linuxinux είναι πλήρως κρυπτογραφημένο, συμπεριλαμβανομένων των /boot/kernel και initrd.
  • το μυστικό κλειδί είναι συσκευασμένο στο initrd.img.
  • τρέχον σύστημα αδειοδότησης (εισαγωγή κωδικού πρόσβασης για ξεκλείδωμα initrd, κωδικός πρόσβασης / κλειδί για την εκκίνηση του λειτουργικού συστήματος, κωδικός πρόσβασης εξουσιοδότησης λογαριασμού Linux).

Η κρυπτογράφηση συστήματος διαμερισμάτων μπλοκ "Simple GRUB2 configuration" ολοκληρώθηκε.

Γ6. Προηγμένη διαμόρφωση GRUB2. Προστασία Bootloader με ψηφιακή υπογραφή + προστασία ταυτότηταςΤο GNU/Linux είναι πλήρως κρυπτογραφημένο, αλλά ο bootloader δεν μπορεί να κρυπτογραφηθεί - αυτή η συνθήκη υπαγορεύεται από το BIOS. Για αυτόν τον λόγο, η κρυπτογραφημένη εκκίνηση αλυσίδας GRUB2 δεν είναι δυνατή, αλλά μια απλή εκκίνηση αλυσίδας είναι δυνατή/διαθέσιμη, όχι απαραίτητη από άποψη ασφάλειας [βλ. παρακάτω]. P. F].
Για το «ευάλωτο» GRUB2, οι προγραμματιστές εφάρμοσαν τον αλγόριθμο προστασίας του bootloader «υπογραφή/αυθεντικοποίηση».

  • Όταν ο bootloader προστατεύεται με "τη δική του ψηφιακή υπογραφή", η εξωτερική τροποποίηση αρχείων ή μια προσπάθεια φόρτωσης πρόσθετων μονάδων σε αυτόν τον bootloader, θα οδηγήσει στον αποκλεισμό της διαδικασίας εκκίνησης.
  • Όταν προστατεύετε τον φορτωτή εκκίνησης με έλεγχο ταυτότητας, για να επιλέξετε την εκκίνηση ενός κιτ διανομής ή να εισαγάγετε πρόσθετες εντολές στο CLI, θα χρειαστεί να εισαγάγετε τη σύνδεση και τον κωδικό πρόσβασης του υπερχρήστη-GRUB2.

C6.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" ("-unrestricted" "-user",
προσθέστε στο τέλος (πριν από τη γραμμή ### ΤΕΛΟΣ /etc/grub.d/41_custom ###)
"set superusers="root"
password_pbkdf2 root hash".

Κάτι τέτοιο θα έπρεπε να είναι

# Αυτό το αρχείο παρέχει έναν εύκολο τρόπο για να προσθέσετε προσαρμοσμένες καταχωρήσεις μενού. Απλώς πληκτρολογήστε το
# καταχωρήσεις μενού που θέλετε να προσθέσετε μετά από αυτό το σχόλιο. Προσέξτε να μην αλλάξετε
# η γραμμή "exec tail" παραπάνω.
### ΤΕΛΟΣ /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
εάν [ -f ${config_directory}/custom.cfg ]; έπειτα
πηγή ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; έπειτα
πηγή $prefix/custom.cfg;
fi
set superusers="root"
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 

κατ<<ΕΟΦ
set superusers="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
EOF

Κατά τη δημιουργία της διαμόρφωσης "grub-mkconfig -o /mnt/boot/grub/grub.cfg", οι γραμμές που είναι υπεύθυνες για τον έλεγχο ταυτότητας θα προστεθούν αυτόματα στο grub.cfg.
Αυτό το βήμα ολοκληρώνει τη ρύθμιση ελέγχου ταυτότητας GRUB2.

C6.2. Προστασία του bootloader με ψηφιακή υπογραφήΥποτίθεται ότι έχετε ήδη το προσωπικό σας κλειδί κρυπτογράφησης pgp (ή δημιουργήστε ένα τέτοιο κλειδί). Πρέπει να εγκατασταθεί κρυπτογραφικό λογισμικό στο σύστημα: gnuPG; kleopatra/GPA; Ιππόκαμπος. Το κρυπτολογισμικό θα κάνει τη ζωή σας πολύ πιο εύκολη σε όλες αυτές τις περιπτώσεις. 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 - εγκαταστήστε το bootloader, παρακάμπτοντας όλες τις προειδοποιήσεις που υπάρχουν πάντα (απαιτούμενη σημαία).
* --modules="gcry_sha256 gcry_sha512 signature_test gcry_dsa gcry_rsa" - δίνει εντολή στο GRUB2 να προφορτώσει τις απαιτούμενες μονάδες κατά την εκκίνηση του υπολογιστή.
* -k ~/perskey - διαδρομή προς "κλειδί PGP" (μετά τη συσκευασία του κλειδιού σε μια εικόνα, μπορεί να διαγραφεί).
* --root-directory -ορίστε τον κατάλογο εκκίνησης σε ρίζα 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=enforce" στη διαμόρφωση.

Κάπως έτσι πρέπει να φαίνεται (τελικές γραμμές στο αρχείο grub.cfg)

### BEGIN /etc/grub.d/41_custom ###
εάν [ -f ${config_directory}/custom.cfg ]; έπειτα
πηγή ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; έπειτα
πηγή $prefix/custom.cfg;
fi
trust /boot/grub/perskey
set superusers="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
### ΤΕΛΟΣ /etc/grub.d/41_custom ###
#

Η διαδρομή προς "/boot/grub/perskey" δεν χρειάζεται να δείχνει σε ένα συγκεκριμένο διαμέρισμα δίσκου, για παράδειγμα hd0,6, γιατί ο ίδιος ο bootloader "root" είναι η προεπιλεγμένη διαδρομή του διαμερίσματος στο οποίο είναι εγκατεστημένο το GRUB2 (βλ. set rot=..).

Υπογραφή GRUB2 (όλα τα αρχεία σε όλους τους καταλόγους /GRUB) με το κλειδί "perskey" σας.
Εύκολη λύση πώς να υπογράψετε (για nautilus/caja explorer): εγκαταστήστε την επέκταση "ιππόκαμπος" για τον εξερευνητή από το αποθετήριο. Το κλειδί σας πρέπει να προστεθεί στο περιβάλλον su.
Ανοίξτε τον εξερευνητή από το σύμβολο sudo "/mnt/boot" - RMB -. Στην οθόνη φαίνεται κάπως έτσι

Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

Το ίδιο το κλειδί είναι "/mnt/boot/grub/perskey" (αντιγραφή στον κατάλογο grub) πρέπει επίσης να υπογραφεί με δική του υπογραφή. Ελέγξτε ότι οι υπογραφές αρχείων [*.sig] εμφανίζονται στον κατάλογο/υποκαταλόγους.
Με τον παραπάνω τρόπο, υπογράφουμε "/boot" (ο πυρήνας μας, initrd). Εάν ο χρόνος σας αξίζει κάτι, τότε αυτή η μέθοδος εξαλείφει την ανάγκη να γράψετε ένα σενάριο bash για να υπογράψετε "πολλά αρχεία".

Για να αφαιρέσετε όλες τις υπογραφές του bootloader (αν κάτι πήγε στραβά)

rm -f $(find /mnt/boot/grub -type f -name '*.sig')

Για να μην υπογράψουμε τον bootloader μετά την ενημέρωση του συστήματος, παγώνουμε όλα τα πακέτα ενημερώσεων που σχετίζονται με το GRUB2.

apt-mark hold grub-common grub-pc grub-pc-bin grub2 grub2-common

Σε αυτό το βήμα <προστασία του bootloader με ψηφιακή υπογραφή> ολοκληρώνεται η προηγμένη διαμόρφωση του GRUB2.

C6.3. Δοκιμή απόδειξης του φορτωτή εκκίνησης GRUB2 που προστατεύεται από ψηφιακή υπογραφή και έλεγχο ταυτότηταςGRUB2. Κατά την επιλογή μιας διανομής GNU/Linux ή την είσοδο στο CLI (γραμμή εντολών) απαιτείται εξουσιοδότηση υπερχρήστη. Αφού εισαγάγετε τη σωστή σύνδεση / κωδικό πρόσβασης, θα χρειαστείτε τον κωδικό πρόσβασης από το initrd

Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση
Στιγμιότυπο οθόνης, επιτυχής έλεγχος ταυτότητας του GRUB2-superuser.

Εάν πλαστογραφήσετε οποιοδήποτε από τα αρχεία GRUB2 / κάνετε αλλαγές στο grub.cfg ή διαγράψετε το αρχείο / υπογραφή, φορτώσετε το κακόβουλο module.mod, τότε θα εμφανιστεί μια αντίστοιχη προειδοποίηση. Η εκκίνηση του GRUB2 θα σταματήσει.

Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση
Στιγμιότυπο οθόνης, μια προσπάθεια παρέμβασης στο GRUB2 "από έξω".

Στην "κανονική" εκκίνηση "χωρίς εισβολή", η κατάσταση του κωδικού εξόδου του συστήματος είναι "0". Επομένως, δεν είναι γνωστό εάν η προστασία λειτουργεί ή όχι. (δηλαδή, "με ή χωρίς προστασία bootloader με υπογραφή" κατά την κανονική εκκίνηση, η κατάσταση είναι η ίδια "0" - αυτό είναι κακό).

Πώς να ελέγξετε την προστασία ψηφιακής υπογραφής;

Άβολος τρόπος ελέγχου: πλαστογραφήστε/αφαιρέστε τη μονάδα που χρησιμοποιείται από το GRUB2, για παράδειγμα, αφαιρέστε την υπογραφή luks.mod.sig και λάβετε ένα σφάλμα.

Ο σωστός τρόπος είναι να πάτε στο CLI του bootloader και να πληκτρολογήσετε την εντολή

trust_list

Σε απόκριση, θα πρέπει να λάβουν ένα δακτυλικό αποτύπωμα "perskey", εάν η κατάσταση είναι "0", τότε η προστασία υπογραφής δεν λειτουργεί, ελέγξτε ξανά τη ρήτρα C6.2.
Σε αυτό το βήμα, η σύνθετη ρύθμιση "Προστασία GRUB2 με ψηφιακή υπογραφή και έλεγχο ταυτότητας" έχει τελειώσει.

C7 Εναλλακτική μέθοδος για την ασφάλεια του φορτωτή εκκίνησης GRUB2 με κατακερματισμόΗ μέθοδος «Προστασία του φορτωτή CPU / Έλεγχος ταυτότητας» που περιγράφεται παραπάνω είναι κλασική. Λόγω της ατέλειας του GRUB2, σε παρανοϊκές συνθήκες, υπόκειται σε πραγματική επίθεση, την οποία θα δώσω παρακάτω στην παράγραφο [ΣΤ]. Επιπλέον, μετά την ενημέρωση του λειτουργικού συστήματος / πυρήνα, είναι απαραίτητο να υπογράψετε ξανά τον bootloader.

Προστασία του bootloader GRUB2 με κατακερματισμό

Πλεονεκτήματα έναντι των κλασικών:

  • Υψηλότερο επίπεδο αξιοπιστίας (ο κατακερματισμός / επαλήθευση πραγματοποιείται μόνο από έναν κρυπτογραφημένο τοπικό πόρο. Ολόκληρο το εκχωρημένο διαμέρισμα στο GRUB2 ελέγχεται για τυχόν αλλαγές και όλα τα άλλα κρυπτογραφούνται, στο κλασικό σχήμα με προστασία / έλεγχο ταυτότητας φορτωτή CPU, ελέγχονται μόνο τα αρχεία, αλλά όχι δωρεάν χώρο, στον οποίο μπορεί να προστεθεί «κάτι κάτι κακό»).
  • Κρυπτογραφημένη καταγραφή (ένα αναγνώσιμο προσωπικό κρυπτογραφημένο αρχείο καταγραφής προστίθεται στο σχήμα).
  • ταχύτητα (Η προστασία / επαλήθευση ολόκληρου του διαμερίσματος που έχει εκχωρηθεί για το GRUB2 γίνεται σχεδόν αμέσως).
  • Αυτοματοποίηση όλων των κρυπτογραφικών διαδικασιών.

Μειονεκτήματα στα κλασικά.

  • Πλαστογραφία υπογραφής (θεωρητικά, είναι δυνατό να βρεθεί μια δεδομένη σύγκρουση συνάρτησης κατακερματισμού).
  • Αυξημένο επίπεδο δυσκολίας (σε σύγκριση με τα κλασικά, απαιτείται λίγη περισσότερη γνώση του GNU/Linux OS).

Πώς λειτουργεί η ιδέα κατακερματισμού του GRUB2/partition

Η ενότητα GRUB2 είναι "υπογεγραμμένη", όταν φορτώνεται το λειτουργικό σύστημα, η ενότητα του bootloader ελέγχεται για αμετάβλητο, ακολουθούμενη από σύνδεση σε ασφαλές περιβάλλον (κρυπτογραφημένο). Εάν ο bootloader ή το διαμέρισμα του έχει παραβιαστεί, εκτός από το αρχείο καταγραφής εισβολής, τα ακόλουθα

Πράγμα.Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

Ένας παρόμοιος έλεγχος πραγματοποιείται τέσσερις φορές την ημέρα, ο οποίος δεν φορτώνει τους πόρους του συστήματος.
Χρησιμοποιώντας την εντολή "-$ check_GRUB", πραγματοποιείται ένας άμεσος έλεγχος ανά πάσα στιγμή χωρίς καταγραφή, αλλά με έξοδο πληροφοριών στο CLI.
Χρησιμοποιώντας την εντολή "-$ sudo GRUB_signature", ο bootloader / διαμέρισμα GRUB2 υπογράφεται άμεσα και ενημερώνεται η καταγραφή του (απαιτείται μετά την ενημέρωση του λειτουργικού συστήματος/εκκίνησης) και η ζωή συνεχίζεται.

Εφαρμογή της μεθόδου κατακερματισμού του bootloader και της κατάτμησής του

0) Ας υπογράψουμε τον bootloader/partition του GRUB προσαρτώντας τον πρώτα στο /media/username

-$ hashdeep -c md5 -r /media/username/GRUB > /podpis.txt

1) Δημιουργούμε ένα σενάριο χωρίς επέκταση στη ρίζα του κρυπτογραφημένου λειτουργικού συστήματος ~/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 και του bootloader του, αποθηκεύστε το αρχείο καταγραφής.

Ας δημιουργήσουμε ή αντιγράψουμε, για παράδειγμα, ένα "κακόβουλο αρχείο" [virus.mod] στο διαμέρισμα GRUB2 και ας εκτελέσουμε έναν προσωρινό έλεγχο/δοκιμή:

-$ hashdeep -vvv -a -k '/podpis.txt' -r '/media/username/GRUB

Το CLI πρέπει να δει μια εισβολή στο -προπύργιο- μας#Stripped log in 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

#Όπως μπορείτε να δείτε, εμφανίστηκε το «Files moved: 1 and Audit fall», που σημαίνει ότι ο έλεγχος απέτυχε.
Λόγω των ιδιαιτεροτήτων της δοκιμασμένης ενότητας, αντί για "Βρέθηκαν νέα αρχεία" > "Τα αρχεία μετακινήθηκαν"

2) Βάλτε το gif εδώ > ~/warning.gif, ορίστε τα δικαιώματα σε 744.

3) Διαμόρφωση του fstab για αυτόματη προσάρτηση του διαμερίσματος GRUB κατά την εκκίνηση

-$ sudo nano /etc/fstab

LABEL=GRUB /media/username/GRUB ext4 προεπιλογή 0 0

4) Περιστρέφουμε το κούτσουρο

-$ sudo nano /etc/logrotate.d/podpis 

/var/log/subpis.txt {
καθημερινά
περιστροφή 50
μέγεθος 5M
ημερομηνία
κομπρέσα
καθυστέρηση συμπίεσης
olddir /var/log/old
}

/var/log/vtorjenie.txt {
μηνιαίος
περιστροφή 5
μέγεθος 5M
ημερομηνία
olddir /var/log/old
}

5) Προσθήκη εργασίας στο cron

-$ 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] Εκκαθάριση - καταστροφή μη κρυπτογραφημένων δεδομένων

Διαγράψτε τα προσωπικά σας αρχεία τόσο εντελώς που «ούτε ο Θεός δεν μπορεί να τα διαβάσει», σύμφωνα με τον εκπρόσωπο της Νότιας Καρολίνας Trey Gowdy.

Ως συνήθως, υπάρχουν διάφοροι «μύθοι και θρύλους”, σχετικά με την ανάκτηση δεδομένων μετά τη διαγραφή τους από τον σκληρό δίσκο. Εάν πιστεύετε στη μαγεία στον κυβερνοχώρο ή είστε μέλος της κοινότητας ιστού Dr και δεν έχετε δοκιμάσει ποτέ την ανάκτηση δεδομένων μετά τη διαγραφή/αντικατάσταση (π.χ. ανάκτηση με R-studio), τότε η προτεινόμενη μέθοδος είναι απίθανο να σας ταιριάζει, χρησιμοποιήστε αυτή που είναι πιο κοντά σας.

Μετά την επιτυχή μετεγκατάσταση του GNU/Linux σε ένα κρυπτογραφημένο διαμέρισμα, το παλιό αντίγραφο πρέπει να διαγραφεί οριστικά. Καθολική μέθοδος καθαρισμού: λογισμικό για λογισμικό δωρεάν GUI για Windows/Linux BleachBit.
Γρήγορα μορφοποίηση του διαμερίσματος, τα δεδομένα στα οποία θέλετε να καταστρέψετε (χρησιμοποιώντας το Gparted), εκτελέστε το BleachBit, επιλέξτε "Clean up free space" - επιλέξτε ένα διαμέρισμα (το sdaX σας με προηγούμενο αντίγραφο του GNU/Linux), θα ξεκινήσει η διαδικασία καθαρισμού. BleachBit - σκουπίζει το δίσκο με ένα πέρασμα - αυτό είναι που "χρειαζόμαστε", Αλλά! Αυτό λειτουργεί θεωρητικά μόνο εάν διαμορφώσατε τη μονάδα δίσκου και την καθαρίσατε στο λογισμικό BB v2.0.

Προσοχή! Το BB σκουπίζει το δίσκο, αφήνοντας μεταδεδομένα, τα ονόματα αρχείων διατηρούνται όταν τα δεδομένα καταστρέφονται (Ccleaner - δεν αφήνει μεταδεδομένα).

Και ο μύθος για τη δυνατότητα ανάκτησης δεδομένων δεν είναι πραγματικά μύθος.Bleachbit V2.0-2 πρώην ασταθές πακέτο Debian λειτουργικού συστήματος (και οποιοδήποτε άλλο παρόμοιο λογισμικό: sfill; wipe-Nautilus - έχουν επίσης παρατηρηθεί σε αυτήν τη βρώμικη επιχείρηση) είχε πραγματικά ένα κρίσιμο σφάλμα: τη δυνατότητα "εκκαθάρισης ελεύθερου χώρου". λειτουργεί λανθασμένα σε μονάδες HDD/Flash (ntfs/ext4). Λογισμικό αυτού του είδους, κατά τον καθαρισμό του ελεύθερου χώρου, δεν αντικαθιστά ολόκληρο τον δίσκο, όπως πιστεύουν πολλοί χρήστες. Και μερικά (παρτίδα) διαγραμμένα δεδομένα Το λειτουργικό σύστημα/λογισμικό αντιμετωπίζει αυτά τα δεδομένα ως μη διαγραμμένα/δεδομένα χρήστη και παραλείπει αυτά τα αρχεία κατά την εκκαθάριση του ΛΣ. Το πρόβλημα είναι ότι μετά από τόσο μεγάλο χρονικό διάστημα, ο καθαρισμός του δίσκου Τα "διαγραμμένα αρχεία" μπορούν να ανακτηθούν ακόμα και μετά από 3+ περάσματα σκουπίσματος δίσκου.
Σε GNU/Linux στο Bleachbit 2.0-2 Οι λειτουργίες μόνιμης διαγραφής αρχείων και καταλόγων λειτουργούν αξιόπιστα, αλλά δεν εκκαθαρίζουν ελεύθερο χώρο. Για σύγκριση: στα Windows στο λογισμικό CCleaner, η λειτουργία "OSB for ntfs" λειτουργεί σωστά και ο Θεός πραγματικά δεν μπορεί να διαβάσει τα διαγραμμένα δεδομένα.

Και έτσι, για να αφαιρέσετε επιμελώς "συμβιβαστική" παλιά μη κρυπτογραφημένα δεδομένα, Το Bleachbit χρειάζεται άμεση πρόσβαση σε αυτά τα δεδομένα, στη συνέχεια, χρησιμοποιήστε τη συνάρτηση "διαγραφή αρχείων / καταλόγων ανεπανόρθωτα".
Για να διαγράψετε "διαγραμμένα αρχεία χρησιμοποιώντας κανονικά εργαλεία λειτουργικού συστήματος" στα Windows, χρησιμοποιήστε το CCleaner / BB με τη λειτουργία "OSB". Στο GNU/Linux για αυτό το ζήτημα (αφαίρεση διαγραμμένων αρχείων) πρέπει να εξασκηθείτε μόνοι σας (διαγραφή δεδομένων + ανεξάρτητη προσπάθεια επαναφοράς τους και μην βασίζεστε στην έκδοση λογισμικού (αν όχι σελιδοδείκτης, τότε σφάλμα)), μόνο σε αυτήν την περίπτωση θα μπορέσετε να κατανοήσετε τον μηχανισμό αυτού του προβλήματος και να απαλλαγείτε εντελώς από τα διαγραμμένα δεδομένα.

Το Bleachbit v3.0 δεν έλεγξε, ίσως το πρόβλημα έχει ήδη διορθωθεί.
Το Bleachbit v2.0 λειτουργεί ειλικρινά.

Αυτό το βήμα ολοκληρώνει την εκκαθάριση του δίσκου.

[E] Generic Encrypted OS Backup

Κάθε χρήστης έχει τη δική του μέθοδο δημιουργίας αντιγράφων ασφαλείας δεδομένων, αλλά τα κρυπτογραφημένα δεδομένα του "System OS" απαιτούν μια ελαφρώς διαφορετική προσέγγιση στην εργασία. Το ενοποιημένο λογισμικό όπως το "Clonezilla" και παρόμοιο λογισμικό δεν μπορούν να λειτουργήσουν απευθείας με κρυπτογραφημένα δεδομένα.

Ρύθμιση της εργασίας δημιουργίας αντιγράφων ασφαλείας για κρυπτογραφημένες συσκευές μπλοκ:

  1. καθολικότητα - ο ίδιος αλγόριθμος / λογισμικό δημιουργίας αντιγράφων ασφαλείας για Windows / Linux.
  2. τη δυνατότητα εργασίας στην κονσόλα με οποιοδήποτε live usb GNU / Linux χωρίς την ανάγκη λήψης πρόσθετου λογισμικού (αλλά συνιστούμε το GUI);
  3. ασφάλεια αντιγράφων ασφαλείας - οι αποθηκευμένες "εικόνες" πρέπει να είναι κρυπτογραφημένες / προστατευμένες με κωδικό πρόσβασης.
  4. το μέγεθος των κρυπτογραφημένων δεδομένων πρέπει να ταιριάζει με το μέγεθος των πραγματικών δεδομένων που έχουν αντιγραφεί·
  5. εύκολη εξαγωγή των απαραίτητων αρχείων από το αντίγραφο ασφαλείας (δεν απαιτείται πρώτα να αποκρυπτογραφηθεί ολόκληρη η ενότητα).

Για παράδειγμα, δημιουργία αντιγράφων ασφαλείας/επαναφορά μέσω του βοηθητικού προγράμματος "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 πρέπει να αναζητήσετε άλλη λύση - όχι ενδιαφέρουσα.

Ε1. Universal Windows/Linux Backup. Πακέτο rsync (Grsync) + τόμος VeraCryptΑλγόριθμος για τη δημιουργία αντιγράφου ασφαλείας:

  1. δημιουργώντας ένα κρυπτογραφημένο κοντέινερ (τόμος/αρχείο) VeraCrypt για λειτουργικό σύστημα.
  2. μεταφορά / συγχρονισμός του λειτουργικού συστήματος με χρήση του λογισμικού Rsync στο cryptocontainer VeraCrypt.
  3. εάν είναι απαραίτητο, μεταφορτώστε τον τόμο VeraCrypt στο www.

Η δημιουργία ενός κρυπτογραφημένου κοντέινερ VeraCrypt έχει τα δικά του χαρακτηριστικά:
δημιουργώντας έναν δυναμικό όγκο (η δημιουργία του DT είναι διαθέσιμη μόνο στα Windows, μπορεί επίσης να χρησιμοποιηθεί σε GNU/Linux);
δημιουργώντας έναν κανονικό όγκο, αλλά υπάρχει μια απαίτηση "παρανοϊκής φύσης" (σύμφωνα με τον προγραμματιστή) - μορφοποίηση κοντέινερ.

Ένας δυναμικός τόμος δημιουργείται σχεδόν αμέσως στα Windows, αλλά κατά την αντιγραφή δεδομένων από το GNU/Linux > VeraCrypt DT, η συνολική απόδοση της λειτουργίας δημιουργίας αντιγράφων ασφαλείας μειώνεται σημαντικά.

Δημιουργείται ένας κανονικός τόμος Twofish 70 GB (Ας πούμε, κατά μέσο όρο ισχύος υπολογιστή) σε HDD ~ σε μισή ώρα (αντικατάσταση των δεδομένων του προηγούμενου κοντέινερ με ένα πέρασμα, λόγω απαιτήσεων ασφαλείας). Από το VeraCrypt Windows/Linux, η λειτουργία γρήγορης μορφοποίησης ενός τόμου κατά τη δημιουργία του καταργήθηκε, επομένως η δημιουργία ενός κοντέινερ είναι δυνατή μόνο μέσω μιας «αντικατάστασης σε ένα πέρασμα» ή της δημιουργίας ενός δυναμικού τόμου χαμηλής απόδοσης.

Δημιουργήστε έναν κανονικό τόμο VeraCrypt (όχι δυναμικά/ntfs), δεν πρέπει να υπάρχουν προβλήματα.

Ρύθμιση/δημιουργία/άνοιγμα κοντέινερ στο VeraCrypt GUI > GNU/Linux live usb (ο τόμος θα προσαρτηθεί αυτόματα στο /media/veracrypt2, ο τόμος του λειτουργικού συστήματος Windows προσαρτάται στο /media/veracrypt1). Δημιουργία κρυπτογραφημένου αντιγράφου ασφαλείας των Windows χρησιμοποιώντας το rsync GUI (grsync)τσεκάροντας τα πλαίσια.

Πλήρης κρυπτογράφηση δίσκου εγκατεστημένων συστημάτων Windows Linux. Κρυπτογραφημένη πολλαπλή εκκίνηση

Περιμένετε το τέλος της διαδικασίας. Με την ολοκλήρωση της δημιουργίας αντιγράφων ασφαλείας, θα έχουμε ένα κρυπτογραφημένο αρχείο.

Παρομοίως, δημιουργήστε ένα αντίγραφο ασφαλείας του λειτουργικού συστήματος GNU / Linux καταργώντας την επιλογή του "Windows compatible" rsync GUI.

Προσοχή! δημιουργήστε ένα κοντέινερ Veracrypt για ένα «αντίγραφο ασφαλείας GNU/Linux» στο σύστημα αρχείων ext4. Εάν δημιουργήσετε ένα αντίγραφο ασφαλείας σε ένα κοντέινερ ntfs, τότε όταν επαναφέρετε ένα τέτοιο αντίγραφο, θα χάσετε όλα τα δικαιώματα / ομάδες για όλα τα δεδομένα σας.

Μπορείτε να εκτελέσετε όλες τις λειτουργίες στο τερματικό. Βασικές επιλογές για rsync:
* -g - αποθήκευση ομάδων.
* -P --πρόοδος - η κατάσταση του χρόνου εργασίας στο αρχείο.
* -H -αντιγράψτε τους σκληρούς συνδέσμους ως έχουν.
* -a -λειτουργία αρχειοθέτησης (πολλές σημαίες rlptgoD);
* -v -λεκτική.

Εάν θέλετε να προσαρτήσετε έναν "τόμο Windows VeraCrypt" μέσω της κονσόλας στο λογισμικό cryptsetup, μπορείτε να δημιουργήσετε ένα ψευδώνυμο (su)

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 θα προσαρτηθεί στο λειτουργικό σύστημα.

Χάρτης/προσάρτηση όγκου συστήματος VeraCrypt στην εντολή cryptsetup

cryptsetup open --veracrypt --tcrypt-system --type tcrypt /dev/sdaX Windows_crypt
mount /dev/mapper/Windows_crypt /mnt

Χάρτης/προσάρτηση διαμερίσματος/κοντέινερ VeraCrypt στην εντολή 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, οι δίσκοι προσαρτώνται αυτόματα.

Μια σύντομη σημείωση σχετικά με όσα περιγράφονται παραπάνω στην παράγραφο Ε1 βήμα προς βήμα (αλλά τώρα για το λειτουργικό σύστημα GNU/Linux)
1) Δημιουργήστε έναν τόμο σε fs ext4 > 4gb (για αρχείο) Linux στο Veracrypt [Crypto box].
2) Κάντε επανεκκίνηση σε live usb.
3) ~$ cryptsetup ανοίξτε το /dev/sda7 Lunux #map το κρυπτογραφημένο διαμέρισμα.
4) ~$ mount /dev/mapper/Linux /mnt #mount το κρυπτογραφημένο διαμέρισμα στο /mnt.
5) ~$ mkdir mnt2 #δημιουργήστε έναν κατάλογο για το μελλοντικό αντίγραφο ασφαλείας.
6) ~$ cryptsetup open --veracrypt --πληκτρολογήστε tcrypt ~/Cryptobox Cryptobox && mount /dev/mapper/Cryptobox /mnt2 #Χαρτογραφήστε τον τόμο Veracrypt με το όνομα "Cryptobox" και προσαρτήστε το Cryptobox στο /mnt2.
7) ~$ rsync -avlxhHX --progress /mnt /mnt2/ #operation για δημιουργία αντιγράφων ασφαλείας ενός κρυπτογραφημένου διαμερίσματος σε έναν κρυπτογραφημένο τόμο Veracrypt.

(ΥΣΤΕΡΟΓΡΑΦΟ/ Προσοχή! Εάν μεταφέρετε ένα κρυπτογραφημένο GNU/Linux από μια αρχιτεκτονική/μηχανή σε άλλο, για παράδειγμα, Intel > AMD (δηλαδή ανάπτυξη αντιγράφου ασφαλείας από ένα κρυπτογραφημένο διαμέρισμα σε άλλο Intel > κρυπτογραφημένο διαμέρισμα AMD), Μην ξεχάσεις Μετά τη μεταφορά του κρυπτογραφημένου λειτουργικού συστήματος, επεξεργαστείτε το μυστικό αντικατεστημένο κλειδί αντί για τον κωδικό πρόσβασης, ίσως. το προηγούμενο κλειδί ~/etc/skey - δεν θα χωράει πλέον σε άλλο κρυπτογραφημένο διαμέρισμα και δεν είναι επιθυμητό να δημιουργηθεί ένα νέο κλειδί "cryptsetup luksAddKey" από κάτω από το chroot - είναι δυνατό ένα σφάλμα, απλώς στο ~/etc/crypttab καθορίστε προσωρινά "κανένα " αντί για "/etc/skey" », μετά την επανεκκίνηση και την είσοδο στο λειτουργικό σύστημα, δημιουργήστε ξανά το μυστικό αντικατεστημένο κλειδί σας).

Ως βετεράνοι IT, μην ξεχάσετε να δημιουργήσετε αντίγραφα ασφαλείας των κεφαλίδων των κρυπτογραφημένων κατατμήσεων λειτουργικού συστήματος Windows/Linux ξεχωριστά, διαφορετικά η κρυπτογράφηση θα στραφεί εναντίον σας.
Σε αυτό το βήμα, ολοκληρώνεται η δημιουργία αντιγράφων ασφαλείας των κρυπτογραφημένων λειτουργικών συστημάτων.

[F] Επίθεση στον φορτωτή εκκίνησης GRUB2

ΛεπτομέρειεςΕάν έχετε προστατεύσει το bootloader σας με ψηφιακή υπογραφή ή/και έλεγχο ταυτότητας (Βλ. στοιχείο Γ6.), τότε αυτό δεν θα προστατεύει από φυσική πρόσβαση. Τα κρυπτογραφημένα δεδομένα θα εξακολουθούν να μην είναι προσβάσιμα, αλλά η προστασία θα γίνεται παράκαμψη (επαναφορά προστασίας ψηφιακής υπογραφής) Το GRUB2 επιτρέπει στους cybervillains να εισάγουν τον κώδικά τους στον bootloader χωρίς να προκαλούν υποψίες (εκτός εάν ο χρήστης παρακολουθεί χειροκίνητα την κατάσταση του bootloader ή βρει τον δικό του σταθερό προσαρμοσμένο κώδικα δέσμης ενεργειών για το grub.cfg).

αλγόριθμος επίθεσης. παρείσακτος

*Εκκίνηση υπολογιστή από live usb. Καμία αλλαγή (παραβάτης) αρχεία θα ειδοποιήσουν τον πραγματικό κάτοχο του υπολογιστή σχετικά με την εισβολή στο bootloader. Αλλά μια απλή επανεγκατάσταση του GRUB2 διατηρώντας το grub.cfg (και η επακόλουθη δυνατότητα επεξεργασίας του) θα επιτρέψει σε έναν εισβολέα να επεξεργαστεί τυχόν αρχεία (σε αυτό το σενάριο, κατά τη φόρτωση του GRUB2, ο πραγματικός χρήστης δεν θα ειδοποιηθεί. Η κατάσταση είναι ίδια <0>)
* Προσαρτά ένα μη κρυπτογραφημένο διαμέρισμα, αποθηκεύει το "/mnt/boot/grub/grub.cfg".
* Επανεγκαταστήστε το bootloader (αφαίρεση του "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" στο αρχείο και το εμφανίσει προσωρινά στην οθόνη.
Ο εισβολέας δεν θα χρειαστεί να σπάσει το login / τον κωδικό πρόσβασης του υπερχρήστη GRUB2, θα χρειαστεί απλώς να αντιγράψει τις γραμμές (υπεύθυνος για τον έλεγχο ταυτότητας) "/boot/grub/grub.cfg" στο "modern.cfg" σας

set superusers="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8

Και ο κεντρικός υπολογιστής θα εξακολουθεί να έχει έλεγχο ταυτότητας υπερχρήστη GRUB2.

Φόρτωση αλυσίδας (ο bootloader φορτώνει έναν άλλο bootloader), όπως προαναφέρθηκε, δεν έχει νόημα (είναι για διαφορετικό σκοπό). Λόγω του BIOS, δεν είναι δυνατή η φόρτωση του κρυπτογραφημένου bootloader (κατά τη φόρτωση αλυσίδας, το GRUB2 επανεκκινείται > κρυπτογραφημένο GRUB2, σφάλμα!). Ωστόσο, εάν εξακολουθείτε να χρησιμοποιείτε την ιδέα της φόρτωσης αλυσίδας, μπορείτε να είστε σίγουροι ότι είναι η κρυπτογραφημένη που φορτώνεται. (δεν έχει αναβαθμιστεί) "grub.cfg" από το κρυπτογραφημένο διαμέρισμα. Και αυτό είναι επίσης μια ψεύτικη αίσθηση ασφάλειας, γιατί όλα όσα αναφέρονται στο κρυπτογραφημένο "grub.cfg" (φόρτωση μονάδας) στοίβες με μονάδες που φορτώνονται από μη κρυπτογραφημένο GRUB2.

Εάν θέλετε να το ελέγξετε, τότε εκχωρήστε/κρυπτογραφήστε ένα άλλο διαμέρισμα sdaY, αντιγράψτε το GRUB2 σε αυτό (δεν είναι δυνατή η λειτουργία grub-install σε κρυπτογραφημένο διαμέρισμα) και στο "grub.cfg" (μη κρυπτογραφημένη διαμόρφωση) αλλάξτε γραμμές όπως αυτή

menuentry 'GRUBx2' --class parrot --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-382111a2-f993-403c-aa2e-292b5eac4780' {
load_video
insmod gzio
αν [ x$grub_platform = xxen ]; μετά insmod xzio? insmod lzopio; fi
insmod part_msdos
insmod cryptodisk
insmod lux
insmod gcry_twofish
insmod gcry_twofish
insmod gcry_sha512
insmod ext2
cryptomount -u 15c47d1c4bd34e5289df77bcf60ee838
set root=’cryptouuid/15c47d1c4bd34e5289df77bcf60ee838′
κανονικό /boot/grub/grub.cfg
}

γραμμές
* insmod - φόρτωση των απαραίτητων μονάδων για εργασία με κρυπτογραφημένο δίσκο.
* GRUBx2 - το όνομα της γραμμής που εμφανίζεται στο μενού εκκίνησης του GRUB2.
* cryptomount -u 15c47d1c4bd34e5289df77bcf60ee838 - βλ. fdisk -l (sda9);
* set root - root set?
* normal /boot/grub/grub.cfg - εκτελέσιμο αρχείο διαμόρφωσης στο κρυπτογραφημένο διαμέρισμα.

Η βεβαιότητα ότι φορτώνεται το κρυπτογραφημένο "grub.cfg" είναι μια θετική απάντηση στην εισαγωγή του κωδικού πρόσβασης / ξεκλείδωμα "sdaY" κατά την επιλογή της γραμμής "GRUBx2" στο μενού GRUB.

Όταν εργάζεστε στο CLI, για να μην μπερδεύεστε (και ελέγξτε αν λειτούργησε η μεταβλητή περιβάλλοντος "set root"), δημιουργήστε κενά αρχεία δεικτών, για παράδειγμα, στο κρυπτογραφημένο διαμέρισμα "/shifr_grub", στο μη κρυπτογραφημένο διαμέρισμα "/noshifr_grub". Επικύρωση στο CLI

cat /Tab-Tab

Όπως σημειώθηκε παραπάνω, αυτό δεν θα σας βοηθήσει να κατεβάσετε κακόβουλες μονάδες, εάν αυτές οι μονάδες καταλήξουν στον υπολογιστή σας. Για παράδειγμα, ένα keylogger που μπορεί να αποθηκεύει πληκτρολογήσεις σε ένα αρχείο και να αναμιγνύεται με άλλα αρχεία στο "~/i386" μέχρι να γίνει λήψη από έναν εισβολέα με φυσική πρόσβαση στον υπολογιστή.

Ο ευκολότερος τρόπος για να ελέγξετε ότι η προστασία ψηφιακής υπογραφής είναι ενεργή (δεν επαναφέρεται), και κανείς δεν εισέβαλε στον bootloader, στο CLI πληκτρολογούμε την εντολή

list_trusted

Σε απάντηση, παίρνουμε ένα καστ του "perskey" μας ή δεν λαμβάνουμε τίποτα αν μας επιτεθούν (επίσης πρέπει να ελέγξετε το "set check_signatures=enforce").
Ένα σημαντικό μειονέκτημα ενός τέτοιου βήματος είναι η μη αυτόματη πληκτρολόγηση εντολών. Εάν προσθέσετε αυτήν την εντολή στο "grub.cfg" και υπογράψετε ψηφιακά τη διαμόρφωση, τότε η προκαταρκτική έξοδος του κλειδιού μετάδοσης στην οθόνη είναι πολύ σύντομη και μπορεί να μην έχετε χρόνο να δείτε την έξοδο όταν λάβετε την εκκίνηση του GRUB2 .
Δεν υπάρχει κανένας να παραπονεθεί ιδιαίτερα: ο προγραμματιστής στο δικό του τεκμηρίωση η ρήτρα 18.2 δηλώνει επίσημα

"Λάβετε υπόψη ότι ακόμη και με την προστασία κωδικού πρόσβασης GRUB, το ίδιο το GRUB δεν μπορεί να εμποδίσει κάποιον με φυσική πρόσβαση στο μηχάνημα να αλλάξει τη διαμόρφωση του υλικολογισμικού αυτού του μηχανήματος (π.χ. Coreboot ή BIOS) για να προκαλέσει την εκκίνηση του μηχανήματος από διαφορετική (ελεγχόμενη από τους εισβολείς) συσκευή. Το GRUB είναι στην καλύτερη περίπτωση μόνο ένας κρίκος σε μια ασφαλή αλυσίδα εκκίνησης».

Το GRUB2 είναι υπερβολικά φορτωμένο με χαρακτηριστικά που μπορούν να δώσουν μια αίσθηση ψευδούς ασφάλειας και η ανάπτυξή του έχει ήδη ξεπεράσει τη λειτουργικότητα του MS-DOS και είναι απλώς ένας bootloader. Είναι αστείο ότι το GRUB2 - "αύριο" μπορεί να γίνει λειτουργικό σύστημα και εκκινήσιμες εικονικές μηχανές GNU / Linux για αυτό.

Ένα σύντομο βίντεο σχετικά με τον τρόπο επαναφοράς της προστασίας ψηφιακής υπογραφής GRUB2 και δήλωσης της εισβολής μου σε έναν πραγματικό χρήστη (Σε τρόμαξα, αλλά αντί για αυτό που φαίνεται στο βίντεο, μπορείς να γράψεις έναν αβλαβή αυθαίρετο κωδικό/.mod).

Συμπεράσματα:

1) Αποκλεισμός κρυπτογράφησης συστήματος για Windows - πιο εύκολο να εφαρμοστεί και η προστασία με έναν κωδικό πρόσβασης είναι πιο βολική από την προστασία με πολλούς κωδικούς πρόσβασης με κρυπτογράφηση συστήματος μπλοκ GNU / Linux, για να είμαστε δίκαιοι: ο τελευταίος είναι αυτοματοποιημένος.

2) Έγραψα το άρθρο ως σχετικό, αναλυτικό απλός οδηγός για πλήρη κρυπτογράφηση δίσκου VeraCrypt/LUKS σε ένα σπίτι το μηχάνημα, το οποίο είναι μακράν το καλύτερο στο runet (IMHO). Το εγχειρίδιο έχει > 50 χαρακτήρες, επομένως δεν κάλυπτε μερικά ενδιαφέροντα κεφάλαια: σχετικά με τους κρυπτογράφους που εξαφανίζονται/μένουν στη σκιά. σχετικά με το γεγονός ότι σε διάφορα βιβλία GNU / Linux υπάρχουν λίγα / καθόλου γραπτά για την κρυπτογραφία. σχετικά με το άρθρο 51 του Συντάγματος της Ρωσικής Ομοσπονδίας· Ο αδειοδότησης/απαγόρευση κρυπτογράφηση στη Ρωσία, σχετικά με το γιατί πρέπει να κρυπτογραφήσετε το "root / boot". Το εγχειρίδιο αποδείχθηκε ήδη σημαντικό, αλλά λεπτομερές (περιγράφει ακόμα και απλά βήματα), με τη σειρά του, αυτό θα σας εξοικονομήσει πολύ χρόνο όταν μπείτε σε "πραγματική κρυπτογράφηση".

3) Πραγματοποιήθηκε κρυπτογράφηση πλήρους δίσκου στα Windows 7 64. GNU/Linux Parrot 4x; GNU/Debian 9.0/9.5.

4) Εφάρμοσε μια επιτυχημένη επίθεση στο του Φορτωτής εκκίνησης GRUB2.

5) Το σεμινάριο δημιουργήθηκε για να βοηθήσει όλους τους παρανοϊκούς στην ΚΑΚ, όπου η κρυπτογράφηση επιτρέπεται νόμιμα. Και πρώτα απ 'όλα, για όσους θέλουν να κάνουν κρυπτογράφηση πλήρους δίσκου χωρίς να καταστρέψουν τα διαμορφωμένα συστήματά τους.

6) Αναθεώρησε και ενημέρωσε το εγχειρίδιό του, το οποίο είναι σχετικό το 2020.

[G] Χρήσιμη τεκμηρίωση

  1. Οδηγός χρήσης TrueCrypt (Φεβρουάριος 2012 RU)
  2. Τεκμηρίωση VeraCrypt
  3. /usr/share/doc/cryptsetup(-run) [τοπική κοινή χρήση] (επίσημη αναλυτική τεκμηρίωση για τη ρύθμιση της κρυπτογράφησης GNU/Linux με cryptsetup)
  4. Επίσημες Συχνές Ερωτήσεις για την εγκατάσταση κρυπτογράφησης (σύντομη τεκμηρίωση για τη ρύθμιση της κρυπτογράφησης GNU/Linux με cryptsetup)
  5. Κρυπτογράφηση συσκευής LUKS (τεκμηρίωση archlinux)
  6. Λεπτομερής περιγραφή της σύνταξης cryptsetup (σελίδα εγχειριδίου αψίδας)
  7. Αναλυτική περιγραφή του crypttab (σελίδα εγχειριδίου αψίδας)
  8. Επίσημη τεκμηρίωση GRUB2.

Ετικέτες: πλήρης κρυπτογράφηση δίσκου, κρυπτογράφηση διαμερισμάτων, κρυπτογράφηση πλήρους δίσκου Linux, πλήρης κρυπτογράφηση συστήματος LUKS1.

Μόνο εγγεγραμμένοι χρήστες μπορούν να συμμετάσχουν στην έρευνα. Συνδεθείτε, Σας παρακαλούμε.

Κρυπτογραφείτε;

  • 17,1%Κρυπτογραφώ ό,τι μπορώ. είμαι παρανοϊκός.14

  • 34,2%Κρυπτογραφώ μόνο σημαντικά δεδομένα.28

  • 14,6%Άλλοτε κρυπτογραφώ, άλλοτε ξεχνάω.12

  • 34,2%Όχι, δεν κρυπτογραφώ, είναι άβολο και δαπανηρό.28

Ψήφισαν 82 χρήστες. 22 χρήστες απείχαν.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο