Logowanie jest używane podczas logowania do systemu. Może być również użyty do przełączania się z jednego użytkownika na inny w dowolnym momencie (większość współczesnych powłok obsługuje tę wbudowaną funkcję).
Jeśli argument nie zostanie podany,Zaloguj Się pyta o nazwę użytkownika.
Jeśli użytkownik nie jest rootem i jeśli istnieje / etc / nologin, zawartość tego pliku zostanie wydrukowana na ekranie, a logowanie zostanie zakończone. Zwykle jest to używane do zapobiegania logowaniom podczas usuwania systemu.
Jeśli określono specjalne ograniczenia dostępu dla użytkownika w / etc / usertty, muszą one zostać spełnione lub próba logowania zostanie odrzucona i zostanie wygenerowany komunikat syslog. Zobacz sekcję "Specjalne ograniczenia dostępu".
Jeśli użytkownik jest rootem, logowanie musi się odbywać na tty wymienionej w / etc / securetty. Błędy będą rejestrowane za pomocą funkcji syslog.
Po sprawdzeniu tych warunków hasło zostanie zażądane i sprawdzone (jeśli dla tej nazwy użytkownika wymagane jest hasło). Dziesięć prób jest dozwolonych wcześniejZaloguj Się umiera, ale po pierwszych trzech reakcjach zaczyna się bardzo powoli. Błędy logowania są zgłaszane za pośrednictwem funkcji syslog. Ta funkcja jest również używana do zgłaszania wszelkich udanych logowań root.
Jeśli plik .hushlogin istnieje, wykonywane jest "ciche" logowanie (wyłącza to sprawdzanie poczty i drukowanie ostatniego loginu i wiadomości dnia). W przeciwnym razie, jeśli istnieje / var / log / lastlog, drukowany jest ostatni czas logowania (i rejestrowany jest bieżący login).
Wykonywane są losowe czynności administracyjne, takie jak ustawienie UID i GID w tty. Zmienna środowiskowa TERM jest zachowana, jeśli istnieje (pozostałe zmienne środowiskowe są zachowywane, jeśli-poption jest używany). Następnie ustawiane są zmienne środowiskowe HOME, PATH, SHELL, TERM, MAIL i LOGNAME. Domyślnie PATH to / usr / local / bin: / bin: / usr / bin: . dla zwykłych użytkowników oraz do / sbin: / bin: / usr / sbin: / usr / bin dla root. Na koniec, jeśli nie jest to "ciche" logowanie, wiadomość dnia jest drukowana, a plik z nazwą użytkownika w / var / spool / mail zostanie sprawdzony, a komunikat wydrukowany, jeśli ma niezerową długość.
Powłoka użytkownika zostanie uruchomiona. Jeśli nie podano powłoki dla użytkownika w / etc / passwd, to / bin / sh jest używany. Jeśli nie ma katalogu określonego w / etc / passwd , następnie / jest używany (katalog domowy jest zaznaczony dla .hushlogin plik opisany powyżej).
Opcje
- -p: Używany przez getty (8) do opowiedzeniaZaloguj Się nie niszczyć środowiska
- -fa: Służy do pomijania drugiego uwierzytelnienia logowania. To w szczególności nie działa dla roota i wygląda na to, że nie działa dobrze pod Linuksem.
- -h: Używany przez inne serwery (np. telnetd (8) ), aby przekazać nazwę zdalnego hosta doZaloguj Się aby mógł być umieszczony w utmp i wtmp. Tylko superużytkownik może korzystać z tej opcji.
Specjalne ograniczenia dostępu
Plik / etc / securetty zawiera nazwy ttys, do których root może się logować. W każdym wierszu należy podać jedną nazwę urządzenia tty bez / dev / prefix. Jeśli plik nie istnieje, root może logować się na dowolnym tty.
W większości nowoczesnych systemów Linux jest używany PAM (Pluggable Authentication Modules). W systemach, które nie korzystają z PAM, plik / etc / usertty określa dodatkowe ograniczenia dostępu dla określonych użytkowników. Jeśli ten plik nie istnieje, nie nałożono żadnych dodatkowych ograniczeń dostępu. Plik składa się z sekwencji sekcji. Istnieją trzy możliwe typy sekcji: KLASY, GRUPY i UŻYTKOWNICY. Sekcja KLASY definiuje klasy wzorców tty i nazw hostów, sekcja GRUPY definiuje dozwolone tty i hosty dla poszczególnych grup, a sekcja UŻ YTKOWNICY definiuje dozwolone tty i hosty dla każdego użytkownika.
Każda linia w tym pliku nie może mieć więcej niż 255 znaków. Komentarze zaczynają się od znaku # i kończą się na końcu linii.
Sekcja KLASY
Sekcja CLASSES zaczyna się od słowa CLASSES na początku linii we wszystkich wielkich literach. Każda kolejna linia, aż do rozpoczęcia nowej sekcji lub końca pliku, składa się z sekwencji słów rozdzielonych tabulatorami lub spacjami. Każda linia definiuje klasę wzorców tty i hosta.
Słowo na początku linii zostaje zdefiniowane jako nazwa zbiorcza dla wzorców tty i hostów określonych w pozostałej części linii. Ta zbiorcza nazwa może być używana w kolejnych sekcjach GROUPS lub UŻYTKOWNICY. Żadna taka nazwa klasy nie musi występować jako część definicji klasy, aby uniknąć problemów z klasami rekursywnymi.
Przykład sekcji KLASY:
KLASYmyclass1 tty1 tty2myclass2 tty3 @ .foo.com
To definiuje klasy myclass1 i myclass2 jako odpowiednie strony po prawej stronie. Sekcja GROUPS definiuje dozwolone tty i hosty na podstawie grupy Unix. Jeśli użytkownik jest członkiem grupy Unix zgodnie z / etc / passwd i / etc / group, a taka grupa jest wymieniona w sekcji GROUPS w / etc / usertty, to użytkownik ma dostęp, jeśli jest to grupa. Sekcja GROUPS zaczyna się od słowa GROUPS we wszystkich wielkich literach na początku wiersza, a każda następna linia jest sekwencją słów oddzielonych spacjami lub tabulacjami. Pierwsze słowo w wierszu to nazwa grupy, a pozostałe słowa w wierszu określają tty i hosty, do których członkowie tej grupy mają dostęp. Specyfikacje te mogą obejmować wykorzystanie klas zdefiniowanych w poprzednich sekcjach KLASY. Przykładowa sekcja GROUPS. GRUPYsys tty1 @ .bar.edustud myclass1 tty4
Ten przykład określa członków grupy sys może logować się na tty1 i z hostów w domenie bar.edu. Użytkownicy w grupie stadnina może logować się z hostów / tty określonych w klasie myclass1 lub tty4. Sekcja UŻYTKOWNICY rozpoczyna się od słowa UŻYTKOWNICY we wszystkich wielkich literach na początku wiersza, a każda następna linia jest sekwencją słów oddzielonych spacjami lub tabulacjami. Pierwsze słowo w linii jest nazwą użytkownika i ten użytkownik może logować się na tty i od hostów wymienionych w dalszej części linii. Specyfikacje te mogą obejmować klasy zdefiniowane w poprzednich sekcjach KLASY. Jeśli nagłówek sekcji nie jest określony u góry pliku, pierwszą sekcją będzie sekcja USERS. Przykład sekcji UŻYTKOWNICY: USERSzacho tty1 @ 130.225.16.0 / 255.255.255.0niebieski tty3 myclass2
To pozwala użytkownikowi zacho zaloguj się tylko na tty1 iz hostów z adresami IP z zakresu 130.225.16.0 - 130.225.16.255 i użytkownik niebieski może logować się z tty3 i tego, co jest określone w klasie myclass2 . W sekcji USERS może znajdować się linia zaczynająca się od nazwy użytkownika * . Jest to reguła domyślna i zostanie zastosowana do dowolnego użytkownika, który nie pasuje do żadnej innej linii. Jeśli zarówno linia użytkownika USERS, jak i linia GROUPS pasują do użytkownika, wówczas użytkownikowi zezwala się na dostęp z unii wszystkich tty / hostów wymienionych w tych specyfikacjach. Specyfikacje wzorca tty i wzorca używane w specyfikacji klas, grupy i dostępu użytkownika są nazywane początkami. Łańcuch początkowy może mieć jeden z następujących formatów: Każde z powyższych źródeł może być poprzedzone prefiksem czasu zgodnie ze składnią: timespec :: = '' Na przykład pochodzenie poniedziałek: wtorek: śr .: czw: czw. 8-17 tty3 oznacza, że logowanie jest dozwolone w poniedziałki do piątku w godzinach od 8 do 17.59 (5:59) na tty3. Pokazuje to również, że zakres godzin a-b obejmuje wszystkie momenty między a: 00 a b: 59. Specyfikacja jednogodzinna (na przykład 10) oznacza przedział czasowy od 10 do 10:59. Brak określenia jakiegokolwiek prefiksu czasu dla tty lub hosta oznacza, że login z tego źródła jest dozwolony w dowolnym momencie. Jeśli podasz przedrostek czasu, pamiętaj o podaniu zarówno zestawu dni, jak i jednej lub kilku godzin lub zakresów godzin. Specyfikacja czasu może nie zawierać białych znaków. Jeśli nie zostanie podana żadna domyślna reguła, użytkownicy nie pasujący do żadnej linii / etc / usertty mogą logować się z dowolnego miejsca, tak jak to jest w przypadku standardowego zachowania. Ważny: Użyjmężczyznadowództwo ( % mężczyzna ), aby zobaczyć, jak polecenie jest używane na danym komputerze. Sekcja GROUPS
Sekcja UŻYTKOWNICY
Początki