Linux που αλλάζει δικαιώματα φακέλου. Ειδικά επίπεδα πρόσβασης. Αριθμητική αναπαράσταση δικαιωμάτων

Δημοσιεύθηκε 4 Φεβρουαρίου 2008 - 20:17 από AracooL

Βασικά

Από την έναρξή του, το UNIX έχει τοποθετηθεί ως λειτουργικό σύστημα πολλών χρηστών. Το οποίο συνεπάγεται τη δημιουργία μηχανισμών προστασίας και διασφάλισης της εξουσιοδοτημένης πρόσβασης στα δεδομένα. Έτσι γεννήθηκε το πρότυπο DAC (Discretionary Access Control). Σύμφωνα με την DAC, ο ίδιος ο χρήστης αποφασίζει ποια δικαιώματα πρόσβασης αντιστοιχούν στα αρχεία. Αλλά από την άποψη της ανάπτυξης λειτουργικού συστήματος, αυτό το μοντέλο αποδείχθηκε μη ικανοποιητικό. Εξαιτίας αυτού, έχουν εμφανιστεί νέα μοντέλα για την οργάνωση της πρόσβασης σε αρχεία, όπως MAC (Υποχρεωτικός Έλεγχος Πρόσβασης), ACL (Λίστα Ελέγχου Πρόσβασης) και οι υλοποιήσεις τους, για παράδειγμα SELinux, TrustedBSD, Trusted Solaris.

Αριθμητική αναπαράσταση δικαιωμάτων

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

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

Κάτοχος αρχείου

Συνήθως, ο κάτοχος ενός αρχείου είναι ο χρήστης που δημιούργησε το αρχείο. Σε τύπου UNIX λειτουργικά συστήματα, όλα τα αρχεία έχουν δύο τύπους κατόχων: χρήστη (χρήστης) και ομάδα (ομάδα). Οι ιδιοκτήτες δεν πρέπει να είναι ίδιοι μεταξύ τους, δηλ. Ο χρήστης δεν πρέπει να είναι μέλος της ομάδας. Αλλά στην πραγματικότητα, σχεδόν πάντα, ο χρήστης ανήκει στην ομάδα που κατέχει το αρχείο. Εάν ο χρήστης δεν είναι ο κάτοχος του αρχείου και δεν ανήκει στην ομάδα που κατέχει το αρχείο, τότε θεωρείται «αριστερός» (άλλοι). Σε κάθε χρήστη του συστήματος εκχωρείται ένας αριθμός UID (αριθμός αναγνώρισης χρήστη), με τη βοήθεια του οποίου το σύστημα προσδιορίζει μοναδικά τον χρήστη. χρήστης rootέχει UID = 0, και το μέγιστο πιθανός αριθμόςανήκει στον χρήστη "κανένας" (για το Ubuntu αυτό είναι 65534, για το NetBSD - 32767). Επομένως, τα δικαιώματα δεν συνδέονται με το όνομα χρήστη, αλλά με το UID του. Ομοίως, κάθε ομάδα έχει ένα αντίστοιχο GID (αριθμός αναγνώρισης ομάδας). Για να εμφανίσετε τους κατόχους αρχείων στην κονσόλα, χρησιμοποιήστε την εντολή ls με το διακόπτη -l:

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

Πρώτα απ 'όλα, ας δούμε τα δικαιώματα του αρχείου παραδείγματος. Θα δείτε μια λίστα με χαρακτηριστικά αρχείου. Περιλαμβάνει τον τύπο αρχείου, το μέγεθος αρχείου κ.λπ. και μια γραμμή όπως η παρακάτω, που είναι το σημείο ενδιαφέροντός μας. Το πεδίο πρόσβασης περιέχει οκταδικός αριθμόςκαι η αναγνώσιμη από τον άνθρωπο παρουσίασή του. Είναι εξαιρετικά σημαντικό να γνωρίζετε τι σημαίνει ο αριθμός άδειας. Αποτελείται από τέσσερα ψηφία: 0 έως Θα παραλείψουμε το πρώτο προς το παρόν και θα επικεντρωθούμε στα τρία τελευταία, καθώς χρησιμοποιούνται συχνότερα σε κάθε σύστημα.

$ ls -l razem 1822 drwxr-xr-x 3 adam adam 120 2007-09-03 16:00 Desktop -rw-r–r– 1 adam adam 400 2007-08-22 18:49 prog_09.py

