Γνωσιακή Απλές οδηγίες για να εργαστείτε με την υπηρεσία Profitserver
Κυρίως Γνωσιακή Χρήστες Linux: Διαχείριση και δικαιώματα

Χρήστες Linux: Διαχείριση και δικαιώματα


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

Η σημασία της διαχείρισης χρηστών και των δικαιωμάτων πρόσβασης στο Linux

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

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

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

Ιδιαίτερη προσοχή αξίζει να δοθεί σε πολιτικές ασφαλείας όπως το sudo και το SELinux , που χρησιμοποιούνται σε συστήματα Linux. Το Sudo είναι μια ειδική εντολή που επιτρέπει στους απλούς χρήστες να χρησιμοποιούν προσωρινά δικαιώματα superuser (root) για να εκτελούν συγκεκριμένες εργασίες που συνήθως είναι διαθέσιμες μόνο σε διαχειριστές. Αυτό βοηθά στην αποτροπή τυχαίων σφαλμάτων ή κατάχρησης των δικαιωμάτων superuser. Όταν χρησιμοποιείται το sudo , ο χρήστης συνήθως απαιτείται να εισαγάγει τον κωδικό πρόσβασής του για να επιβεβαιώσει την ταυτότητά του. Μετά από αυτό, μπορεί να εκτελέσει εντολές με δικαιώματα superuser (root) σύμφωνα με τους κανόνες που ορίζονται στο αρχείο sudoers.

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

Δημιουργία και διαχείριση χρηστών

Πώς να δημιουργήσετε έναν χρήστη στο Linux

Οι χρήστες Linux συνήθως δημιουργούνται με την εντολή useradd . Για παράδειγμα, για να δημιουργήσετε έναν χρήστη με το όνομα "username", θα πρέπει να εισαγάγετε:

useradd username

Πώς να ορίσετε έναν κωδικό πρόσβασης χρήστη Linux

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

passwd username

Όπου όνομα χρήστη είναι το όνομα του χρήστη για τον οποίο ορίζεται ο κωδικός πρόσβασης.

Πώς να προβάλετε μια λίστα χρηστών στο Linux

Για να δείτε μια λίστα χρηστών στο Linux με μία μόνο εντολή στο τερματικό, μπορείτε να χρησιμοποιήσετε την εντολή cut :

cut -d: -f1 /etc/passwd

Αυτή η εντολή διαβάζει τα περιεχόμενα του αρχείου /etc/passwd , το οποίο περιέχει πληροφορίες για όλους τους χρήστες.

Για να λάβετε πληροφορίες σχετικά με έναν συγκεκριμένο χρήστη, μπορείτε να χρησιμοποιήσετε την εντολή:

id username

Αυτό θα εμφανίσει το UID , το GID και τις Ομάδες του χρήστη.

Διαγραφή χρήστη Linux

Για να διαγράψετε έναν χρήστη, χρησιμοποιήστε την εντολή userdel :

userdel username

Ωστόσο, αυτή η εντολή δεν διαγράφει τα αρχεία στον αρχικό κατάλογο του χρήστη. Για να τα καταργήσετε, μπορείτε να χρησιμοποιήσετε την επιλογή -r :

userdel -r username

Αυτό θα διαγράψει το όνομα χρήστη μαζί με τον αρχικό κατάλογο και όλα τα αρχεία μέσα σε αυτόν.

Τροποποίηση χρήστη Linux

Για να τροποποιήσετε πληροφορίες σχετικά με έναν χρήστη, χρησιμοποιήστε την εντολή usermod . Το εργαλείο χρησιμοποιεί τη σύνταξη:

usermod argument user

Μια πλήρης λίστα με πιθανά ορίσματα εμφανίζεται στη βοήθεια του βοηθητικού προγράμματος:

Βοηθητικό πρόγραμμα διαχείρισης χρηστών Linux

Για παράδειγμα, για να αλλάξετε τον αρχικό κατάλογο ενός χρήστη, θα χρησιμοποιήσετε την εντολή:

usermod -d /new/path/to/directory username

Δημιουργία και διαχείριση ομάδων χρηστών στο Linux

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

Πώς να δημιουργήσετε μια ομάδα χρηστών στο Linux

Για να δημιουργήσετε μια νέα ομάδα, χρησιμοποιήστε την εντολή groupadd με το όνομα της νέας ομάδας:

sudo groupadd group_name

Στο παράδειγμά μας, η εντολή θα μοιάζει με αυτό:

sudo groupadd developers

Πώς να διαγράψετε μια ομάδα χρηστών στο Linux

Για να διαγράψετε μια ομάδα, χρησιμοποιήστε την εντολή groupdel :

sudo groupdel group_name

Έτσι, η εντολή:

sudo groupdel developers

Θα διαγραφεί η ομάδα με το όνομα προγραμματιστές.

Προσθήκη χρηστών σε μια ομάδα

Για να προσθέσετε έναν χρήστη σε μια συγκεκριμένη ομάδα, χρησιμοποιήστε την εντολή usermod :

sudo usermod -aG group_name user_name

Για παράδειγμα:

sudo usermod -aG developers admin

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

Αφαίρεση χρηστών από μια ομάδα

Για να αφαιρέσετε έναν χρήστη από μια ομάδα, χρησιμοποιήστε την εντολή deluser :

sudo deluser user_name group_name

Η εντολή για την κατάργηση του χρήστη admin από την ομάδα προγραμματιστών :

sudo deluser admin developers

Προβολή λιστών ομάδων στο Linux

Για να δείτε μια λίστα με όλες τις ομάδες στο σύστημα, χρησιμοποιήστε την εντολή cat με το αρχείο /etc/group :

cat /etc/group

Αυτή η εντολή θα εμφανίσει μια λίστα με όλες τις ομάδες στο σύστημα.

Έλεγχος ιδιότητας μέλους ομάδας χρηστών

Αφού εκτελέσετε ενέργειες, μπορείτε να ελέγξετε σε ποιες ομάδες ανήκει ένας χρήστης χρησιμοποιώντας την εντολή ομάδες:

groups user_name

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

Εκχώρηση δικαιωμάτων πρόσβασης σε αρχεία και καταλόγους

Συμβολική Αναπαράσταση Δικαιωμάτων Πρόσβασης

Όπως έχουμε ήδη διαπιστώσει, υπάρχουν 3 κατηγορίες χρηστών στο Linux: κάτοχος ( user ), ομάδα και άλλοι . Κάθε ένας από αυτούς μπορεί να έχει συγκεκριμένες ομάδες πρόσβασης σε αρχεία ή καταλόγους:

  1. Read (Read - r): Επιτρέπει την προβολή των περιεχομένων ενός αρχείου ή καταλόγου.
  2. Write (Write - w): Παρέχει τη δυνατότητα τροποποίησης ενός αρχείου ή δημιουργίας νέου αρχείου μέσα στον κατάλογο. Για έναν κατάλογο, αυτό επιτρέπει επίσης τη διαγραφή αρχείων από αυτόν.
  3. Execute (Execute - x): Επιτρέπει την εκτέλεση του αρχείου (αν είναι εκτελέσιμο αρχείο) ή την είσοδο στον κατάλογο (αν είναι κατάλογος).

Στα οικογενειακά συστήματα Linux, τα δικαιώματα πρόσβασης αντιπροσωπεύονται από μια συμβολοσειρά 10 χαρακτήρων. Ο πρώτος χαρακτήρας υποδεικνύει τον τύπο αρχείου (κανονικό αρχείο, κατάλογος κ.λπ.) και οι υπόλοιποι εννέα είναι τρεις ομάδες των τριών χαρακτήρων για κάθε μία από τις ομάδες χρηστών. Για κατανόηση, ας εξετάσουμε ένα παράδειγμα.

