Linux Professional Institute Learning Logo.
Mετάβαση στο κύριο περιεχόμενο
  • Αρχική
    • Διαθέσιμοι Πόροι
    • Μαθησιακά Υλικά LPI
    • Γίνε Συνεργάτης
    • Συνεργάτες Εκδόσεων
    • Γίνε Συνεργάτης Εκδόσεων
    • Σχετικά
    • FAQ
    • Συνεργάτες
    • Roadmap
    • Επικοινωνία
  • LPI.org
5.2 Μάθημα 1
Θέμα 1: Η κοινότητα Linux και μια καριέρα στον Ανοιχτό Κώδικα
1.1 Εξέλιξη του Linux και Δημοφιλή Λειτουργικά Συστήματα
  • 1.1 Μάθημα 1
1.2 Κύριες Εφαρμογές Ανοιχτού Κώδικα
  • 1.2 Μάθημα 1
1.3 Λογισμικό Ανοιχτού Κώδικα και Αδειοδότηση
  • 1.3 Μάθημα 1
1.4 Δεξιότητες ICT και Εργασία στο Linux
  • 1.4 Μάθημα 1
Θέμα 2: Βρίσκοντας το Δρόμο σας σε ένα Σύστημα Linux
2.1 Βασικά Στοιχεία Γραμμής Εντολών
  • 2.1 Μάθημα 1
  • 2.1 Μάθημα 2
2.2 Χρήση της Γραμμής Εντολών για Λήψη Βοήθειας
  • 2.2 Μάθημα 1
2.3 Χρήση Καταλόγων και Παράθεση Αρχείων
  • 2.3 Μάθημα 1
  • 2.3 Μάθημα 2
2.4 Δημιουργία, Μετακίνηση και Διαγραφή Αρχείων
  • 2.4 Μάθημα 1
Θέμα 3: Η Δύναμη της Γραμμής Εντολών
3.1 Αρχειοθέτηση Αρχείων στη Γραμμή Εντολών
  • 3.1 Μάθημα 1
3.2 Αναζήτηση και Εξαγωγή Δεδομένων από Αρχεία
  • 3.2 Μάθημα 1
  • 3.2 Μάθημα 2
3.3 Μετατροπή Εντολών σε Σενάριο
  • 3.3 Μάθημα 1
  • 3.3 Μάθημα 2
Θέμα 4: Το Λειτουργικό Σύστημα Linux
4.1 Επιλογή Λειτουργικού Συστήματος
  • 4.1 Μάθημα 1
4.2 Κατανόηση του Υλικού του Υπολογιστή
  • 4.2 Μάθημα 1
4.3 Πού Αποθηκεύονται τα Δεδομένα
  • 4.3 Μάθημα 1
  • 4.3 Μάθημα 2
4.4 Ο Υπολογιστής σας στο Δίκτυο
  • 4.4 Μάθημα 1
Θέμα 5: Ασφάλεια και Δικαιώματα Αρχείων
5.1 Βασική Ασφάλεια και Αναγνώριση Τύπων Χρηστών
  • 5.1 Μάθημα 1
5.2 Δημιουργία Χρηστών και Ομάδων
  • 5.2 Μάθημα 1
5.3 Διαχείριση Δικαιωμάτων και Ιδιοκτησίας Αρχείων
  • 5.3 Μάθημα 1
5.4 Ειδικοί Κατάλογοι και Αρχεία
  • 5.4 Μάθημα 1
How to get certified
  1. Θέμα 5: Ασφάλεια και Δικαιώματα Αρχείων
  2. 5.2 Δημιουργία Χρηστών και Ομάδων
  3. 5.2 Μάθημα 1

5.2 Μάθημα 1

Πιστοποιητικό:

Linux Essentials

Έκδοση:

1.6

Θέμα:

5 Ασφάλεια και Δικαιώματα Αρχείων

Σκοπός:

5.2 Δημιουργία Χρηστών και Ομάδων

Μάθημα:

1 απο 1

Εισαγωγή

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

Οι πληροφορίες σχετικά με τους χρήστες και τις ομάδες αποθηκεύονται σε τέσσερα αρχεία στο δέντρο καταλόγου /etc/:

/etc/passwd

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

/etc/group

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

/etc/shadow

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

/etc/gshadow

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

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

Warning

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

Το Αρχείο /etc/passwd

Το /etc/passwd είναι ένα αναγνώσιμο από τον κόσμο αρχείο που περιέχει μια λίστα χρηστών, με τον καθένα σε ξεχωριστή γραμμή:

frank:x:1001:1001::/home/frank:/bin/bash

Κάθε γραμμή αποτελείται από επτά πεδία οριοθετημένα με άνω και κάτω τελεία:

Όνομα χρήστη

Το όνομα που χρησιμοποιείται όταν ο χρήστης συνδέεται στο σύστημα.

Κωδικός πρόσβασης

Ο κρυπτογραφημένος κωδικός πρόσβασης (ή ένα x εάν χρησιμοποιούνται shadow κωδικοί πρόσβασης).

Αναγνωριστικό χρήστη (UID)

Ο αριθμός αναγνωριστικού χρήστη που του έχει εκχωρηθεί στο σύστημα.

Αναγνωριστικό ομάδας (GID)

Ο πρωταρχικός αριθμός ομάδας του χρήστη στο σύστημα.

GECOS

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

Κατάλογος αφετηρίας

Το απόλυτο path του αφετηριακού καταλόγου του χρήστη.

Κέλυφος

Το απόλυτο path του προγράμματος που εκκινείται αυτόματα όταν ο χρήστης συνδέεται στο σύστημα (συνήθως ένα διαδραστικό shell όπως το bin/bash).

Το Αρχείο /etc/group

Το /etc/group είναι ένα αναγνώσιμο από τον κόσμο αρχείο που περιέχει μια λίστα ομάδων, η καθεμία σε ξεχωριστή γραμμή:

developer:x:1002:

Κάθε γραμμή αποτελείται από τέσσερα πεδία οριοθετημένα με άνω και κάτω τελεία:

Όνομα ομάδας

Το όνομα της ομάδας.

Κωδικός πρόσβασης ομάδας

Ο κρυπτογραφημένος κωδικός πρόσβασης της ομάδας (ή ένα x εάν χρησιμοποιούνται shadow κωδικοί πρόσβασης).

Αναγνωριστικό ομάδας (GID)

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

Λίστα μελών

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

Το Αρχείο /etc/shadow

Το /etc/shadow είναι ένα αρχείο αναγνώσιμο μόνο από τον root χρήστη και χρήστες με δικαιώματα root και περιέχει τους κρυπτογραφημένους κωδικούς πρόσβασης των χρηστών, τον καθένα σε ξεχωριστή γραμμή:

frank:$6$i9gjM4Md4MuelZCd$7jJa8Cd2bbADFH4dwtfvTvJLOYCCCBf/.jYbK1IMYx7Wh4fErXcc2xQVU2N1gb97yIYaiqH.jjJammzof2Jfr/:18029:0:99999:7:::

Κάθε γραμμή αποτελείται από εννέα πεδία οριοθετημένα με άνω και κάτω τελεία:

Όνομα χρήστη

Το όνομα που χρησιμοποιείται όταν ο χρήστης συνδέεται στο σύστημα.

Κρυπτογραφημένος κωδικός πρόσβασης

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

Ημερομηνία της τελευταίας αλλαγής κωδικού πρόσβασης

Η ημερομηνία της τελευταίας αλλαγής κωδικού πρόσβασης, ως ο αριθμός των ημερών απο την 01/01/1970. Η τιμή 0 σημαίνει ότι ο χρήστης πρέπει να αλλάξει τον κωδικό πρόσβασης κατά την επόμενη πρόσβασή του στο σύστημα.