Η τρίτη και η τέταρτη στήλη υποδεικνύουν την ιδιοκτησία χρήστη και ομάδας του αρχείου.

chgrp

Αυτή η εντολή σάς επιτρέπει να αλλάξετε την ομάδα στην οποία ανήκει ένα αρχείο. Εάν αυτή η εντολή χρησιμοποιείται από έναν απλό χρήστη, τότε, πρώτον, πρέπει να είναι ο κάτοχος του αρχείου και δεύτερον, πρέπει να είναι μέλος της ομάδας στην οποία θέλει να δώσει δικαιώματα. Ενδιαφέρον γεγονός, ο χρήστης δεν πρέπει να είναι μέλος της ομάδας στην οποία ανήκει το αρχείο. Η σύνταξη είναι η εξής: chgrp αρχεία νέας ομάδας, μπορούν να χρησιμοποιηθούν είτε το όνομα της ομάδας είτε το GID της ομάδας.

Τα περιεχόμενα των καταλόγων είναι μεγαλύτερα από τα ονόματα των αρχείων, των υποκαταλόγων και άλλων αντικειμένων του συστήματος αρχείων που είναι αποθηκευμένα σε κάθε κατάλογο. Περιλαμβάνει επίσης άλλες μετα-πληροφορίες, όπως εάν το αντικείμενο του συστήματος αρχείων είναι αρχείο ή κατάλογος, τα δικαιώματα που σχετίζονται με το αντικείμενο και ούτω καθεξής. 2 - άδεια εγγραφής. Στους καταλόγους, επιτρέπει σε ένα θέμα να αλλάξει ό,τι έχει εγγραφεί στον κατάλογο. Αυτό σημαίνει ότι μπορείτε να δημιουργήσετε αρχεία σε έναν κατάλογο ή, ισοδύναμα, να μετακινήσετε αρχεία σε έναν κατάλογο, να διαγράψετε αρχεία από έναν κατάλογο ή, ισοδύναμα, να μετακινήσετε αρχεία από έναν κατάλογο και επειδή ο κατάλογος έχει μια καταχώρηση περιεχομένου καταλόγου για να αλλάξετε τα δικαιώματα κάθε αρχείο ή υποκατάλογος που περιέχεται στον κατάλογο. 1 - εκτελέστε την ανάλυση. Οποιοδήποτε αρχείο μπορεί να επισημανθεί ως εκτελέσιμο αρχείο; όταν το περιεχόμενο αποτυγχάνει να εκτελεστεί, αναφέρεται ένα μήνυμα σφάλματος κατά το χρόνο εκτέλεσης. Ομοίως, οποιοδήποτε αρχείο μπορεί να έχει δικαιώματα απομακρυσμένης εκτέλεσης με εκτελέσιμο περιεχόμενο, αλλά χωρίς άδεια εκτέλεσης δεν μπορεί να εκτελεστεί. Στην περίπτωση των καταλόγων, η άδεια εκτέλεσης επιτρέπει στο υποκείμενο να διασχίσει τον κατάλογο σε υποκαταλόγους. Σημειώστε ότι η διέλευση καταλόγου δεν απαιτεί άδεια ανάγνωσης. Σημείωση σχετικά με την επεξεργασία διαδρομής παρακάτω.

  • Το υποκείμενο επιτρέπεται να διαβάσει τα περιεχόμενα ενός αρχείου ή να παραθέσει τα περιεχόμενα ενός καταλόγου.
  • Το θέμα μπορεί να αλλάξει τα περιεχόμενα του αρχείου.
Επομένως, ο αριθμός 5, για παράδειγμα, θα σημαίνει: άδεια ανάγνωσης και εκτέλεσης, αλλά όχι εγγραφής.

$ ls -l -rw-r–r– 1 adam root 0 2007-09-03 15:33 file.txt $ chgrp χρήστες file.txt $ ls -l -rw-r–r– 1 adam χρήστες 0 2007-09 -03 15:33 file.txt

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

τσόουν

