Skip to content

Jak používat příkaz Linux – příkaz Unix: Přihlášení

4 de Srpen de 2021
login word and alphabet letter beads 955079750 5b19670c1d64040037af3801

Přihlášení se používá při přihlašování do systému. Lze jej také kdykoli použít k přepnutí z jednoho uživatele na druhého (většina moderních prostředí však má tuto funkci integrovanou). Pokud argument není uveden, přihlásit se výzvy k zadání uživatelského jména. Pokud uživatel není root a pokud /etc/nologin existuje, obsah tohoto souboru se vytiskne na obrazovku a přihlášení se ukončí. To se obvykle používá k zabránění přihlášení, když je systém vyřazen. Pokud jsou pro uživatele zadána speciální omezení přístupu v /etc/usertty, tyto musí být splněny, jinak bude pokus o přihlášení odepřen a bude vygenerována zpráva syslog. Pokud je uživatel root, pak musí přihlášení proběhnout na tty uvedeny v /etc/securetty. Selhání budou zaznamenána pomocí zařízení syslog. Po kontrole těchto podmínek bude heslo vyžádáno a zkontrolováno (pokud je pro toto uživatelské jméno vyžadováno heslo). Předtím je povoleno deset pokusů přihlásit se zemře, ale po prvních třech se reakce začne velmi zpomalovat. Selhání přihlášení je hlášeno prostřednictvím zařízení syslog. Toto zařízení se také používá k hlášení všech úspěšných kořenových přihlášení. Pokud soubor .hushlogin existuje, pak se provede „tiché“ přihlášení (tím se deaktivuje kontrola pošty a tisk času posledního přihlášení a zprávy dne). Jinak kdyby /var/log/lastlog existuje, vytiskne se poslední čas přihlášení (a zaznamená se aktuální přihlášení). Provádějí se náhodné administrativní věci, jako je nastavení UID a GID serveru. Proměnná prostředí TERM je zachována, pokud existuje (ostatní proměnné prostředí jsou zachovány, pokud -populace se používá). Poté se nastaví proměnné prostředí HOME, PATH, SHELL, TERM, MAIL a LOGNAME. PATH je ve výchozím nastavení /usr/local/bin:/bin:/usr/bin :. pro běžné uživatele a do /sbin:/bin:/usr/sbin:/usr/bin pro root. Nakonec, pokud se nejedná o „tiché“ přihlášení, vytiskne se zpráva dne a soubor se jménem uživatele v /var/spool/mail zkontroluje se a vytiskne se zpráva, pokud má nenulovou délku. Poté se spustí shell uživatele. Pokud pro uživatele není zadán žádný shell /etc/passwd, pak /bin/sh se používá. Pokud v /etc /passwd není zadán žádný adresář, pak / je použit (domovský adresář je zkontrolován na .hushlogin soubor popsaný výše).

Pomocí přihlášení

Technické detaily jsou skvělé pro vývojáře a správce systému, ale nic z toho neodpovídá tomu, jak by běžný uživatel použil příkaz přihlášení. Odpověď na tuto otázku je naštěstí poměrně jednoduchá; to bys neudělal. Pokud se přihlašujete k počítači se systémem Linux bez grafické plochy, systém automaticky použije přihlašovací příkaz, aby vám poskytl výzvu k přihlášení. Příkaz můžete zkusit použít sami spuštěním příkazu „sudo“. sudo přihlášení

Zobrazí se stejná výzva k přihlášení jako při přístupu do systému příkazového řádku.

To znamená, že to opravdu není praktické. Pokud se chcete přihlásit jako jiný uživatel, použijte příkaz „su“, například: su username

Odtud byste zadali heslo tohoto uživatele. Pokud se chcete do přihlašovacího příkazu ponořit hlouběji, pokračujte ve čtení a rozebírejte jeho možnosti.

Možnosti

  • -p Používá to getty (8) k vyprávění přihlásit se nezničit životní prostředí
  • -F Slouží k přeskočení druhého přihlášení. Toto konkrétně nefunguje pro root a nezdá se, že by fungovalo dobře pod Linuxem.
  • -h Používají jiné servery (tj. telnetd (8)) předat jméno vzdáleného hostitele přihlásit se takže může být umístěn v utmp a wtmp. Tuto možnost může použít pouze superuživatel.

Zvláštní omezení přístupu

Soubor /etc /securetty uvádí názvy ttys, kam se root může přihlásit. Na každém řádku musí být uveden jeden název zařízení tty bez předpony /dev /. Pokud soubor neexistuje, root se může přihlásit k jakémukoli tty. Na většině moderních systémů Linux se používá PAM (Pluggable Authentication Modules). V systémech, které nepoužívají PAM, soubor /etc /usertty určuje další omezení přístupu pro konkrétní uživatele. Pokud tento soubor neexistuje, nejsou uložena žádná další omezení přístupu. Soubor se skládá ze sekvence sekcí. Existují tři možné typy sekcí: TŘÍDY, SKUPINY a UŽIVATELÉ. Sekce CLASSES definuje třídy ttys a vzorů názvů hostitelů, sekce GROUPS definuje povolené ttys a hostitele na základě skupiny a sekce USERS definuje povolené ttys a hostitele na základě jednotlivých uživatelů. Každý řádek v tomto souboru nesmí být delší než 255 znaků. Komentáře začínají znakem # a končí na konci řádku.

Sekce TŘÍDY