Ελάχιστη ηλικία κωδικού πρόσβασης

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

Μέγιστη ηλικία κωδικού πρόσβασης

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

Προειδοποιητική περίοδος κωδικού πρόσβασης

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

Ανενεργή περίοδος κωδικού πρόσβασης

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

Ημερομηνία λήξης λογαριασμού

Η ημερομηνία, ως αριθμός ημερών από την 01/01/1970, κατά τις οποίες ο λογαριασμός χρήστη θα απενεργοποιηθεί. Ένα κενό πεδίο σημαίνει ότι ο λογαριασμός χρήστη δεν θα λήξει ποτέ.

Ένα εφεδρικό πεδίο

Ένα πεδίο που κρατείται για μελλοντική χρήση.

Το Αρχείο /etc/gshadow

Το /etc/gshadow είναι ένα αρχείο αναγνώσιμο μόνο από τον root χρήστη και χρήστες με δικαιώματα root και περιέχει τους κρυπτογραφημένους κωδικούς πρόσβασης των ομάδων, τον καθένα σε ξεχωριστή γραμμή:

developer:$6$7QUIhUX1WdO6$H7kOYgsboLkDseFHpk04lwAtweSUQHipoxIgo83QNDxYtYwgmZTCU0qSCuCkErmyR263rvHiLctZVDR7Ya9Ai1::

Κάθε γραμμή αποτελείται από τέσσερα πεδία οριοθετημένα με άνω και κάτω τελεία:

Όνομα ομάδας

Το όνομα της ομάδας.

Κρυπτογραφημένος κωδικός πρόσβασης

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

Διαχειριστές ομάδας

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

Μέλη ομάδας

Μια λίστα των μελών της ομάδας οριοθετημένη με κόμματα.

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

Προσθήκη και Διαγραφή Λογαριασμών Χρηστών

Στο Linux, προσθέτετε έναν νέο λογαριασμό χρήστη με την εντολή useradd και διαγράφετε έναν λογαριασμό χρήστη με την εντολή userdel.

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

# useradd frank

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

# passwd frank
Changing password for user frank.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

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

Tip

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

cat /etc/passwd | grep frank

ή

grep frank /etc/passwd

για να δείτε βασικές πληροφορίες σχετικά με τον πρόσφατα δημιουργημένο λογαριασμό frank.

Οι πιο σημαντικές επιλογές της εντολής useradd είναι:

-c

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

-d

Δημιουργήστε έναν νέο λογαριασμό χρήστη με έναν ειδικά προσαρμοσμένο αφετηριακό κατάλογο.

-e

Δημιουργήστε έναν νέο λογαριασμό χρήστη ορίζοντας μια συγκεκριμένη ημερομηνία κατά την οποία θα απενεργοποιηθεί.

-f

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

-g

Δημιουργήστε έναν νέο λογαριασμό χρήστη με συγκεκριμένο GID

-G

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

-m

Δημιουργήστε έναν νέο λογαριασμό χρήστη μαζί με τον αφετηριακό του κατάλογο.

-M

Δημιουργήστε έναν νέο λογαριασμό χρήστη χωρίς τον αφετηριακό του κατάλογο.

-s

Δημιουργήστε έναν νέο λογαριασμό χρήστη με συγκεκριμένο shell σύνδεσης.

-u

Δημιουργήστε έναν νέο λογαριασμό χρήστη με συγκεκριμένο UID.

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

# id frank
uid=1000(frank) gid=1000(frank) groups=1000(frank)
# groups frank
frank : frank
Tip

Θυμηθείτε να ελέγξετε και τελικά να επεξεργαστείτε το αρχείο /etc/login.defs, το οποίο καθορίζει τις παραμέτρους διαμόρφωσης που ελέγχουν τη δημιουργία χρηστών και ομάδων. Για παράδειγμα, μπορείτε να ορίσετε το εύρος των UID και των GID που μπορούν να εκχωρηθούν σε νέους λογαριασμούς χρηστών και ομάδων, να καθορίσετε ότι δεν χρειάζεται να χρησιμοποιήσετε την επιλογή -m για τη δημιουργία του αφετηριακού καταλόγου του νέου χρήστη και εάν το σύστημα πρέπει δημιουργεί αυτόματα μια νέα ομάδα για κάθε νέο χρήστη.

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

# userdel -r frank

Όπως και πριν, χρειάζεστε εξουσιοδότηση root χρήστη για να διαγράψετε λογαριασμούς χρηστών.

Ο Κατάλογος Σκελετός

Όταν προσθέτετε έναν νέο λογαριασμό χρήστη, ακόμη και δημιουργώντας τον αφετηριακό του κατάλογο, ο νέος αυτός κατάλογος αφετηρίας συμπληρώνεται με αρχεία και φακέλους που αντιγράφονται από τον κατάλογο σκελετό [skeleton] (από προεπιλογή /etc/skel). Η ιδέα πίσω από αυτό είναι απλή: ένας διαχειριστής συστήματος θέλει να προσθέσει νέους χρήστες που έχουν τα ίδια αρχεία και καταλόγους στον κατάλογο αφετηρίας τους. Επομένως, εάν θέλετε να προσαρμόσετε τα αρχεία και τους φακέλους που δημιουργούνται αυτόματα στον αφετηριακό κατάλογο των νέων λογαριασμών χρηστών, πρέπει να προσθέσετε αυτά τα νέα αρχεία και φακέλους στον κατάλογο σκελετό.

Tip

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

Προσθήκη και Διαγραφή Ομάδων

Όσον αφορά τη διαχείριση ομάδων, μπορείτε να προσθέσετε ή να διαγράψετε ομάδες χρησιμοποιώντας τις εντολές groupadd και groupdel.

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

# groupadd -g 1090 developer

Η επιλογή -g αυτής της εντολής δημιουργεί μια ομάδα με ένα συγκεκριμένο GID.

Εάν θέλετε να διαγράψετε την ομάδα developer, μπορείτε να εκτελέσετε το εξής:

# groupdel developer
Warning

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

Η Εντολή passwd

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

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

-d

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

-e

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

-l

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

-u

Ξεκλειδώστε τον λογαριασμό χρήστη (αφαιρεί το θαυμαστικό).

-S

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

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

Καθοδηγούμενες Ασκήσεις

  1. Για καθεμία από τις ακόλουθες καταχωρήσεις, υποδείξτε το αρχείο στο οποίο αναφέρεται:

    • developer:x:1010:frank,grace,dave

    • root:x:0:0:root:/root:/bin/bash

    • henry:$1$.AbCdEfGh123456789A1b2C3d4.:18015:20:90:5:30::

    • henry:x:1000:1000:User Henry:/home/henry:/bin/bash

    • staff:!:dave:carol,emma

  2. Παρατηρήστε την ακόλουθη έξοδο για να απαντήσετε στις επόμενες επτά ερωτήσεις:

    # cat /etc/passwd | tail -3
    dave:x:1050:1050:User Dave:/home/dave:/bin/bash
    carol:x:1051:1015:User Carol:/home/carol:/bin/sh
    henry:x:1052:1005:User Henry:/home/henry:/bin/tcsh
    # cat /etc/group | tail -3
    web_admin:x:1005:frank,emma
    web_developer:x:1010:grace,kevin,christian
    dave:x:1050:
    # cat /etc/shadow | tail -3
    dave:$6$AbCdEfGh123456789A1b2C3D4e5F6G7h8i9:0:20:90:7:30::
    carol:$6$q1w2e3r4t5y6u7i8AbcDeFgHiLmNoPqRsTu:18015:0:60:7:::
    henry:!$6$123456789aBcDeFgHa1B2c3d4E5f6g7H8I9:18015:0:20:5:::
    # cat /etc/gshadow | tail -3
    web_admin:!:frank:frank,emma
    web_developer:!:kevin:grace,kevin,christian
    dave:!::
    • Ποιό είναι το αναγνωριστικό χρήστη (UID) και το αναγνωριστικό ομάδας (GID) του χρήστη carol;

    • Τι shell έχει οριστεί για τους dave και henry;

    • Ποιό είναι το όνομα της πρωταρχικής ομάδας του henry;

    • Ποια είναι τα μέλη της ομάδας web_developer; Ποιοι από αυτούς είναι διαχειριστές ομάδων;

    • Ποιος χρήστης δεν μπορεί να συνδεθεί στο σύστημα;

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

    • Πόσες ημέρες πρέπει να περάσουν πρίν απαιτηθεί αλλαγή κωδικού πρόσβασης για την carol;