Αυτή η εντολή χρησιμοποιείται για την αλλαγή τόσο του κατόχου όσο και της ομάδας. Στα περισσότερα συστήματα, μόνο το root είναι εξουσιοδοτημένο να χρησιμοποιεί αυτήν την εντολή. Η εντολή έχει την ακόλουθη σύνταξη: chown new user:new group files. Οπως λέμε εντολή chgrp, μπορείτε να χρησιμοποιήσετε ονόματα χρηστών και ομάδων, καθώς και το GID και το UID τους. Παρεμπιπτόντως, η εντολή δεν ελέγχει την ύπαρξη χρηστών και ομάδων, οπότε μπορείτε να ορίσετε ανύπαρκτους.

Οι έννοιες των αριθμών καθορίζονται ανάλογα: τα δικαιώματα του ιδιοκτήτη, της ομάδας και άλλων. Αυτό το αρχείο έχει το 0 ως το τρίτο σημαντική προσωπικότητα, επομένως οι χρήστες που δεν είναι root και στην ομάδα "σκιώδης" ενδέχεται να μην μπορούν καν να διαβάσουν το αρχείο. Μερικοί εργαλεία συστήματοςΚαι προγράμματα γραφικώναναγνωρίζουν μια ιδέα ευανάγνωστο από τον άνθρωποφόρμες - μια ακολουθία 10 διαδοχικών χαρακτήρων. Για να δείτε ένα παράδειγμα, εκτελέστε την ακόλουθη εντολή.

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

$ ls -l -rw-r–r– 1 χρήστες adam 0 03-09-2007 15:33 file.txt root@laptop:# chown root:root file.txt adam@laptop:~$ ls -l -rw- r–r– 1 root root 0 2007-09-03 15:33 file.txt

Αλλαγή ομάδας και χρήστη.

Root@laptop:# chown zoidberg file.txt

Αλλαγή κατόχου σε χρήστη zoidberg, η ομάδα παραμένει αμετάβλητη.

#chown:futurama file.txt

Αλλαγή ομάδας σε futurama, ο ιδιοκτήτης αμετάβλητος.

Δικαιώματα πρόσβασης

Σε οποιαδήποτε Σύστημα παρόμοιο με το UNIXΥπάρχουν 3 επίπεδα πρόσβασης στα αρχεία: ανάγνωση, ανάγνωση (r), εγγραφή, εγγραφή (w) και εκτέλεση, εκτέλεση (x).

Μνημονικά δικαιώματα πρόσβασης

Έτσι, για παράδειγμα, το 640 μεταφράζεται σε. Η τελευταία στήλη είναι το σημάδι. Για πρόσβαση σε οποιαδήποτε διαδρομή στο σύστημα αρχείων, ο χρήστης πρέπει τουλάχιστον να έχει το δικαίωμα σε όλους τους γονικούς καταλόγους του. Αυτός ο κανόνας ισχύει για οποιοδήποτε σύστημα αρχείων.

Προεπιλογή για νέα αρχεία και καταλόγους

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

Αξίζει να σημειωθεί ότι όταν εξετάζουμε τα δικαιώματα καταλόγου, πρέπει να θυμόμαστε ότι ένας κατάλογος είναι επίσης ένα αρχείο που περιέχει μια λίστα αρχείων, π.χ. τα ονόματά τους και τη θέση τους στο δίσκο. Για να δείτε τα περιεχόμενα του καταλόγου, απλώς χρησιμοποιήστε την εντολή ls (χωρίς διακόπτες), για αυτό χρειάζεστε μόνο δικαιώματα ανάγνωσης, αλλά για να εκτελέσετε το ls -l χρειάζεστε δικαιώματα εγγραφής και εκτέλεσης. Για να συνοψίσουμε τα παραπάνω, για να εκτελέσετε οποιαδήποτε λειτουργία σε έναν κατάλογο (εκτός από την απλή προβολή των περιεχομένων) χρειάζεστε δικαιώματα εκτέλεσης, επομένως η κατοχή αυτών των δικαιωμάτων σάς επιτρέπει να έχετε πρόσβαση στα περιεχόμενα του καταλόγου χρησιμοποιώντας ονόματα αρχείων.

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

Ενότητα 3: Αλλαγή δικαιωμάτων αρχείων

Πρώτα απ 'όλα, δημιουργήστε ένα αρχείο για σκοπούς επίδειξης. Μπορείτε απλώς να αντιγράψετε και να επικολλήσετε και να δείτε πώς λειτουργεί. Έχουν αλλάξει τα δικαιώματα του αρχείου; Τώρα συνδεθείτε στο demo, ανοίξτε το δοκιμαστικό αρχείο και πληκτρολογήστε κάτι σε αυτό. Τώρα μπορείτε να το ελέγξετε με διαφορετικές αναλύσεις.

