Po uruchomieniu polecenia sudo w systemie Linux domyślnie zapamiętuje ono hasło przez 15 minut, określone przez zmienną timestamp_timeout w /etc/sudoers plik. W tym czasie możesz więc uruchomić dowolne inne polecenie sudo bez podawania hasła. Ponownie monituje o podanie hasła po 15 minutach bezczynności Sudo.
Możesz jednak dostosować domyślny limit czasu i wydłużyć go lub skrócić zgodnie z własnymi preferencjami. Możesz także skonfigurować go w taki sposób, aby zawsze pytał o hasło lub prosił o nie raz na sesję terminala lub uruchomienie systemu. Oto jak możesz to zrobić.
Dostosuj limit czasu hasła sudo w systemie Linux
W przypadku wszelkich zmian związanych z Sudo, takich jak nadanie uprawnień sudo, dodając lub konfigurując niestandardowe reguły itp., musisz edytować plik /etc/sudoers plik. Jednak nie zaleca się ręcznej edycji tego pliku bezpośrednio za pomocą dowolnego edytora tekstu. Zamiast tego użyj następującego polecenia, aby edytować plik:
sudo visudo
To polecenie otwiera plik /etc/sudoers plik w edytorze tekstu do edycji.
Aby zmienić domyślny limit czasu hasła Sudo (i wydłużyć go lub skrócić), dodaj następujący wiersz w koniec pliku i zmień jego wartość na dowolny czas (w minutach), na który ma czekać przed koniec czasu.
Domyślnie znacznik czasu_timeout=x
Powiedzmy, że chcesz skrócić limit czasu hasła sudo do trzech minut, więc dodasz:
Domyślnie znacznik czasu_timeout=3
Zwróć uwagę, że termin Domyślne w powyższym poleceniu odnosi się do ustawień ogólnosystemowych. Aby zastosować konfigurację tylko do określonego użytkownika, użyj następującego polecenia:
Domyślnie: nazwa użytkownika timestamp_timeout=x
Zawsze pytaj o hasło sudo
Aby zawsze pytać o hasło za każdym razem, gdy uruchamiane jest polecenie sudo, zmień wartość timestamp_timeout zmienna na 0:
Domyślnie znacznik czasu_timeout=0
Pamiętaj, że możesz dokonać tej zmiany tylko jako superużytkownik. Jako standardowy użytkownik możesz to zrobić za pomocą następującego polecenia:
sudo -k
To polecenie nie wymaga hasła sudo. Ponadto przy następnym uruchomieniu Sudo wyświetli monit o podanie hasła. Pamiętaj jednak, że nie będzie to trwała zmiana. Możesz wywołać to polecenie za każdym razem, gdy chcesz, aby Sudo poprosiło o podanie hasła.
Zapytaj o hasło administratora raz na sesję terminala
Możesz także poprosić Sudo o podanie hasła raz na sesję terminala. Na przykład, jeśli chcesz wprowadzić hasło sudo tylko raz na sesję, dodaj następujący wiersz w pliku /etc/sudoers plik:
Wartość domyślna timestamp_timeout = -1
Teraz znacznik czasu nie wygaśnie, dopóki nie zamkniesz terminala. Oznacza to, że po otwarciu terminala będziesz musiał wprowadzić hasło tylko raz, gdy uruchomisz pierwsze polecenie sudo.
Alternatywnym sposobem na to jest otwarcie powłoki jako root za pomocą następującego polecenia:
Sudo bash
Następujące polecenie poprosi o hasło sudo raz, a następnie możesz uruchomić wszystkie kolejne polecenia bez hasła.
Zapytaj o hasło administratora raz na rozruch systemu
Aby Sudo pytało o hasło raz na rozruch systemu, dodaj następujące wpisy w pliku /etc/sudoers plik:
Domyślnie !tty_tickets
Wartość domyślna timestamp_timeout = -1
W powyższym poleceniu !tty_tickets włączy pojedynczy znacznik czasu dla wszystkich sesji terminala, więc będziesz musiał wprowadzić hasło Sudo tylko raz, niezależnie od tego, ile terminali otworzysz. The timestamp_timeout = -1 ustawi hasło sudo tak, aby nigdy nie wygasało, aż do ponownego uruchomienia systemu.
Możesz zrestartuj swoją maszynę z Linuksem aby sprawdzić, czy zmiany zostały zapisane.
Poprawianie zachowania przekroczenia limitu czasu sudo w systemie Linux
Teraz możesz łatwo zmienić zachowanie limitu czasu Sudo i dostosować, kiedy pojawi się monit o podanie hasła. Pamiętaj, że możesz także użyć Sudo bez pytania o hasło. Jednak powinieneś używać tej opcji tylko wtedy, gdy jesteś jedynym użytkownikiem, który ma dostęp do systemu; w przeciwnym razie może to stanowić duże zagrożenie dla bezpieczeństwa.