ΑΥΤΗ Η ΔΗΜΟΣΙΕΥΣΗ ΕΧΕΙ ΓΙΝΕΙ ΠΑΝΩ ΑΠΟ ΕΝΑ ΧΡΟΝΟ ΠΡΙΝ!
Σε αυτή τη δημοσίευση θα δούμε πως κάποιος μπορεί να προστατέψει το «Edit Menu» του GRUB, από ανεπιθύμητους και περίεργους χρήστες. Έτσι διασφαλίζει πως κανείς δεν θα μπορέσει να χρησιμοποιήσει το πλήκτρο «E» ή το «Advanced Options…» για να το παίξει hacker με πιθανό αποτέλεσμα να δημιουργήσει πρόβλημα στο λειτουργικό σύστημα.
Τι είναι το GRUB edit Mode
Στην αρχική οθόνη του GRUB μας δίνονται κάποιες επιλογές όπως το Advanced Options for Ubuntu, εδώ υπάρχει το Recovery Mode όπου μας δίνει διάφορες επιλογές ανάμεσα σε αυτές και το «Drop to Root shell prompt.
Επίσης το πλήκτρο «E», το οποίο αντιστοιχεί σε «Edit», σε περίπτωση που θέλουμε να επεξεργαστούμε κάποιο GRUB Entry για να αφαιρέσουμε ή να προσθέσουμε παραμέτρους. Το καλό είναι ότι κάθε αλλαγή που κάνουμε με αυτό το τρόπο, δηλαδή με το πλήκτρο «E», είναι προσωρινή μέχρι την επόμενη επανεκκίνηση. Το «κακό» είναι ότι μπορούμε να αποκτήσουμε root access στο λειτουργικό σύστημα κατευθείαν από αυτό το Edit Mode του GRUB.
Κλείδωμα του Edit Mode
Μπορούμε ωστόσο να κλειδώσουμε το Edit Mode, όπως και το Advanced Options for Ubuntu, με έναν κωδικό πρόσβασης ώστε να προστατέψουμε το σύστημα από τέτοιες ανεπιθύμητες ενέργειες. Πάμε να δούμε πως.
Παραγωγή Κωδικού
Πρώτα πρέπει να δημιουργήσουμε τον κωδικό και ο GRUB μας παρέχει το κατάλληλο εργαλείο γι’ αυτή τη δουλειά.
Ανοίγουμε ένα τερματικό και τρέχουμε τη παρακάτω εντολή
sudo grub-mkpasswd-pbkdf2
Θα μας προτρέψει να γράψουμε δυο φορές τον κωδικό που θέλουμε να θέσουμε και στη συνέχεια θα παραχθεί αυτός ο κωδικός κρυπτογραφημένος.
Αυτό που μας ενδιαφέρει από την παραπάνω εικόνα είναι ότι γράφεται μετά το «…your password is». Αυτό θα κάνουμε copy-paste αργότερα στο script.
Προσθήκη script
Εδώ θα δημιουργήσουμε ένα script με όνομα 01_Password μέσα στο /etc/grub.d/ με τα παρακάτω περιεχόμενα
Στο set superusers ανάμεσα στα εισαγωγικά μπορούμε να γράψουμε ότι θέλουμε. Εδώ έχω γράψει ως παράδειγμα το grubadmin, αρκεί βέβαια αυτό που θα γράψουμε να το επαναλάβουμε και στην παρακάτω γραμμή.
Προσέξτε ότι δεν υπάρχει κενό ανάμεσα στις λέξεις και το ίσον supersusers="grubadmin"
, παίζει σημασία αυτό.
Στη τελευταία γραμμή γράφουμε password_pbkdf2 το όνομα του superuser από τη παραπάνω γραμμή και μετά paste τον κρυπτογραφημένο κωδικό.
Εκτέλεση
Σώζουμε το αρχείο και του δίνουμε δικαιώματα εκτέλεσης.
Έπειτα κάνουμε μια ενημέρωση στον grub και επανεκκίνηση.
Προσοχή
Στη περίπτωση που το GRUB_HIDDEN_TIMEOUT στο /etc/default/grub είναι ενεργοποιημένο, τότε ενδεχομένως να κλειδωθεί ο GRUB εξ ολοκλήρου. Η παράμετρος αυτή εκτός του ότι θεωρείται παρωχημένη, μπορεί να δημιουργήσει και άλλα προβλήματα. Καλό είναι να την απενεργοποιήσουμε βάζοντας μια δίεση (#) μπροστά. Αυτό πρέπει να γίνει πριν τρέξουμε τη παραπάνω εντολή (sudo update-grub).
Αποτέλεσμα
Από εδώ και στο εξής, όταν θα θέλουμε είτε να εισέλθουμε στο Advanced Options… είτε να επεξεργαστούμε κάποια εισαγωγή στον GRUB με το πλήκτρο «e» , θα πρέπει να δώσουμε το όνομα χρήστη και τον κωδικό.
Το παραπάνω δοκιμάστηκε και δούλεψε σωστά σε Xubuntu 17.10
Until next time …
Thanks for reading!