Drw-r–r– 2 adam adam 96 2007-09-05 18:04 blob drwxr-xr-x 2 adam adam 176 2007-09-04 15:57 tapety -rw-r–r– 1 adam adam 125 200 08-29 18:31 fme.py

Η λίστα δικαιωμάτων είναι διαθέσιμη χρησιμοποιώντας την εντολή ls με το διακόπτη -l. Στην πρώτη στήλη, ο πρώτος χαρακτήρας υποδεικνύει τον τύπο αρχείου και οι υπόλοιποι 9 υποδεικνύουν τα δικαιώματα. Τα πρώτα 3 από τα 9 εμφανίζουν δικαιώματα χρήστη, τα επόμενα 3 είναι δικαιώματα ομάδας και τα υπόλοιπα είναι για "αριστερά".

Στο παράδειγμα που δίνεται, το blob είναι ένας κατάλογος, ο χρήστης έχει δικαιώματα εγγραφής και ανάγνωσης αλλά δεν εκτελεί (rw-), ομάδα και άλλοι έχουν μόνο δικαιώματα ανάγνωσης. Το Tapety είναι επίσης ένας κατάλογος και ο χρήστης έχει δικαιώματα για τα πάντα (rwx) και η ομάδα και άλλοι έχουν δικαιώματα ανάγνωσης και εκτέλεσης (r-x). Το Fme.py είναι ένα αρχείο.

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

Περίπτωση 2: Λογισμικό και αρχεία δεδομένων για το τμήμα σας στην εργασία

Ερώτηση: Πώς μπορώ να ορίσω τα δικαιώματα καταλόγου ώστε οι άλλοι χρήστες να μπορούν να βλέπουν τα αρχεία σας και τα περιεχόμενά τους; Ορίστε τον κατάλογο σε 755 και όλα τα αρχεία κάτω από αυτόν σε 644. Σημείωση παρακάτω: ~ σημαίνει τον αρχικό σας κατάλογο. . Θέλετε άλλα άτομα στο τμήμα σας να μπορούν να εκτελούν το παρεχόμενο λογισμικό και να γράφουν αρχεία δεδομένων.

chmod

Ας δούμε την εντολή αλλαγής δικαιωμάτων πρόσβασης:

Αρχεία δικαιωμάτων πρόσβασης Chmod

Πριν εκτελέσουμε την εντολή, πρέπει να επιλέξουμε την κλάση χρήστη για την οποία θέλουμε να αλλάξουμε τα δικαιώματα (ugo, User, Group, Others). Υπάρχουν επίσης πρόσθετη ομάδαα (όλα, όλα). Στη συνέχεια επιλέξτε τον τελεστή: + (δώστε δικαιώματα), - (αφαίρεση δικαιωμάτων) και = (εκχώρηση δικαιωμάτων). Και στο τέλος, επιλέξτε τα ίδια τα δικαιώματα (rwx, r-x, κ.λπ.).

Ταυτόχρονα, θα πρέπει να επιτρέπεται σε άλλα άτομα εκτός της ομάδας να εκτελούν το λογισμικό αλλά να μην αλλάζουν τα δεδομένα. Ερώτηση. Πώς μπορώ να επιτρέψω την πρόσβαση ομάδας σε ένα αρχείο και την πρόσβαση ανάγνωσης/εγγραφής σε έναν άλλο κατάλογο για την ίδια ομάδα, ενώ αρνούμαι την παγκόσμια πρόσβαση;

Ειδικά επίπεδα πρόσβασης

Ερώτηση: Πώς μπορώ να προστατεύσω αρχεία που πρέπει να τηρούνται μυστικά; Ωστόσο, να το θυμάστε Διαχειριστής συστήματοςμπορεί να έχει πρόσβαση σε αυτά ανεξάρτητα καθιερωμένες άδειεςανά αρχείο. Επομένως, εκτός από τον αποκλεισμό αδειών αρχείων, συνιστάται ανεπιφύλακτα να κρυπτογραφείτε αρχεία χρησιμοποιώντας ένα ισχυρό λογισμικόγια κρυπτογράφηση.

$ chmod u+x skrypt.sh