Ασκήσεις Εξερεύνησης

  1. Ως ο root χρήστης, εκτελέστε την εντολή useradd -m dave για να προσθέσετε έναν νέο λογαριασμό χρήστη. Τι λειτουργίες εκτελεί αυτή η εντολή; Υποθέστε ότι τα CREATE_HOME και USERGROUPS_ENAB στο /etc/login.defs έχουν οριστεί σε yes.

  2. Τώρα που δημιουργήσατε τον λογαριασμό dave, μπορεί αυτός ο χρήστης να συνδεθεί στο σύστημα;

  3. Προσδιορίστε το αναγνωριστικό χρήστη (UID) και το αναγνωριστικό ομάδας (GID) του dave και όλα τα μέλη της ομάδας dave.

  4. Δημιουργήστε τις ομάδες sys_admin, web_admin και db_admin και προσδιορίστε τα αναγνωριστικά των ομάδων τους (GID).

  5. Προσθέστε έναν νέο λογαριασμό χρήστη με το όνομα carol με UID 1035 και ορίστε το sys_admin ως την πρωταρχική ομάδα και τα web_admin και db_admin ως δευτερεύουσες ομάδες.

  6. Διαγράψτε τους λογαριασμούς dave και carol και τις ομάδες sys_admin, web_admin και db_admin που έχετε δημιουργήσει προηγουμένως.

  7. Εκτελέστε την εντολή ls -l /etc/passwd /etc/group /etc/shadow /etc/gshadow και περιγράψτε την έξοδο που σας δίνει όσον αφορά τα δικαιώματα αρχείων. Ποια από αυτά τα τέσσερα αρχεία είναι shadow για λόγους ασφαλείας; Ας υποθέσουμε ότι το σύστημά σας χρησιμοποιεί shadow κωδικούς πρόσβασης.

  8. Εκτελέστε την εντολή ls -l /usr/bin/passwd. Ποιο ειδικό bit έχει οριστεί και ποια είναι η σημασία του;

Σύνοψη

Σε αυτό το μάθημα μάθατε:

  • Τις θεμελιώδεις αρχές της διαχείρισης χρηστών και ομάδων στο Linux

  • Την διαχείριση πληροφοριών χρηστών και ομάδων που είναι αποθηκευμένες σε βάσεις δεδομένων κωδικών πρόσβασης και ομάδων

  • Συντήρηση του κατάλογου σκελετού

  • Προσθήκη και αφαίρεση λογαριασμών χρηστών

  • Προσθήκη και αφαίρεση λογαριασμών ομάδων

  • Αλλαγή του κωδικού πρόσβασης των λογαριασμών χρηστών

Οι ακόλουθες εντολές συζητήθηκαν σε αυτό το μάθημα:

useradd

Δημιουργήστε έναν νέο λογαριασμό χρήστη.

groupadd

Δημιουργήστε έναν νέο λογαριασμό ομάδας.

userdel

Διαγραφή ενός λογαριασμού χρήστη.

