Πώς να χρησιμοποιήσετε την εντολή Linux — Εντολή Unix: Είσοδος

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

Εάν δεν δοθεί επιχείρημα, Σύνδεση ζητά το όνομα χρήστη.

Εάν ο χρήστης δεν είναι root, και εάν /etc/nologin υπάρχει, τα περιεχόμενα αυτού του αρχείου εκτυπώνονται στην οθόνη και η σύνδεση τερματίζεται. Αυτό χρησιμοποιείται συνήθως για την αποτροπή συνδέσεων κατά την κατάργηση του συστήματος.

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

Εάν ο χρήστης είναι root, τότε η σύνδεση πρέπει να πραγματοποιείται σε α tty παρατίθεται σε /etc/securetty. Οι αποτυχίες θα καταγράφονται με τη δυνατότητα syslog.

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

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

Εάν το αρχείο .hushlogin υπάρχει, τότε εκτελείται μια "αθόρυβη" σύνδεση (αυτό απενεργοποιεί τον έλεγχο αλληλογραφίας και την εκτύπωση της τελευταίας ώρας σύνδεσης και μηνύματος της ημέρας). Διαφορετικά, εάν /var/log/lastlog υπάρχει, εκτυπώνεται ο τελευταίος χρόνος σύνδεσης (και καταγράφεται η τρέχουσα σύνδεση).

Εκτελούνται τυχαία διοικητικά πράγματα, όπως ο ορισμός του UID και του GID του tty. Η μεταβλητή περιβάλλοντος TERM διατηρείται εάν υπάρχει (άλλες μεταβλητές περιβάλλοντος διατηρούνται εάν η -poption χρησιμοποιείται). Στη συνέχεια ορίζονται οι μεταβλητές περιβάλλοντος HOME, PATH, SHELL, TERM, MAIL και LOGNAME. Το PATH ορίζεται από προεπιλογή /usr/local/bin:/bin:/usr/bin:. για κανονικούς χρήστες και σε /sbin:/bin:/usr/sbin:/usr/bin για ρίζα. Τέλος, εάν δεν πρόκειται για "ήσυχη" σύνδεση, εκτυπώνεται το μήνυμα της ημέρας και το αρχείο με το όνομα του χρήστη στο /var/spool/mail θα ελεγχθεί και θα εκτυπωθεί ένα μήνυμα εάν έχει μη μηδενικό μήκος.

Στη συνέχεια ξεκινά το κέλυφος του χρήστη. Εάν δεν έχει καθοριστεί κέλυφος για τον χρήστη στο /etc/passwd, τότε /bin/shχρησιμοποιείται. Εάν δεν υπάρχει κατάλογος καθορισμένος στο /etc/passwd, τότε / χρησιμοποιείται (ο αρχικός κατάλογος ελέγχεται για το .hushlogin αρχείο που περιγράφεται παραπάνω).

Χρήση σύνδεσης

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

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

sudo είσοδος. 

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

Εντολή σύνδεσης Linux

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

su όνομα χρήστη. 

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

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

Επιλογές

  • —Χρησιμοποιείται από τον getty (8) για να πει Σύνδεση να μην καταστρέφει το περιβάλλον
  • -φά —Χρησιμοποιείται για την παράλειψη ενός δεύτερου ελέγχου ταυτότητας σύνδεσης. Αυτό συγκεκριμένα δεν λειτουργεί για root και δεν φαίνεται να λειτουργεί καλά κάτω από αυτό Linux.
  • — Χρησιμοποιείται από άλλους διακομιστές (π.χ. telnetd (8)) για να μεταβιβάσετε το όνομα του απομακρυσμένου κεντρικού υπολογιστή Σύνδεση ώστε να μπορεί να τοποθετηθεί σε utmp και wtmp. Μόνο ο υπερχρήστης μπορεί να χρησιμοποιήσει αυτήν την επιλογή.

Ειδικοί Περιορισμοί Πρόσβασης

Το αρχείο /etc/securetty παραθέτει τα ονόματα των ttys όπου επιτρέπεται η είσοδος στο root. Ένα όνομα μιας συσκευής tty χωρίς το πρόθεμα /dev/ πρέπει να καθοριστεί σε κάθε γραμμή. Εάν το αρχείο δεν υπάρχει, επιτρέπεται στο root να συνδεθεί σε οποιοδήποτε tty.

Στα περισσότερα σύγχρονα συστήματα Linux χρησιμοποιείται PAM (Pluggable Authentication Modules). Σε συστήματα που δεν χρησιμοποιούν PAM, το αρχείο /etc/usertty καθορίζει πρόσθετους περιορισμούς πρόσβασης για συγκεκριμένους χρήστες. Εάν αυτό το αρχείο δεν υπάρχει, δεν επιβάλλονται πρόσθετοι περιορισμοί πρόσβασης. Το αρχείο αποτελείται από μια ακολουθία ενοτήτων. Υπάρχουν τρεις πιθανοί τύποι ενότητας: ΤΑΞΕΙΣ, ΟΜΑΔΕΣ και ΧΡΗΣΤΕΣ. Μια ενότητα CLASSES ορίζει κατηγορίες ttys και μοτίβα ονομάτων κεντρικού υπολογιστή, μια ενότητα GROUPS ορίζει τα επιτρεπόμενα ttys και hosts σε βάση ανά ομάδα και μια ενότητα USERS ορίζει τα επιτρεπόμενα ttys και hosts για έναν χρήστη ανά χρήστη βάση.

Κάθε γραμμή σε αυτό το αρχείο δεν μπορεί να είναι μεγαλύτερη από 255 χαρακτήρες. Τα σχόλια ξεκινούν με τον χαρακτήρα # και επεκτείνονται μέχρι το τέλος της γραμμής.

Η ενότητα ΤΑΞΕΙΣ

Μια ενότητα ΤΑΞΕΙΣ ξεκινά με τη λέξη ΤΑΞΕΙΣ στην αρχή μιας γραμμής σε όλα τα κεφαλαία. Κάθε γραμμή που ακολουθεί μέχρι την έναρξη μιας νέας ενότητας ή το τέλος του αρχείου αποτελείται από μια ακολουθία λέξεων που χωρίζονται με καρτέλες ή κενά. Κάθε γραμμή ορίζει μια κατηγορία ttys και μοτίβων κεντρικού υπολογιστή.

Η λέξη στην αρχή μιας γραμμής ορίζεται ως συλλογικό όνομα για τα μοτίβα ttys και κεντρικού υπολογιστή που καθορίζονται στην υπόλοιπη γραμμή. Αυτό το συλλογικό όνομα μπορεί να χρησιμοποιηθεί σε οποιαδήποτε επόμενη ενότητα ΟΜΑΔΩΝ ή ΧΡΗΣΤΩΝ. Κανένα τέτοιο όνομα κλάσης δεν πρέπει να εμφανίζεται ως μέρος του ορισμού μιας κλάσης προκειμένου να αποφευχθούν προβλήματα με τις αναδρομικές κλάσεις.

Ένα παράδειγμα ενότητας CLASSES:

ΤΑΞΕΙΣ
myclass1 tty1 tty2
myclass2 tty3 @.foo.com.

Αυτό ορίζει τις τάξεις myclass1 και myclass2 ως αντίστοιχες δεξιές πλευρές.

Η ενότητα ΟΜΑΔΕΣ

Μια ενότητα GROUPS ορίζει επιτρεπόμενα ttys και hosts σε βάση ανά ομάδα Unix. Εάν ένας χρήστης είναι μέλος μιας ομάδας Unix σύμφωνα με τα /etc/passwd και /etc/group και μια τέτοια ομάδα αναφέρεται σε μια ενότητα GROUPS στο /etc/usertty, τότε ο χρήστης έχει πρόσβαση εάν η ομάδα είναι.

Μια ενότητα ΟΜΑΔΕΣ ξεκινά με τη λέξη ΟΜΑΔΕΣ με κεφαλαία γράμματα στην αρχή μιας γραμμής και κάθε επόμενη γραμμή είναι μια ακολουθία λέξεων που χωρίζονται με κενά ή καρτέλες. Η πρώτη λέξη σε μια γραμμή είναι το όνομα της ομάδας και οι υπόλοιπες λέξεις στη γραμμή καθορίζουν τους ttys και τους κεντρικούς υπολογιστές στους οποίους επιτρέπεται η πρόσβαση στα μέλη αυτής της ομάδας. Αυτές οι προδιαγραφές ενδέχεται να περιλαμβάνουν τη χρήση κλάσεων που ορίζονται σε προηγούμενες ενότητες CLASSES.

Ένα παράδειγμα ενότητας ΟΜΑΔΕΣ.

ΟΜΑΔΕΣ
sys tty1 @.bar.edu
stud myclass1 tty4.

Αυτό το παράδειγμα προσδιορίζει ότι τα μέλη της ομάδας sys μπορεί να συνδεθεί στο tty1 και από κεντρικούς υπολογιστές στον τομέα bar.edu. Χρήστες στην ομάδα κουμπί κολάρου μπορεί να συνδεθεί από host/ttys που καθορίζονται στην κλάση myclass1 ή από tty4.

Η ενότητα ΧΡΗΣΤΕΣ

Μια ενότητα USERS ξεκινά με τη λέξη USERS με κεφαλαία γράμματα στην αρχή μιας γραμμής και κάθε επόμενη γραμμή είναι μια ακολουθία λέξεων που χωρίζονται με κενά ή καρτέλες. Η πρώτη λέξη σε μια γραμμή είναι ένα όνομα χρήστη και αυτός ο χρήστης επιτρέπεται να συνδεθεί στο ttys και από τους κεντρικούς υπολογιστές που αναφέρονται στην υπόλοιπη γραμμή. Αυτές οι προδιαγραφές μπορεί να περιλαμβάνουν κλάσεις που ορίζονται σε προηγούμενες ενότητες CLASSES. Εάν δεν έχει καθοριστεί κεφαλίδα ενότητας στην κορυφή του αρχείου, η πρώτη ενότητα είναι προεπιλεγμένη ενότητα ΧΡΗΣΤΕΣ.

Παράδειγμα ενότητας ΧΡΗΣΤΕΣ:

ΧΡΗΣΤΕΣ
zacho tty1 @130.225.16.0/255.255.255.0
μπλε tty3 myclass2.

Αυτό επιτρέπει στον χρήστη Ζάχο συνδεθείτε μόνο στο tty1 και από κεντρικούς υπολογιστές με διευθύνσεις IP στην περιοχή 130.225.16.0 - 130.225.16.255, και χρήστη μπλε επιτρέπεται να συνδεθεί από το tty3 και οτιδήποτε ορίζεται στην κλάση myclass2.

Μπορεί να υπάρχει μια γραμμή σε μια ενότητα USERS που ξεκινά με ένα όνομα χρήστη του *. Αυτός είναι ένας προεπιλεγμένος κανόνας και θα εφαρμοστεί σε οποιονδήποτε χρήστη δεν αντιστοιχεί σε καμία άλλη γραμμή.

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

Προέλευση

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

  • Το όνομα μιας συσκευής tty χωρίς το πρόθεμα /dev/, για παράδειγμα, tty1 ή ttyS0.
  • Η συμβολοσειρά @localhost, που σημαίνει ότι ο χρήστης επιτρέπεται να κάνει telnet/rlogin από τον τοπικό υπολογιστή στον ίδιο κεντρικό υπολογιστή. Αυτό επιτρέπει επίσης στον χρήστη να εκτελέσει για παράδειγμα την εντολή: xterm -e /bin/login.
  • Ένα επίθημα ονόματος τομέα όπως @.some.dom, που σημαίνει ότι ο χρήστης μπορεί να συνδεθεί/τηλεδίκτυο από οποιονδήποτε κεντρικό υπολογιστή του οποίου το όνομα τομέα έχει το επίθημα .some.dom.
  • Μια σειρά από διευθύνσεις IPv4, γραμμένες @x.x.x.x/y.y.y.y όπου x.x.x.x είναι η διεύθυνση IP στο συνηθισμένο τετράστιχο δεκαδικός συμβολισμός και το y.y.y.y είναι μια μάσκα δυαδικών ψηφίων στην ίδια σημείωση που καθορίζει ποια bit στη διεύθυνση να συγκριθούν με την διεύθυνση IP απο απομακρυσμένος υπολογιστής. Για παράδειγμα, @130.225.16.0/255.255.254.0 σημαίνει ότι ο χρήστης μπορεί να συνδεθεί/Telnet από οποιονδήποτε κεντρικό υπολογιστή του οποίου η διεύθυνση IP βρίσκεται εντός της περιοχής 130.225.16.0 - 130.225.17.255.

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

timespec ::= '[' [':' ]* ']'
ημέρα ::= 'μον' | 'τι' | 'παντρεμένος' | 'πε' | 'παρ' | 'κάθισε' | 'ήλιος'
ώρα ::= '0' | '1' |... | '23'
Προδιαγραφή ώρας ::= | '-'
μέρα ή ώρα ::= |

Για παράδειγμα, η προέλευση [μη: Τρι: Τετ: Πεμ: Παρ: 8-17]tty3 σημαίνει ότι η σύνδεση επιτρέπεται από Δευτέρα έως Παρασκευή μεταξύ 8 και 17:59 (5:59 μ.μ.) στο tty3. Αυτό δείχνει επίσης ότι ένα εύρος ώρας a-b περιλαμβάνει όλες τις στιγμές μεταξύ a: 00 και b: 59. Μια απλή προδιαγραφή ώρας (όπως 10) σημαίνει το χρονικό διάστημα μεταξύ 10 και 10:59.

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

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

Χρησιμοποιήστε το άνδρας εντολή (% άνδρας) για να δούμε πώς α εντολή χρησιμοποιείται στον συγκεκριμένο υπολογιστή σας.