Ο χρήστης (u) έχει (+) άδεια να εκτελέσει (x) το αρχείο skrypt.sh.

$ chmod go-r report.odt

Η ομάδα και οι άλλοι (go) στερούνται (-) το δικαίωμα ανάγνωσης (r).

$ chmod a=w finance.ods

Σε όλα τα (α) εκχωρούνται (=) δικαιώματα εγγραφής (w) και τα υπόλοιπα δικαιώματα διαγράφονται (=).

$ chmod u+rwx,g+rwx,o+x trurl.py

Ο χρήστης έχει δικαιώματα για τα πάντα, η ομάδα έχει επίσης το δικαίωμα να εκτελέσει και στους υπόλοιπους το δικαίωμα να εκτελέσουν.

Ερώτηση: Πώς να απενεργοποιήσετε τα ειδικά bit; Να διαγράψω ειδικά κομμάτιααπό το αρχείο μετά την εγκατάστασή τους, είναι βολικό να χρησιμοποιείτε συμβολικά ονόματα. Μπορείτε να δώσετε στους χρήστες της ομάδας σας πρόσβαση στα αρχεία σας, να τα εκθέσετε στον κόσμο ή να τα χρησιμοποιήσετε μόνο για εσάς. Ωστόσο, υπάρχουν περιπτώσεις όπου αυτό το μοντέλο ελέγχου πρόσβασης είναι ανεπαρκές. Ας υποθέσουμε ότι είστε στο μεγάλο σύστημακαι μαζί με αρκετές δεκάδες χρήστες είστε μέλη της ομάδας «χρήστες». Τώρα θέλετε ορισμένα από τα αρχεία σας να είναι προσβάσιμα μόνο από ένα από αυτά, έτσι ώστε άλλα να μην μπορούν να τα διαβάσουν.

Αριθμητική αναπαράσταση δικαιωμάτων

Για να διευκολύνετε τη σύνταξη της εντολής chmod, μπορείτε να χρησιμοποιήσετε μια αριθμητική αναπαράσταση των δικαιωμάτων. Κάθε τύπος πρόσβασης έχει μια αριθμητική αναπαράσταση, γι' αυτό χρησιμοποιούμε δυαδική αναπαράσταση. Το ένα σημαίνει ότι υπάρχει δικαίωμα, το 0 σημαίνει ότι δεν υπάρχει δικαίωμα. Έτσι, η εγγραφή του κανόνα rwx r-x r-x σε δυαδική μορφή θα μοιάζει με αυτό: 111 101 101. Αλλά η δυαδική αναπαράσταση δεν είναι πολύ βολική, επομένως χρησιμοποιούν τη δεκαδική αναπαράσταση. 111 ίντσες δυαδικό σύστημαείναι το 7 στο δεκαδικό και το 101 είναι το 5, άρα το 111 101 101 είναι 755. Έτσι παίρνουμε:

Μπορείτε να χρησιμοποιήσετε προσωπικά λογαριασμόςγια προσωπικές ομάδες χρηστών· κοινή απόφασηαυτό το πρόβλημα. Οι λίστες ελέγχου πρόσβασης είναι ένα προηγμένο μέσο για τον καθορισμό δικαιωμάτων πρόσβασης σε αρχεία και αντικείμενα. Σας επιτρέπουν να ορίζετε τα δικαιώματα αρχείων με πιο λεπτομερή τρόπο, δίνοντας σε κάθε δεδομένο χρήστη ή ομάδα διαφορετικά προνόμια. Για παράδειγμα, μπορείτε να μοιραστείτε ένα αρχείο μόνο με ένα συγκεκριμένο χρήστη, σε όποια ομάδα κι αν βρίσκονται. Πώς να χρησιμοποιήσετε αυτήν την ισχυρή νέα δυνατότητα;

Μπορείτε να το εγκαταστήσετε απελευθερώνοντάς το. Παράδειγμα εντολής. Θα πρέπει να δείχνει, μεταξύ άλλων, μια γραμμή όπως αυτή. Αυτό είναι, για παράδειγμα, χρήσιμο όταν έχετε χρήστες που συνεργάζονται για την ανάπτυξη ιστοτόπων. Να περνάτε καλά και σας ευχαριστώ που μείνατε μαζί μου. Αυτά τα δικαιώματα σάς επιτρέπουν να επιλέξετε με ακρίβεια ποιος θα έχει πρόσβαση στα αρχεία και τους φακέλους σας, παρέχοντας συνολικά βελτιωμένη ασφάλεια.

  • -w- 2
  • - wx 3
  • r-x 5
  • rw-6
  • rwx 7