Sekce TŘÍDY začíná slovem TŘÍDY na začátku řádku velkými písmeny. Každý následující řádek až do začátku nové sekce nebo konce souboru se skládá ze sekvence slov oddělených tabulátory nebo mezerami. Každý řádek definuje třídu ttys a hostitelské vzory. Slovo na začátku řádku se definuje jako souhrnný název pro vzory a hostitelské vzory uvedené na zbytku řádku. Tento souhrnný název lze použít v jakékoli další sekci SKUPINY nebo UŽIVATELÉ. Žádný takový název třídy se nesmí vyskytovat jako součást definice třídy, aby se předešlo problémům s rekurzivními třídami. Příklad sekce CLASSES: CLASSES
myclass1 tty1 tty2
myclass2 tty3 @.foo.com

To definuje třídy myclass1 a myclass2 jako odpovídající pravé strany.

Sekce SKUPINY

Sekce SKUPINY definuje povolené typy a hostitele na základě skupiny Unix. Pokud je uživatel členem skupiny Unix podle /etc /passwd a /etc /group a taková skupina je uvedena v sekci SKUPINY v /etc /usertty, pak je uživateli udělen přístup, pokud skupina je. Sekce SKUPINY začíná slovem SKUPINY velkými písmeny na začátku řádku a každý následující řádek je posloupnost slov oddělených mezerami nebo tabulátory. První slovo na řádku je název skupiny a zbývající slova na řádku udávají typy a hostitele, ke kterým mají členové této skupiny přístup. Tyto specifikace mohou zahrnovat použití tříd definovaných v předchozích oddílech CLASSES. Příklad sekce SKUPINY. SKUPINY
sys tty1 @.bar.edu
stud myclass1 tty4

Tento příklad určuje, že členové skupiny sys se může přihlásit na tty1 a od hostitelů v doméně bar.edu. Uživatelé ve skupině stud se může přihlásit z hostitelů/ttys uvedených ve třídě myclass1 nebo z tty4.

Sekce UŽIVATELÉ

Sekce UŽIVATELÉ začíná slovem UŽIVATELÉ velkými písmeny na začátku řádku a každý následující řádek je posloupnost slov oddělených mezerami nebo tabulátory. První slovo na řádku je uživatelské jméno a tento uživatel se může přihlásit na serverech ttys a od hostitelů uvedených na zbytku řádku. Tyto specifikace mohou zahrnovat třídy definované v předchozích oddílech TŘÍD. Pokud v horní části souboru není zadáno záhlaví oddílu, bude první sekcí výchozí sekce UŽIVATELÉ. Příklad sekce UŽIVATELÉ: UŽIVATELÉ
zacho tty1 @130.225.16.0/255.255.255.0
modrá tty3 myclass2

To umožňuje uživateli zacho přihlaste se pouze na tty1 a od hostitelů s IP adresami v dosahu 130.225.16.0 – 130.225.16.255a uživatel modrý je povoleno přihlásit se z tty3 a všeho, co je ve třídě uvedeno myclass2. V sekci UŽIVATELÉ může být řádek začínající uživatelským jménem *. Toto je výchozí pravidlo a bude použito pro všechny uživatele, kteří neodpovídají žádnému jinému řádku. Pokud se uživatelům shoduje řádek USERS i GROUPS, pak je uživateli povolen přístup ze spojení všech ttys/hosts uvedených v těchto specifikacích.

Původy

Specifikace vzoru tty a hostitele použité ve specifikaci tříd, skupin a přístupu uživatelů se nazývají počátky. Počáteční řetězec může mít jeden z těchto formátů:

  • Název zařízení tty bez předpony / dev /, například tty1 nebo ttyS0.
  • Řetězec @localhost, což znamená, že uživateli je povoleno telnet/rlogin z místního hostitele na stejného hostitele. To také uživateli umožňuje například spustit příkaz: xterm -e /bin /přihlášení.
  • Přípona názvu domény, například @.some.dom, což znamená, že se uživatel může přihlásit/telnet z libovolného hostitele, jehož název domény má příponu .some.dom.
  • Rozsah adres IPv4, zapsaný @xxxx/rrrr, kde xxxx je adresa IP v obvyklém tečkovaném čtyřúhelníkovém zápisu, a rrrr je bitová maska ​​ve stejném zápisu určující, které bity v adrese se mají porovnávat s adresou IP vzdáleného hostitele . Například, @130.225.16.0/255.255.254.0 znamená, že uživatel může rlogin/telnet z libovolného hostitele, jehož IP adresa je v dosahu 130.225.16.0 – 130.225.17.255.

Kterýkoli z výše uvedených původů může být předponován časovou specifikací podle syntaxe: timespec :: = ‚[‚ [‚:‘ ]* ‚]‘
den :: = ‚po‘ | ‚út‘ | ‚oženit‘ | ‚čt‘ | ‚pá‘ | ‚seděl‘ | ‚slunce‘
hodina :: = ‚0‘ | ‚1‘ | … | ’23‘
hourspec :: = | ‚-‚
den nebo hodina :: = |

Například původ [mon:tue:wed:thu:fri:8-17]tty3 znamená, že přihlášení je povoleno od pondělí do pátku mezi 8 a 17:59 (17:59) na tty3. To také ukazuje, že hodinový rozsah ab zahrnuje všechny momenty mezi a: 00 a b: 59. Specifikace jedné hodiny (například 10) znamená časové rozpětí mezi 10 a 10:59. Pokud neurčíte žádnou časovou předponu pro hostitele nebo hostitele, znamená to, že přihlášení z tohoto původu je povoleno kdykoli. Pokud zadáte časovou předponu, nezapomeňte zadat jak sadu dnů, tak jednu nebo více hodin nebo hodinových rozsahů. Specifikace času nesmí obsahovat prázdné místo. Pokud není zadáno žádné výchozí pravidlo, uživatelé, kteří neodpovídají žádnému řádku /etc /usertty, se mohou přihlásit odkudkoli, stejně jako standardní chování. Použijte muž příkaz (% muž), abyste zjistili, jak se příkaz používá ve vašem konkrétním počítači.