Δικαιώματα πρόσβασης -rwxr-xr-- σημαίνουν:

  1. Ο πρώτος χαρακτήρας (-) υποδεικνύει τον τύπο αρχείου (στην περίπτωση αυτή, ένα κανονικό αρχείο).
  2. Τρεις χαρακτήρες για τον κάτοχο (rwx) δείχνουν ότι ο κάτοχος έχει δικαιώματα ανάγνωσης, εγγραφής και εκτέλεσης.
  3. Τρεις χαρακτήρες για την ομάδα (rx) υποδεικνύουν ότι τα μέλη της ομάδας έχουν διαβάσει και εκτελούν μόνο δικαιώματα.
  4. Τρεις χαρακτήρες για άλλους (r--) σημαίνουν ότι οι άλλοι χρήστες μπορούν μόνο να διαβάσουν το αρχείο.

Τα δικαιώματα πρόσβασης ορίζονται χρησιμοποιώντας την εντολή chmod και η σύνταξη έχει ως εξής:

chmod [options] mode file(s)

Που:

  1. [options] - πρόσθετες παράμετροι, όπως -R για την αναδρομική αλλαγή δικαιωμάτων πρόσβασης σε έναν κατάλογο και τους υποκαταλόγους του.
  2. mode - μια ειδική συμβολοσειρά που καθορίζει ποια δικαιώματα πρόσβασης αλλάζουν και για ποιον. Η λειτουργία μπορεί να καθοριστεί με σύμβολα (r, w, x) και bit (0 ή 1). Μπορούν επίσης να χρησιμοποιηθούν αριθμητικές τιμές λειτουργίας (θα μιλήσουμε για αυτές αργότερα)
  3. αρχείο(α) - αρχεία ή κατάλογοι στους οποίους εφαρμόζονται οι αλλαγές.

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

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

chmod u=rw,g=r,o= filename

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

chmod a+rw filename

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

chmod -R u+rwx directory

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

Στην αριθμητική αναπαράσταση, κάθε κατηγορία χρήστη (κάτοχος, ομάδα, άλλοι) έχει τον αριθμό της και ο συνδυασμός αυτών των αριθμών ορίζει τα τελικά δικαιώματα πρόσβασης. Παρόμοια με τα συμβολικά, καθένα από τα τρία δικαιώματα έχει την αξία του, αλλά αριθμητικά:

  1. Ανάγνωση (ανάγνωση) - τιμή 4
  2. Γράψτε (γράψτε) - τιμή 2
  3. Εκτέλεση (εκτέλεση) - τιμή 1

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

  1. Κάτοχος αρχείου (χρήστης) - το πρώτο ψηφίο
  2. Ομάδα ιδιοκτητών (ομάδα) - το δεύτερο ψηφίο
  3. Άλλοι χρήστες (άλλοι) - το τρίτο ψηφίο

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

chmod XYZ file

όπου X , Y και Z είναι αριθμοί που αντιπροσωπεύουν δικαιώματα πρόσβασης για τον κάτοχο, την ομάδα και άλλους χρήστες αντίστοιχα.

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

chmod 755 file

Ας εξετάσουμε άλλα παραδείγματα:

chmod 700 file

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

chmod 644 file

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

chmod 751 file

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

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

Εργαλείο για τη διαχείριση δικαιωμάτων πρόσβασης στο Linux

Δώστε προσοχή στην τελευταία γραμμή. Η χρήση αυτής της εντολής ανοίγει πιο λεπτομερή τεκμηρίωση για το εργαλείο. Μπορείτε επίσης να επισκεφθείτε την επίσημη σελίδα του βοηθητικού προγράμματος στη Wikipedia, όπου μπορείτε να βρείτε λεπτομερείς πληροφορίες σχετικά με το Chmod.

Συμπέρασμα

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

❮ Προηγούμενο άρθρο Διαμόρφωση τείχους προστασίας σε Linux
Επόμενο άρθρο ❯ Επεξεργαστές κειμένου Linux

Ρωτήστε μας για το VPS

Είμαστε πάντα έτοιμοι να απαντήσουμε στις ερωτήσεις σας οποιαδήποτε ώρα της ημέρας ή της νύχτας.