Έτσι μπορείτε να το γράψετε ως

$ chmod u=rwx,g=rwx,o=x trurl.py

$ chmod 771 trurl.py

Ειδικά επίπεδα πρόσβασης

Ας δούμε πολλά ειδικά επίπεδα πρόσβασης που επεκτείνουν τα τυπικά.

Χ

Αυτή η επιλογή προσθέτει δικαιώματα εκτέλεσης στις επιλεγμένες κλάσεις εάν και μόνο εάν και άλλες κλάσεις έχουν δικαιώματα εκτέλεσης:

Τι σημαίνει λοιπόν όλη αυτή η έξοδος;

Είτε έτσι είτε αλλιώς, μην εξαφανιστείτε - είναι πιο εύκολο από όσο νομίζετε! Ας ξεκινήσουμε από την αρχή αναλύοντας τις πληροφορίες στο προηγούμενο στιγμιότυπο οθόνης. Στη συνέχεια στην πράσινη στήλη θα βρούμε την ώρα και την ημερομηνία δημιουργίας. Λάβετε υπόψη ότι η στήλη ημερομηνίας και ώρας δεν εμφανίζεται πάντα με τη μορφή που εμφανίζεται. Εάν το αρχείο ή ο κατάλογος στον οποίο αναφέρεται δημιουργήθηκε σε έτος διαφορετικό από το τρέχον, θα εμφανίζει μόνο την ημερομηνία, τον μήνα και το έτος, απορρίπτοντας τον χρόνο δημιουργίας.

Μικρό, αλλά σημαντική σημείωσηκατά την προβολή αρχείων και φακέλων! Τέλος, η ημερομηνία τροποποίησης θα αλλάξει καθώς αλλάζει το αρχείο. Αυτός είναι ένας τρόπος για να ελέγξετε εάν τα αρχεία έχουν τροποποιηθεί ή τροποποιηθεί. Η επόμενη στήλη περιέχει το μέγεθος του αρχείου σε byte - και πάλι τίποτα το ιδιαίτερο εδώ.

$ ls -l -rwx-- 1 χρήστες adam 14 2007-09-10 21:48 skrypt.sh drwx-- 1 χρήστες adam 14 2007-09-10 21:48 tapety -rw--- 1 χρήστες root 3665 2007- 09-17 17:23 wynik.txt $ chmod go+X * $ ls -l -rwxr-xr-x 1 adam χρήστες 14 2007-09-10 21:48 skrypt.sh drwxr-xr-x 1 adam χρήστες 14 2007 -09-10 21:48 tapety -rw-r–r– 1 adam users 3665 2007-09-17 17:23 wynik.txt

Sticky Bit

Εάν αυτός ο τύπος εγκατασταθεί σε ένα εκτελέσιμο αρχείο, τα αποτελέσματα της εργασίας του θα αποθηκευτούν σε μνήμη τυχαίας προσπέλασηςακόμα και μετά την ολοκλήρωση του προγράμματος. Αυτή η δυνατότητα χρησιμοποιείται σπάνια αυτές τις μέρες, αλλά ιστορικά γινόταν για να μειωθεί το κόστος εκτέλεσης προγραμμάτων, σήμερα υπάρχουν πιο ισχυρά μέσα προσωρινής αποθήκευσης και οικονομική κατανομή της μνήμης μεταξύ των διεργασιών. Εάν βάλετε αυτήν την επιλογή σε έναν κατάλογο, τότε θα επιτρέπεται σε όλους να δημιουργούν περιεχόμενο σε αυτόν, αλλά μόνο ο κάτοχος και ο root θα έχουν τα δικαιώματα διαγραφής.

Η επόμενη στήλη δείχνει τα δικαιώματα. Ο ιδιοκτήτης μπορεί να ανήκει σε ορισμένη ομάδα, οπότε αυτό το αρχείο συσχετίζεται επίσης με την ομάδα του χρήστη. Μετά τα δικαιώματα υπάρχει μια στήλη με μπλε περίγραμμα στη λίστα. Κάθε όνομα αρχείου σε έναν κατάλογο είναι ένας σύνδεσμος προς ένα συγκεκριμένο inode. Οι σύνδεσμοι σάς επιτρέπουν να καθορίσετε περισσότερα από ένα ονόματα αρχείων.

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

