Μετά από 9 χρόνια από τη δημιουργία του κλάδου 1.8.x του sudo, ανακοινώθηκε η κυκλοφορία μιας σημαντικής νέας έκδοσης του βοηθητικού προγράμματος που χρησιμοποιείται για την οργάνωση της εκτέλεσης εντολών εκ μέρους άλλων χρηστών , με τη νέα έκδοση "sudo 1.9.0" και η οποία σηματοδοτεί επίσης έναν νέο κλάδο.
Το Sudo είναι το πιο βασικό και ευρέως χρησιμοποιούμενο βοηθητικό πρόγραμμα σε λειτουργικά συστήματα τύπου Unix, όπως το Linux, το BSD ή το Mac OS X, επειδή, όπως αναφέρθηκε, επιτρέπει στους χρήστες να εκτελούν προγράμματα με τα δικαιώματα ασφαλείας ενός άλλου χρήστη (συνήθως του χρήστη root) με ασφάλεια, γίνοντας έτσι προσωρινά υπερχρήστης.
Από προεπιλογή, ο χρήστης πρέπει να κάνει έλεγχο ταυτότητας με τον κωδικό πρόσβασής του κατά την εκτέλεση της εντολής sudo. Μόλις ο χρήστης ολοκληρώσει την έλεγχο ταυτότητας και εφόσον το αρχείο ρυθμίσεων /etc/sudoers επιτρέπει στον χρήστη να έχει πρόσβαση στην απαιτούμενη εντολή, το σύστημα την εκτελεί.
Υπάρχει μια επιλογή για να ενεργοποιήσετε την παράμετρο NOPASSWD για να αποφύγετε την εισαγωγή του κωδικού πρόσβασης χρήστη κατά την εκτέλεση της εντολής. Το αρχείο ρυθμίσεων /etc/sudoers καθορίζει ποιοι χρήστες μπορούν να εκτελέσουν ποιες εντολές εκ μέρους ποιου άλλου χρήστη.
Επειδή το sudo είναι πολύ αυστηρό σχετικά με τη μορφή αυτού του αρχείου και οποιοδήποτε λάθος θα μπορούσε να προκαλέσει σοβαρά προβλήματα, υπάρχει το βοηθητικό πρόγραμμα visudo. Αυτή η επιλογή χρησιμοποιείται για να ελέγξει ότι το αρχείο /etc/sudoers δεν χρησιμοποιείται από άλλη περίοδο λειτουργίας του χρήστη root, αποφεύγοντας έτσι την πολλαπλή επεξεργασία με πιθανή καταστροφή του αρχείου.
Κύρια νέα χαρακτηριστικά του sudo 1.9.0
Αυτή η νέα έκδοση υπογραμμίζει την εργασία που έχει γίνει για την παροχή της διεργασίας παρασκηνίου " sudo_logsrvd " στο σύστημα , η οποία έχει σχεδιαστεί για κεντρική καταγραφή άλλων συστημάτων . Χρησιμοποιώντας το `sudo` με την επιλογή ` --enable-openssl` , τα δεδομένα μεταδίδονται μέσω ενός κρυπτογραφημένου καναλιού επικοινωνίας (TLS).
Η καταγραφή ρυθμίζεται χρησιμοποιώντας την επιλογή log_servers στο sudoers και για να απενεργοποιηθεί η υποστήριξη για τον νέο μηχανισμό αποστολής αρχείων καταγραφής, προστέθηκαν οι επιλογές " --disable-log-server " και " --disable-log-client".
Επιπλέον, έχει προστεθεί ένας νέος τύπος πρόσθετου "ελέγχου" , το οποίο στέλνει μηνύματα σχετικά με επιτυχημένες και ανεπιτυχείς κλήσεις, καθώς και τυχόν σφάλματα που προκύπτουν. Έχει επίσης προστεθεί ένας νέος τύπος πρόσθετου που σας επιτρέπει να συνδέσετε τους δικούς σας ελεγκτές σύνδεσης που δεν βασίζονται στην τυπική λειτουργικότητα. Για παράδειγμα, ένας ελεγκτής για την καταγραφή αρχείων καταγραφής σε μορφή JSON υλοποιείται ως πρόσθετο.
Έχει επίσης προστεθεί ένας νέος τύπος πρόσθετου " έγκρισης " , το οποίο εκτελεί πρόσθετους ελέγχους μετά από έναν επιτυχημένο βασικό έλεγχο εξουσιοδότησης βάσει κανόνων στο sudoers. Πολλαπλά πρόσθετα αυτού του τύπου μπορούν να καθοριστούν στη διαμόρφωση, αλλά η επιβεβαίωση της λειτουργίας εκδίδεται μόνο όταν εγκριθεί από όλα τα πρόσθετα που αναφέρονται στη διαμόρφωση.
Στο `sudo` και στο `sudo_logsrvd` , δημιουργείται ένα επιπλέον αρχείο καταγραφής σε μορφή JSON, το οποίο αντικατοπτρίζει πληροφορίες σχετικά με όλες τις παραμέτρους των εντολών που εκτελούνται, συμπεριλαμβανομένου του ονόματος κεντρικού υπολογιστή. Αυτό το αρχείο καταγραφής χρησιμοποιείται από το βοηθητικό πρόγραμμα `sudoreplay` , το οποίο σας επιτρέπει να φιλτράρετε εντολές κατά όνομα κεντρικού υπολογιστή.
Η λίστα ορισμάτων γραμμής εντολών που διαβιβάζεται μέσω της μεταβλητής περιβάλλοντος SUDO_COMMAND έχει πλέον περικοπεί σε 4096 χαρακτήρες.
Άλλες αξιοσημείωτες αλλαγές από την ανακοίνωση περιλαμβάνουν:
- Η εντολή sudo -S εκτυπώνει τώρα όλα τα αιτήματα στο stderr, χωρίς πρόσβαση στη συσκευή ελέγχου τερματικού.
- Για να ελέγξετε την αλληλεπίδραση με τον διακομιστή ή να στείλετε υπάρχοντα αρχεία καταγραφής, προτείνεται το βοηθητικό πρόγραμμα sudo_sendlog.
- Προστέθηκε η δυνατότητα ανάπτυξης προσθηκών για sudo στην Python, η οποία είναι ενεργοποιημένη κατά το χρόνο μεταγλώττισης με το "--enable-python".
- En sudoers, αντί για Cmnd_Alias, Cmd_Alias ισχύει και τώρα.
- Προστέθηκαν νέες ρυθμίσεις pam_ruser και pam_rhost για να ενεργοποιήσετε/απενεργοποιήσετε τη ρύθμιση των τιμών ονόματος χρήστη και κεντρικού υπολογιστή κατά τη ρύθμιση μιας περιόδου σύνδεσης μέσω PAM.
- Είναι δυνατός ο καθορισμός περισσότερων του ενός κατακερματισμού SHA-2 σε μια γραμμή εντολών διαχωρισμένη με κόμματα. Ο κατακερματισμός SHA-2 μπορεί επίσης να χρησιμοποιηθεί σε sudoers σε συνδυασμό με τη λέξη-κλειδί "ALL" για τον καθορισμό εντολών που μπορούν να εκτελεστούν μόνο όταν ο κατακερματισμός ταιριάζει.