groupdel

Διαγραφή ενός λογαριασμού ομάδας.

passwd

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

Απαντήσεις στις Καθοδηγούμενες Ασκήσεις

  1. Για καθεμία από τις ακόλουθες καταχωρήσεις, υποδείξτε το αρχείο στο οποίο αναφέρεται:

    • developer:x:1010:frank,grace,dave

      /etc/group

    • root:x:0:0:root:/root:/bin/bash

      /etc/passwd

    • henry:$1$.AbCdEfGh123456789A1b2C3d4.:18015:20:90:5:30::

      /etc/shadow

    • henry:x:1000:1000:User Henry:/home/henry:/bin/bash

      /etc/passwd

    • staff:!:dave:carol,emma

      /etc/gshadow

  2. Παρατηρήστε την ακόλουθη έξοδο για να απαντήσετε στις επόμενες επτά ερωτήσεις:

    # cat /etc/passwd | tail -3
    dave:x:1050:1050:User Dave:/home/dave:/bin/bash
    carol:x:1051:1015:User Carol:/home/carol:/bin/sh
    henry:x:1052:1005:User Henry:/home/henry:/bin/tcsh
    # cat /etc/group | tail -3
    web_admin:x:1005:frank,emma
    web_developer:x:1010:grace,kevin,christian
    dave:x:1050:
    # cat /etc/shadow | tail -3
    dave:$6$AbCdEfGh123456789A1b2C3D4e5F6G7h8i9:0:20:90:7:30::
    carol:$6$q1w2e3r4t5y6u7i8AbcDeFgHiLmNoPqRsTu:18015:0:60:7:::
    henry:!$6$123456789aBcDeFgHa1B2c3d4E5f6g7H8I9:18015:0:20:5:::
    # cat /etc/gshadow | tail -3
    web_admin:!:frank:frank,emma
    web_developer:!:kevin:grace,kevin,christian
    dave:!::
    • Ποιό είναι το αναγνωριστικό χρήστη (UID) και το αναγνωριστικό ομάδας (GID) του χρήστη carol;

      Το UID είναι 1051 και το GID είναι 1015 (το τρίτο και το τέταρτο πεδίο στο /etc/passwd).

    • Τι shell έχει οριστεί για τους dave και henry;

      Ο dave χρησιμοποιεί /bin/bash και ο henry χρησιμοποιεί το /bin/tcsh (το έβδομο πεδίο στο /etc/passwd).

    • Ποιό είναι το όνομα της πρωταρχικής ομάδας του henry;

      Το όνομα της ομάδας είναι web_admin (το πρώτο πεδίο στο /etc/group).

    • Ποια είναι τα μέλη της ομάδας web_developer; Ποιοι από αυτούς είναι διαχειριστές ομάδων;

      Τα μέλη είναι grace, kevin και christian (το τέταρτο πεδίο στο /etc/group), αλλά μόνο ο kevin είναι ο διαχειριστής της ομάδας (το τρίτο πεδίο στο /etc/gshadow) .

    • Ποιος χρήστης δεν μπορεί να συνδεθεί στο σύστημα;

      Ο λογαριασμός χρήστη henry είναι κλειδωμένος (έχει ένα θαυμαστικό μπροστά από το hash του κωδικού πρόσβασης στο /etc/shadow).

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

      Εάν το τρίτο πεδίο (Ημερομηνία της Τελευταίας Αλλαγής Κωδικού Πρόσβασης) στο /etc/shadow είναι 0, ο χρήστης θα πρέπει να αλλάξει τον κωδικό πρόσβασής του την επόμενη φορά που θα συνδεθεί στο σύστημα. Επομένως, ο dave πρέπει να αλλάξει τον κωδικό πρόσβασής του.

    • Πόσες ημέρες πρέπει να περάσουν πρίν απαιτηθεί αλλαγή κωδικού πρόσβασης για την carol;

      60 ημέρες (το πέμπτο πεδίο στο /etc/shadow).