Drwxrwxrwt 10 root root 464 2007-09-20 12:45 tmp

Αυτή η δυνατότητα χρησιμοποιείται συχνά για τον κατάλογο /tmp. Όπως υποδηλώνει το όνομα, αυτός ο κατάλογος χρησιμοποιείται ως προσωρινός κατάλογος.

Μπορείτε να ορίσετε το sticky bit με την εντολή chmod:

# chmod u+t test/ # ls -l drwxrwxrwt 2 χρήστες adam 48 2007-09-20 15:28 δοκιμή

ή χρησιμοποιώντας αριθμητική σημείωση

# chmod 1000 τεστ/

setuid

Εάν ορίσετε αυτήν τη λειτουργία σε ένα εκτελέσιμο αρχείο, τότε όλοι θα μπορούν να εκτελέσουν το πρόγραμμα για λογαριασμό του κατόχου. Για παράδειγμα, το πρόγραμμα ping ανήκει στο root (καθώς μόνο το root έχει το δικαίωμα να δημιουργεί υποδοχές, κάτι που κάνει αυτό το πρόγραμμα), αλλά επειδή έχει αυτήν τη λειτουργία, όλοι οι άλλοι μπορούν να χρησιμοποιήσουν αυτό το πρόγραμμα.

Η στήλη 2 αναφέρεται στα δικαιώματα χρήστη. Αυτός είναι ο κάτοχος του αρχείου, του καταλόγου ή του συνδέσμου και αυτοί οι τρεις χαρακτήρες καθορίζουν τι μπορεί να κάνει ο κάτοχος με αυτό. Άρα υπάρχουν 3 πιθανή ιδιότητα, που αποτελούν τα δικαιώματα του αρχείου. Ας δούμε ένα άλλο παράδειγμα.

Καταλήξαμε λοιπόν στο συμπέρασμα ότι ο Ντέιβιντ έχει πλήρης πρόσβαση. Επίσης, δεν μπορούν να διαγράψουν κανένα αρχείο ή να κάνουν αλλαγές στα περιεχόμενα του καταλόγου. Πρέπει να διαβάσετε και να εκτελέσετε για να εισέλθετε στον κατάλογο και να καταχωρίσετε τα περιεχόμενά του. Τέλος, όλοι οι άλλοι μπορούν επίσης να διαβάσουν τον κατάλογο, αλλά δεν μπορούν να τον εισαγάγουν λόγω έλλειψης άδειας εκτέλεσης.

$ ls -l /usr/bin/ | grep sudo -rwsr-xr-x 1 root root 91508 2006-10-09 13:37 sudo # chmod u+s program # chmod 4000 program

setgid

Εντελώς παρόμοιο με το setuid, μόνο για γκρουπ.

# chmod g+s test/ # chmod 2000 test/ # ls -l drwxrwsrwt 2 adam adam 48 2007-09-20 15:28 test

ανακαλύπτω

Η εντολή unmask χρησιμοποιείται για τον ορισμό προεπιλεγμένων δικαιωμάτων αρχείων για αρχεία που δημιουργήθηκαν πρόσφατα. Σε παγκόσμιο επίπεδο, όλα τα νέα αρχεία έχουν προεπιλεγμένα δικαιώματα 666. Χρησιμοποιώντας αυτήν την εντολή, περνάμε εκείνες τις επιλογές που ΔΕΝ θα υπάρχουν σε νέα αρχεία. Εκείνοι. αν περάσουμε την παράμετρο 0022, τότε τα προεπιλεγμένα δικαιώματα θα είναι 644.

Αν απλά χρήστης των Windows, τότε πιθανότατα δεν έχετε καν ακούσει τι είναι. Αλλά ακόμα κι αν είστε νέος στο Linux, τότε πιθανότατα θα βρεθείτε αντιμέτωποι με το γεγονός ότι έπρεπε να αντιμετωπίσετε αυτήν την ιδέα. Και πιθανότατα έχετε μια απλή ερώτηση: σε ένα αρχείο ή έναν φάκελο;

