Skip to main content

Cum se utilizează comanda Linux - comandă Unix: login

Linux Tutorial for Beginners: Introduction to Linux Operating System (Mai 2024)

Linux Tutorial for Beginners: Introduction to Linux Operating System (Mai 2024)
Anonim

Conectarea este utilizată la semnarea unui sistem. De asemenea, poate fi folosit pentru a comuta de la un utilizator la altul în orice moment (cele mai moderne shell-uri au suport pentru această caracteristică încorporată în ele, cu toate acestea).

Dacă un argument nu este dat,Logare solicită numele de utilizator.

Dacă utilizatorul nu este root și dacă / etc / nologin există, conținutul acestui fișier este imprimat pe ecran, iar login-ul este terminat. Acest lucru este folosit în mod obișnuit pentru a preveni conectările când sistemul este scos din uz.

Dacă sunt specificate restricții speciale de acces pentru utilizator în / etc / usertty, acestea trebuie îndeplinite sau încercarea de conectare va fi respinsă și va fi generat un mesaj syslog. Vedeți secțiunea privind "Restricții speciale de acces".

În cazul în care utilizatorul este root, atunci autentificarea trebuie să aibă loc pe un tty listat în / etc / securetty. Eșecurile vor fi înregistrate cu facilitatea syslog.

După verificarea acestor condiții, parola va fi solicitată și verificată (dacă este necesară o parolă pentru acest nume de utilizator). Zece încercări sunt permise înainteLogare moare, dar după primele trei, răspunsul începe să devină foarte lent. Eșecurile de conectare sunt raportate prin intermediul facilității syslog. Această facilitate este, de asemenea, utilizată pentru a raporta oricare logins de rădăcină de succes.

În cazul în care există fișierul .hushlogin, se efectuează o autentificare "silențioasă" (aceasta dezactivează verificarea e-mailului și imprimarea ultimei ore de conectare și a mesajului zilei). În caz contrar, dacă / var / log / lastlog există, este imprimat ultimul timp de conectare (și înregistrarea curentă este înregistrată).

Se fac lucruri aleatorii administrative, cum ar fi setarea UID și GID-ul tty. Variabila de mediu TERM este păstrată dacă există (alte variabile de mediu sunt păstrate dacă-poption este folosit). Apoi sunt setate variabilele HOME, PATH, SHELL, TERM, MAIL și LOGNAME. PATH implicit la / usr / local / bin: / bin: / usr / bin: . pentru utilizatorii normali și la / sbin: / bin: / usr / sbin: / usr / bin pentru root. În cele din urmă, dacă nu este o autentificare "silențioasă", va fi tipărit mesajul zilei și va fi bifat fișierul cu numele utilizatorului din / var / spool / mail și un mesaj imprimat dacă are o lungime diferită de zero.

Apoi, shell-ul utilizatorului este pornit. Dacă nu este specificată nicio coajă pentru utilizator în / etc / passwd, atunci / bin / sh este folosit. Dacă nu există niciun director specificat în / Etc / passwd , atunci / este utilizat (directorul home este verificat pentru .hushlogin fișierul descris mai sus).

Opțiuni

  • -p: Folosit de getty (8) pentru a spuneLogare nu pentru a distruge mediul
  • -f: Folosit pentru a sări peste o autentificare de autentificare secundă. Acest lucru nu funcționează în mod special pentru root și nu pare să funcționeze bine sub Linux.
  • -h: Utilizat de alte servere (adică, telnetd (8) ) pentru a transmite numele gazdei la distanțăLogare astfel încât să poată fi plasate în utmp și wtmp. Doar superuserul poate folosi această opțiune.

Restricții speciale de acces

Fișierul / etc / securetty listează numele ttys unde este permisă accesarea rădăcinilor. Este necesar să se precizeze câte un nume al unui dispozitiv tty fără / dev / prefix pe fiecare linie. Dacă fișierul nu există, root este permis să se conecteze la orice tty.

Pe cele mai moderne sisteme Linux sunt utilizate PAM (Pluggable Authentication Modules). În sistemele care nu utilizează PAM, fișierul / etc / usertty specifică restricții de acces suplimentare pentru anumiți utilizatori. Dacă acest fișier nu există, nu sunt impuse restricții suplimentare de acces. Fișierul constă dintr-o secvență de secțiuni. Există trei tipuri posibile de secțiuni: CLASE, GRUPURI și UTILIZATORI. O secțiune CLASSES definește clase de șabloane ale șabloanelor și șabloanelor, o secțiune GRUP definește ttys și gazde permise pe bază de grup și o secțiune UTILIZATORI definește ttys și gazde permise pe bază de utilizator.

Fiecare rând din acest fișier poate să nu depășească 255 de caractere. Comentariile încep cu # caractere și se extind până la sfârșitul liniei.

Secțiunea CLASE

O secțiune CLASE începe cu cuvântul CLASE la începutul unei linii în toate majusculele. Următoarea linie până la începerea unei noi secțiuni sau la sfârșitul fișierului constă dintr-o secvență de cuvinte separate de file sau spații. Fiecare linie definește o clasă de tipuri tty și gazde.

Cuvântul de la începutul unei linii devine definit ca un nume colectiv pentru modelele ttys și gazdă specificate la restul liniei. Acest nume colectiv poate fi folosit în orice secțiune GRUP sau UTILIZATOR. Nu există o astfel de denumire de clasă ca parte a definiției unei clase, pentru a evita problemele cu clasele recursive.

Un exemplu de secțiune CLASE:

CLASEmyclass1 tty1 tty2myclass2 tty3 @ .foo.com

Aceasta definește clasele MyClass1 și MyClass2 ca și părțile drepte corespunzătoare.

Secțiunea "Grupuri"

O secțiune GRUP definește ttys și gazde permise pe baza unui grup Unix. Dacă un utilizator este membru al unui grup Unix în conformitate cu / etc / passwd și / etc / group și un astfel de grup este menționat într-o secțiune GRUZĂ în / etc / usertty, atunci utilizatorului i se acordă acces dacă grupul este.

Secțiunea "Grupuri" pornește de la cuvântul "GRUPURI" în toate majuscule la începutul unei linii, iar fiecare linie următoare este o secvență de cuvinte separate prin spații sau file. Primul cuvânt de pe o linie este numele grupului, iar restul cuvintelor de pe linie specifică ttys și gazdele unde membrii acelui grup au acces. Aceste specificații pot implica utilizarea unor clase definite în secțiunile anterioare CLASE.

O secțiune de exemplu GRUPURI.

GRUPULsys tty1 @ .bar.edustud myclass1 tty4

Acest exemplu specifică faptul că membrii grupului sys se poate conecta la tty1 și de la gazde în domeniul bar.edu. Utilizatorii din grup crampon se poate loga de la hosts / ttys specificate în clasa myclass1 sau din tty4.

Sectiunea UTILIZATORI

Secțiunea UTILIZATORI începe cu cuvântul UTILIZATORI cu toate majusculele la începutul unei linii și fiecare linie următoare este o secvență de cuvinte separate prin spații sau file. Primul cuvânt de pe o linie este un nume de utilizator și acel utilizator are dreptul să se conecteze la ttys și la gazdele menționate pe restul liniei. Aceste specificații pot implica clase definite în secțiunile anterioare CLASE. Dacă nu este specificat niciun antet de secțiune în partea de sus a fișierului, prima secțiune este implicită pentru a fi o secțiune USERS.

Un exemplu de secțiune USERS:

UTILIZATORIpăstrează tty1 @ 130.225.16.0 / 255.255.255.0albastru tty3 myclass2

Acest lucru permite utilizatorului zacho conectați-vă numai pe tty1 și de la gazdele cu adrese IP din interval 130.225.16.0 - 130.225.16.255 , și utilizator albastru este permis să se conecteze la tty3 și orice este specificat în clasă MyClass2 .

Este posibil să existe o linie într-o secțiune USERS începând cu un nume de utilizator de * . Aceasta este o regulă implicită și va fi aplicată oricărui utilizator care nu se potrivește cu nici o altă linie.

Dacă atât linia UTILIZATORI, cât și GRUPUL GRUPURILOR se potrivesc cu un utilizator, atunci utilizatorului i se permite accesul la uniunea tuturor ttys / gazdei menționate în aceste specificații.

originile

Specificațiile tipului tty și a gazdei utilizate în specificarea clasei, grupului și accesului utilizatorilor sunt numite origini. Un șir de origine poate avea unul dintre următoarele formate:

  • Numele unui dispozitiv tty fără prefixul / dev / prefix, de exemplu, tty1 sau ttyS0 .
  • Stringul @localhost, ceea ce înseamnă că utilizatorul este autorizat să ruleze telnet / rlogin din gazda locală către aceeași gazdă. De asemenea, permite utilizatorului, de exemplu, să execute comanda: xterm -e / bin / login.
  • Un sufix de nume de domeniu, cum ar fi @ .some.dom, ceea ce înseamnă că utilizatorul poate rlogin / telnet de la orice gazdă al cărui nume de domeniu are sufixul .some.dom.
  • O gamă de adrese IPv4, scrise @ xxxx / yyyy în cazul în care xxxx este adresa IP în nota zecimală zecimală zecimală și yyyy este o mască bit în aceeași notație care specifică care biți din adresă se compară cu adresa IP a gazdei la distanță . De exemplu, @130.225.16.0/255.255.254.0 înseamnă că utilizatorul poate rlogin / telnet de la orice gazdă a cărei adresă IP se află în raza de acoperire 130.225.16.0 - 130.225.17.255 .

Oricare dintre originile de mai sus poate fi prefixată de o specificație de timp conform sintaxei:

timespec :: = '' ':' * ''zi :: = 'mon' | 'tue' | "nunta" | 'thu' | "fri" "așezat" 'soare'oră :: = '0' "1" … | '23'hourspec :: = | '-' zi-oră :: = |

De exemplu, originea Mon: tue: wed: thu: fri: 8-17 tty3 înseamnă că datele de conectare sunt permise în zilele de luni până vineri între orele 8 și 17:59 (17:59) pe tty3. Acest lucru arată, de asemenea, că o gamă de ore a-b include toate momentele dintre a: 00 și b: 59. O specificație de o oră (cum ar fi 10) înseamnă intervalul de timp între 10 și 10:59.

Nu specificând niciun prefix temporal pentru un tty sau gazdă înseamnă că autentificarea de la acea origine este permisă în orice moment. Dacă dați un prefix de timp, asigurați-vă că specificați un set de zile și unul sau mai multe ore sau intervale orare. O specificație de timp nu poate include nici un spațiu alb.

Dacă nu este dată nici o regulă implicită, atunci utilizatorii care nu se potrivesc cu nici o linie / etc / usertty au permisiunea de a se conecta de oriunde este comportamentul standard.

Important: Foloseșteomcomandă ( % om ) pentru a vedea cum se utilizează o comandă pe computerul dvs. particular.