Απαντήσεις στις Ασκήσεις Εξερεύνησης

  1. Ως ο root χρήστης, εκτελέστε την εντολή useradd -m dave για να προσθέσετε έναν νέο λογαριασμό χρήστη. Τι λειτουργίες εκτελεί αυτή η εντολή; Υποθέστε ότι τα CREATE_HOME και USERGROUPS_ENAB στο /etc/login.defs έχουν οριστεί σε yes.

    Η εντολή προσθέτει έναν νέο χρήστη, με το όνομα dave, στη λίστα των χρηστών του συστήματος. Ο αφετηριακός κατάλογος του dave δημιουργείται (από προεπιλογή /home/dave) και τα αρχεία και οι κατάλογοι που περιέχονται στον κατάλογο σκελετό αντιγράφονται στον αφετηριακό κατάλογο. Τέλος, δημιουργείται νέα ομάδα με το ίδιο όνομα με τον λογαριασμό χρήστη.

  2. Τώρα που δημιουργήσατε τον λογαριασμό dave, μπορεί αυτός ο χρήστης να συνδεθεί στο σύστημα;

    Όχι, επειδή ο λογαριασμός dave είναι κλειδωμένος (δείτε το θαυμαστικό στο /etc/shadow).

    # cat /etc/shadow | grep dave
    dave:!:18015:0:99999:7:::

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

    # passwd dave
    Changing password for user dave.
    New UNIX password:
    Retype new UNIX password:
    passwd: all authentication tokens updated successfully.
  3. Προσδιορίστε το αναγνωριστικό χρήστη (UID) και το αναγνωριστικό ομάδας (GID) του dave και όλα τα μέλη της ομάδας dave.

    # cat /etc/passwd | grep dave
    dave:x:1015:1019::/home/dave:/bin/sh
    # cat /etc/group | grep 1019
    dave:x:1019:

    Το UID και το GID του dave είναι 1015 και 1019 αντίστοιχα (το τρίτο και το τέταρτο πεδίο στο /etc/passwd) και η ομάδα dave δεν έχει μέλη (το τέταρτο πεδίο στο /etc/group είναι κενό) .

  4. Δημιουργήστε τις ομάδες sys_admin, web_admin και db_admin και προσδιορίστε τα αναγνωριστικά των ομάδων τους (GID).

    # groupadd sys_admin
    # groupadd web_admin
    # groupadd db_admin
    # cat /etc/group | grep admin
    sys_admin:x:1020:
    web_admin:x:1021:
    db_admin:x:1022:

    Τα GID για τις ομάδες sys_admin, web_admin και db_admin είναι 1020, 1021 και 1022 αντίστοιχα.

  5. Προσθέστε έναν νέο λογαριασμό χρήστη με το όνομα carol με UID 1035 και ορίστε το sys_admin ως την πρωταρχική ομάδα και τα web_admin και db_admin ως δευτερεύουσες ομάδες.

    # useradd -u 1035 -g 1020 -G web_admin,db_admin carol
    # id carol
    uid=1035(carol) gid=1020(sys_admin) groups=1020(sys_admin),1021(web_admin),1022(db_admin)
  6. Διαγράψτε τους λογαριασμούς dave και carol και τις ομάδες sys_admin, web_admin και db_admin που έχετε δημιουργήσει προηγουμένως.

    # userdel -r dave
    # userdel -r carol
    # groupdel sys_admin
    # groupdel web_admin
    # groupdel db_admin
  7. Εκτελέστε την εντολή ls -l /etc/passwd /etc/group /etc/shadow /etc/gshadow και περιγράψτε την έξοδο που σας δίνει όσον αφορά τα δικαιώματα αρχείων. Ποια από αυτά τα τέσσερα αρχεία είναι shadow για λόγους ασφαλείας; Ας υποθέσουμε ότι το σύστημά σας χρησιμοποιεί shadow κωδικούς πρόσβασης.

    # ls -l /etc/passwd /etc/group /etc/shadow /etc/gshadow
    -rw-r--r-- 1 root root    853 mag  1 08:00 /etc/group
    -rw-r----- 1 root shadow 1203 mag  1 08:00 /etc/gshadow
    -rw-r--r-- 1 root root   1354 mag  1 08:00 /etc/passwd
    -rw-r----- 1 root shadow 1563 mag  1 08:00 /etc/shadow

    Τα αρχεία /etc/passwd και /etc/group είναι αναγνώσιμα απο όλους και είναι shadow για λόγους ασφαλείας. Όταν χρησιμοποιούνται shadow κωδικοί πρόσβασης, μπορείτε να δείτε ένα x στο δεύτερο πεδίο αυτών των αρχείων, επειδή οι κρυπτογραφημένοι κωδικοί πρόσβασης για χρήστες και ομάδες αποθηκεύονται στα /etc/shadow και /etc/gshadow, τα οποία είναι αναγνώσιμα μόνο από τον root χρήστη και, σε ορισμένα συστήματα, επίσης από μέλη που ανήκουν στην ομάδα shadow.

  8. Εκτελέστε την εντολή ls -l /usr/bin/passwd. Ποιο ειδικό bit έχει οριστεί και ποια είναι η σημασία του;

    # ls -l /usr/bin/passwd
    -rwsr-xr-x 1 root root 42096 mag 17  2015 /usr/bin/passwd

    Η εντολή passwd έχει ορίσει το SUID bit (ο τέταρτος χαρακτήρας αυτής της γραμμής), που σημαίνει ότι η εντολή εκτελείται με τα δικαιώματα του ιδιοκτήτη του αρχείου (άρα του χρήστη root). Έτσι μπορούν οι απλοί χρήστες να αλλάξουν τον κωδικό πρόσβασής τους.

Linux Professional Insitute Inc. All rights reserved. Επισκεφθείτε την ιστοσελίδα των Μαθησιακών Υλικών: https://learning.lpi.org
Αυτό το έργο έχει άδεια βάσει της Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Επόμενο Μάθημα

5.3 Διαχείριση Δικαιωμάτων και Ιδιοκτησίας Αρχείων (5.3 Μάθημα 1)

Διάβασε το επόμενο μάθημα

Linux Professional Insitute Inc. All rights reserved. Επισκεφθείτε την ιστοσελίδα των Μαθησιακών Υλικών: https://learning.lpi.org
Αυτό το έργο έχει άδεια βάσει της Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Το LPI είναι ένας μη κερδοσκοπικός οργανισμός.

© 2022 Το Linux Professional Institute (LPI) είναι το παγκόσμιο πρότυπο πιστοποίησης και οργανισμός υποστήριξης σταδιοδρομίας για επαγγελματίες ανοιχτού κώδικα. Με περισσότερους από 200.000 κατόχους πιστοποίησης, είναι ο πρώτος και μεγαλύτερος στον κόσμο ουδέτερος οργανισμός πιστοποιήσεων Linux και ανοιχτού κώδικα. Το LPI έχει πιστοποιημένους επαγγελματίες σε περισσότερες από 180 χώρες, παραδίδει εξετάσεις σε πολλές γλώσσες και έχει εκατοντάδες συνεργάτες εκπαίδευσης.

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

  • LinkedIn
  • flogo-RGB-HEX-Blk-58 Facebook
  • Twitter
  • Επικοινωνήστε Μαζί Μας
  • Πολιτική Απορρήτου και Πολιτική Cookie

Εντοπίσατε ένα λάθος ή θέλετε να βοηθήσετε στη βελτίωση αυτής της σελίδας; Παρακαλούμε ενημερώστε μας.

© 1999–2022 The Linux Professional Institute Inc. All rights reserved.