Skip to main content

Sådan bruges Linux Command - Unix Command: login

In depth with Dana White: McGregor, Diaz, Poirier, Till and more - UFC 229 (Kan 2024)

In depth with Dana White: McGregor, Diaz, Poirier, Till and more - UFC 229 (Kan 2024)
Anonim

Login bruges, når du logger på et system. Det kan også bruges til at skifte fra en bruger til en anden til enhver tid (de fleste moderne skaller har støtte til denne funktion indbygget i dem, dog).

Hvis et argument ikke er givet,Log på beder om brugernavnet.

Hvis brugeren ikke er root, og hvis / etc / nologin eksisterer, udskrives indholdet af denne fil til skærmen, og login er afsluttet. Dette bruges typisk til at forhindre logins, når systemet tages ned.

Hvis der er angivet specifikke adgangsbegrænsninger for brugeren i / etc / usertty, skal disse være opfyldt, eller login-forsøget nægtes, og en syslog-meddelelse bliver genereret. Se afsnittet "Særlige adgangsrestriktioner".

Hvis brugeren er root, skal login forekomme på en tty, der er angivet i / etc / securetty. Fejl vil blive logget med syslog faciliteten.

Når disse betingelser er blevet kontrolleret, vil adgangskoden blive bedt om og kontrolleret (hvis en adgangskode er påkrævet for dette brugernavn). Ti forsøg er tilladt førLog på dør, men efter de første tre begynder svaret at blive meget langsomt. Loginfejl rapporteres via syslog faciliteten. Denne facilitet bruges også til at rapportere eventuelle vellykkede root logins.

Hvis filen .hushlogin eksisterer, udføres der et "roligt" login (dette deaktiverer kontrol af post og udskrivning af sidste logintid og meddelelsen om dagen). Ellers, hvis / var / log / lastlog eksisterer, udskrives den sidste log-in tid (og det aktuelle login er registreret).

Tilfældige administrative ting, som f.eks. Indstilling af UID og GID for tty'en udføres. TERM-miljøvariablen bevares, hvis den findes (andre miljøvariabler bevares, hvis-poption anvendes). Derefter er HOME, PATH, SHELL, TERM, MAIL og LOGNAME miljøvariabler indstillet. PATH standard til / usr / local / bin: / bin: / usr / bin: . for normale brugere, og til / sbin: / bin: / usr / sbin: / usr / bin for root. Sidst, hvis dette ikke er et "roligt" login, udskrives dagens besked, og filen med brugerens navn i / var / spool / mail bliver tjekket, og en meddelelse udskrives, hvis den har en længde på nul.

Brugerens skal er derefter startet. Hvis ingen shell er angivet for brugeren i / etc / passwd, så / bin / sh anvendes. Hvis der ikke er nogen mappe angivet i / Etc / passwd , derefter / bruges (hjemmappen er tjekket for .hushlogin fil beskrevet ovenfor).

Muligheder

  • -p: Bruges af getty (8) at fortælleLog på ikke at ødelægge miljøet
  • -f: Brugt til at springe over en anden login-godkendelse. Dette virker specifikt ikke for rod, og synes ikke at virke godt under Linux.
  • -h: Bruges af andre servere (dvs. telnetd (8) ) for at videregive fjernbetjeningens navn tilLog på så det kan placeres i udmp og wtmp. Kun superbrugeren må bruge denne indstilling.

Særlige adgangsrestriktioner

Filen / etc / securetty angiver navnene på de ttys, hvor root er tilladt at logge ind. Et navn på en tty-enhed uden / dev / præfiks skal angives på hver linje. Hvis filen ikke findes, er root tilladt at logge ind på en hvilken som helst tty.

På de fleste moderne Linux-systemer anvendes PAM (Pluggable Authentication Modules). På systemer, der ikke bruger PAM, angiver filen / etc / usertty yderligere adgangsbegrænsninger for bestemte brugere. Hvis denne fil ikke findes, er der ikke pålagt yderligere adgangsbegrænsninger. Filen består af en sekvens af sektioner. Der er tre mulige sektionstyper: KLASSER, GRUPPER OG BRUGERE. En klasse klasser definerer klasser af ttys og værtsnavn mønstre. En gruppe sektioner definerer tilladte ttys og værter pr. Gruppebasis, og en USERS sektion definerer tilladte ttys og værter pr. Bruger.

Hver linje i denne fil ind må ikke være mere end 255 tegn. Kommentarer starter med # tegn og strækker sig til slutningen af ​​linjen.

KLASSESektionen

Et afsnit om klasser begynder med ordet CLASSES i starten af ​​en linje i alle store tilfælde. Hver følgende linje indtil starten af ​​et nyt afsnit eller slutningen af ​​filen består af en række ord adskilt af faner eller mellemrum. Hver linje definerer en klasse af ttys og værtsmønstre.

Ordet i begyndelsen af ​​en linje defineres som et kollektivt navn for de ttys og værtsmønstre, der er angivet i resten af ​​linjen. Dette kollektive navn kan bruges i alle efterfølgende GRUPPER eller BRUGER-sektioner. Intet sådant klassenavn skal forekomme som led i definitionen af ​​en klasse for at undgå problemer med rekursive klasser.

Et eksempel på KLASSESektion:

KLASSERmyclass1 tty1 tty2myclass2 tty3 @ .foo.com

Dette definerer klasserne myclass1 og myclass2 som de tilsvarende højre sider.

GRUPPER AFSNITEN

En gruppe sektioner definerer tilladte ttys og værter på en Unix-gruppebasis. Hvis en bruger er medlem af en Unix-gruppe i henhold til / etc / passwd og / etc / group, og en sådan gruppe er nævnt i en GRUPPER-sektion i / etc / usertty, får brugeren adgang, hvis gruppen er.

En gruppe GRUPPER starter med ordet GRUPPER i hele hovedsagen ved starten af ​​en linje, og hver efterfølgende linje er en række ord adskilt af mellemrum eller faner. Det første ord på en linje er navnet på gruppen, og resten af ​​ordene på linjen angiver de ttys og værter, hvor medlemmer af gruppen har adgang. Disse specifikationer kan indebære brugen af ​​klasser defineret i tidligere KLASSE sektioner.

Et eksempel GRUPPER sektion.

GRUPPERsys tty1 @ .bar.edustud myclass1 tty4

Dette eksempel angiver, at medlemmer af gruppen sys kan logge ind på tty1 og fra værter i bar.edu-domænet. Brugere i gruppe stud kan logge ind fra værter / ttys angivet i klassen myclass1 eller from tty4.

BRUGEREN Sektion

En BRUGER-sektion starter med ordet USERS i hele hovedsagen ved starten af ​​en linje, og hver efterfølgende linje er en række ord adskilt af mellemrum eller faner. Det første ord på en linje er et brugernavn, og denne bruger har lov til at logge ind på ttys og fra værterne nævnt på resten af ​​linjen. Disse specifikationer kan indeholde klasser defineret i tidligere KLASSES-sektioner. Hvis der ikke er angivet en sektionsoverskrift øverst i filen, er den første sektion som standard en USERS-sektion.

Et eksempel på USERS sektion:

BRUGEREzacho tty1 @ 130.225.16.0 / 255.255.255.0blå tty3 myclass2

Dette tillader brugeren Zacho login kun på tty1 og fra værter med IP-adresser i området 130.225.16.0 - 130.225.16.255 , og bruger blå Det er tilladt at logge ind fra tty3 og hvad der er angivet i klassen myclass2 .

Der kan være en linje i en USERS sektion, der starter med et brugernavn på * . Dette er en standardregel, og den vil blive anvendt til enhver bruger, der ikke matcher nogen anden linje.

Hvis både en USERS-linje og GROUPS-linjen passer til en bruger, er brugeren tilladt adgang fra foreningen af ​​alle de ttys / værter, der er nævnt i disse specifikationer.

Origins

De tty- og værtsmønsterspecifikationer, der anvendes i specifikationen af ​​klasser, gruppe og brugeradgang, kaldes oprindelse. En oprindelsestreng kan have et af disse formater:

  • Navnet på en tty-enhed uden / dev / prefixet, for eksempel, tty1 eller ttyS0 .
  • Strengen @ lochost, hvilket betyder at brugeren har lov til at telnet / rlogin fra den lokale vært til den samme vært. Dette tillader også brugeren at for eksempel køre kommandoen: xterm -e / bin / login.
  • Et domænenavs suffiks som @ .some.dom, hvilket betyder at brugeren kan rlogin / telnet fra enhver vært, hvis domænenavn har suffixet .some.dom.
  • En række IPv4 adresser, skrevet @ xxxx / yyyy hvor xxxx er IP-adressen i den sædvanlige stiplede quad decimal notation, og yyyy er en bitmask i samme notation med angivelse af hvilke bits i adressen der skal sammenlignes med den eksterne vært . For eksempel, @130.225.16.0/255.255.254.0 betyder, at brugeren kan rlogin / telnet fra enhver vært, hvis IP-adresse er i intervallet 130.225.16.0 - 130.225.17.255 .

En hvilken som helst af ovennævnte oprindelse kan være præfikset af en tidsspecifikation i henhold til syntaksen:

timespec :: = '' ':' * ''dag :: = 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat' | 'sol'time :: = '0' | '1' | … | '23'hourspec :: = | '-' dag eller time :: = |

For eksempel oprindelsen Mon: tue: wed: tor: Fre: 8-17 tty3 betyder at login er tilladt mandag til fredag ​​mellem kl. 8 og 17:59 (5:59 p.m.) på tty3. Dette viser også, at et timeområde a-b inkluderer alle øjeblikke mellem a: 00 og b: 59. En enkelt times specifikation (f.eks. 10) betyder tidsrummet mellem 10 og 10:59.

Hvis du ikke angiver et hvilket som helst tidspunkt præfiks for en tty eller vært betyder login fra denne oprindelse til enhver tid. Hvis du giver et prefix, skal du sørge for at angive både et sæt dage og en eller flere timer eller timeområder. En tidsspecifikation må ikke indeholde noget hvidt rum.

Hvis der ikke er angivet en standardregel, kan brugere, der ikke matcher en hvilken som helst linje / etc / usertty, logge ind fra hvor som helst som standardadfærd.

Vigtig: Brugmandkommando ( % mand ) for at se, hvordan en kommando bruges på din computer.