Αυτό φυσικά μπορεί να γίνει μέσω διαχείριση αρχείων, εάν είναι ένα αρχείο ή ένας φάκελος. Αλλά όταν πρέπει να αλλάξετε τα δικαιώματα πρόσβασης σε εκατοντάδες ή και χιλιάδες αρχεία, θα είναι δύσκολο να το κάνετε με μη αυτόματο τρόπο. Αλλά εδώ το τερματικό και ένα ειδικό εντολή chmod. Πώς να αλλάξετε τα δικαιώματα πρόσβασης χρησιμοποιώντας αυτό το πρόγραμμα;

Η εντολή chmod χρησιμοποιείται για την αλλαγή των χαρακτηριστικών ενός αρχείου ή φακέλου (το όνομά του προέρχεται από τον όρο mode, ο οποίος μερικές φορές χρησιμοποιείται για να ορίσει ένα σύνολο χαρακτηριστικών) εάν είστε ο κάτοχος του αρχείου ή του φακέλου. Για να επιτρέψετε στον εαυτό σας να διαβάσει και να γράψει το αρχείο και σε όλους τους άλλους να το διαβάσουν, πρέπει να ορίσετε την τιμή στο 644 ως εξής:

Όνομα αρχείου Chmod 644

Εάν δεν θέλετε να υπολογίσετε την οκταδική τιμή, τα καλά νέα είναι ότι μπορείτε επίσης να χρησιμοποιήσετε τους παρακάτω συντομογραφικούς συμβολισμούς:

U - χρήστης (κάτοχος) g - ομάδα o - άλλοι (όχι u, όχι g) a - όλοι οι χρήστες +/-r - προσθήκη/αφαίρεση άδειας ανάγνωσης +/-w - προσθήκη/αφαίρεση άδειας εγγραφής +/-x - προσθήκη/ αφαιρέστε την άδεια εκτέλεσης

Οι πρώτες τέσσερις τιμές καθορίζουν σε ποιον τύπο χρήστη (Κάτοχος, Ομάδα, Άλλος ή Όλοι οι χρήστες) θα εφαρμοστεί η αλλαγή άδειας, με προεπιλογή Όλοι οι χρήστες. Οι τρεις τελευταίοι χαρακτηρισμοί είναι δικαιώματα μεταβλητής πρόσβασης. Αν σας ενδιαφέρει η ανακαίνιση Κλιματιστικά Daikin, τότε είναι καλύτερα να το κάνετε στη Μόσχα από έναν επίσημο αντιπρόσωπο.

Έτσι για εγκατάσταση αλλαγή δικαιωμάτων πρόσβασηςστο 644 (ανεξάρτητα από τα προηγούμενα δικαιώματα πρόσβασης) μπορείτε να χρησιμοποιήσετε τις ακόλουθες δύο εντολές:

Chmod a+r-w-x όνομα αρχείου chmod u+w όνομα αρχείου

Η πρώτη εντολή ορίζει δικαιώματα για όλους: χρήστη, ομάδα και άλλους να διαβάζουν, αλλά όχι να γράφουν ή να εκτελούν (+r-w-x) το αρχείο. Το δεύτερο επιτρέπει στο χρήστη (u) να γράψει (+w) στο αρχείο. Για να μάθετε την τρέχουσα τιμή των χαρακτηριστικών, πληκτρολογήστε:

Όνομα αρχείου Ls -l

Αυτή η εντολή θα βγει μακρύ κορδόνι, που περιέχει μετα-πληροφορίες για το αρχείο, γνωστό στο σύστημα. Η πρώτη στήλη θα περιέχει τα χαρακτηριστικά και θα μοιάζει με αυτό:

Ο πρώτος χαρακτήρας στη γραμμή υποδεικνύει εάν το αντικείμενο είναι αρχείο, κατάλογος ή συμβολικός σύνδεσμος. Τα αρχεία συμβολίζονται με παύλα (-), οι κατάλογοι με d και συμβολικούς συνδέσμους- γράμμα l. Αυτό αφήνει 9 χαρακτήρες χωρίς τον πρώτο χαρακτήρα, τρεις ομάδες των τριών, που αντιπροσωπεύουν τα δικαιώματα πρόσβασης για τον ιδιοκτήτη, την ομάδα και άλλους.

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



Έχετε ερωτήσεις;

Αναφέρετε ένα τυπογραφικό λάθος

Κείμενο που θα σταλεί στους συντάκτες μας: