Menu
ΠΡΟΗΓ. ΚΕΦ.   ΕΠΟΜΕΝΟ ΚΕΦ.
Menu and Table of Contents

Το αρχείο /etc/passwd και το /etc/group

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

Το αρχείο /etc/passwd είναι ένα ιδιαίτερα σημαντικό αρχείο σε ένα σύστημα Unix/Linux. Περιέχει όλα τα στοιχεία όλων των χρηστών του συστήματος, πραγματικών και εικονικών (βλέπε ref). Κάθε γραμμή του αρχείου αντιστοιχεί σε έναν χρήστη. Η κάθε γραμμή έχει τη μορφή:

username:password:UID:GID:Πλήρες Όνομα:Κατάλογος HOME:προκαθορισμένο κέλυφος 

Για παράδειγμα μια γραμμή από το παραπάνω αρχείο θα μπορούσε να είναι:

asidirop:x:1001:2001:Antonis Sidiropoulos,,,:/home/asidirop:/bin/bash

Αυτή η γραμμή ορίζει τον χρήστη με username asidirop με τα παρακάτω στοιχεία:

Το δεύτερο πεδίο σε αυτό το αρχείο περιέχει πάντα το “x”. Αρχικά, σε αυτό το πεδίο αποθηκευόταν ο κωδικός του χρήστη (password) σε κρυπτογραφημένη μορφή. Όλοι οι χρήστες μπορούσαν να δουν τα περιεχόμενα αυτού του αρχείου, άρα και τους κρυπτογραφημένους κωδικούς. Μέχρι τη δεκαετία του 1990 περίπου, αυτό ήταν αρκετά ασφαλές, διότι κάποιος «κακόβουλος» χρήστης με δεδομένον τον κρυπτογραφημένο κωδικό και χρησιμοποιώντας τη μέθοδο “brute force” χρειαζόταν μήνες ή και χρόνια υπολογιστικής ισχύος, για να αποκρυπτογραφήσει τον πραγματικό κωδικό. Μετά το 1990 και με τη βελτίωση των επεξεργαστών, αυτός ο χρόνος συνεχώς μειωνόταν και με έναν υπολογιστή τύπου Pentium απαιτούνταν μερικές ημέρες μόνο για να ολοκληρωθεί η διαδικασία “brute force” και να γίνει αποκρυπτογράφηση του κωδικού ενός χρήστη. Συνεπώς, για λόγους ασφαλείας, οι κωδικοί των χρηστών δεν θα έπρεπε να βρίσκονται σε αυτό το αρχείο, ακόμη και αν ήταν σε κρυπτογραφημένη μορφή. Ορίστηκε το αρχείο /etc/shadow να περιέχει τους κρυπτογραφημένους κωδικούς των χρηστών. Επιπλέον, το αρχείο /etc/shadow δεν είναι προσβάσιμο από τους χρήστες και εφαρμόζονται βελτιωμένοι αλγόριθμοι κρυπτογράφησης.

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

Το αρχείο /etc/group περιέχει τον καθορισμό των ομάδων χρηστών του συστήματος. Η μορφή του αρχείου είναι παρόμοια με αυτήν του /etc/passwd.

groupname:x:GID:χρήστες που ανήκουν στην ομάδα 
Παράδειγμα το παρακάτω:
printer:x:5001:klefturi,asidirop,kgiak,psarnik,vassik
ορίζει ότι:

Το πεδίο GECOS

Όπως αναφέρθηκε παραπάνω, το πεδίο GECOS περιέχει το πλήρες όνομα του χρήστη και επιπλέον πληροφορίες. Υπάρχουν τρία πεδία πλέον του ονόματος του χρήστη, τα οποία διαχωρίζονται μεταξύ τους με τον χαρακτήρα «,».

asidirop:x:1001:2001:Antonis Sidiropoulos,Room-106,1984,asidirop@gmail.com:/home/asidirop:/bin/bash

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

asidirop@asidirop:~/Book$ chfn
Password:
Changing the user information for asidirop
Enter the new value, or press ENTER for the default
        Full Name: Antonis Sidiropoulos
        Room Number [Room-106]:
        Work Phone [1984]:
        Home Phone [asidirop@gmail.com]:

Όλοι οι υπόλοιποι χρήστες (του ίδιου συστήματος) μπορούν με την εντολή finger να δουν αυτά τα στοιχεία. Παλιότερα, η υπηρεσία finger ήταν διαθέσιμη και απομακρυσμένα, δηλαδή και από απομακρυσμένο σύστημα μπορούσε κάποιος να βρει πληροφορίες για έναν συγκεκριμένο χρήστη. Πλέον όμως, δεν προσφέρεται στα περισσότερα συστήματα διότι μπορεί να χρησιμοποιηθεί για συλλογή πληροφοριών σε σχέση με τους χρήστες ενός συστήματος από «κακόβουλους» απομακρυσμένους χρήστες.

root@asidirop:/home/asidirop# finger asidirop
Login: asidirop                         Name: Antonis Sidiropoulos
Directory: /home/asidirop               Shell: /bin/bash
Office: Room-106, x1984                 Home Phone: asidirop@gmail.com
Mail forwarded to asidirop@it.teithe.gr
No mail.
No Plan.