Limit czasu sesji sudo w Ubuntu określa, jak długo po podaniu hasła użytkownik może wykonywać polecenia z sudo bez ponownego wpisywania hasła. Domyślnie czas ten wynosi 15 minut. Możesz zmienić ten limit zarówno globalnie dla wszystkich użytkowników, jak i indywidualnie, edytując odpowiednie ustawienia w pliku sudoers.
Co to jest sesja sudo i dlaczego warto ustawić jej limit czasu?
- Sesja sudo rozpoczyna się po pierwszym podaniu poprawnego hasła; kolejne polecenia sudo wkrótce potem nie wymagają ponownej autoryzacji.
- Limit czasu pozwala ograniczyć wygodę z bezpieczeństwem – zbyt długi wydłuża okres autoryzacji, zbyt krótki może być uciążliwy.
Krok po kroku – Zmiana limitu czasu sesji sudo w Ubuntu
1. Sprawdzenie obecnego limitu czasu
Domyślny limit to 15 minut. Informacja ta jest określona przez parametr timestamp_timeout
w konfiguracji sudo.
2. Edycja pliku sudoers – najlepsza praktyka
Nie edytuj pliku /etc/sudoers
bezpośrednio – zawsze używaj polecenia visudo, które sprawdza składnię i zapobiega błędom blokującym sudo.
Otwórz edytor visudo:
sudo visudo
Znajdź sekcję z settingami Defaults (Zalecenie – dodaj własne linie, nie zmieniaj istniejących, by zachować czytelność):
Przykład wpisu wydłużającego sesję do 60 minut:
Defaults timestamp_timeout=60
Przykład skrócenia czasu do 2 minut:
Defaults timestamp_timeout=2
Natychmiastowe wygaśnięcie autoryzacji po użyciu sudo (każde polecenie wymaga hasła):
Defaults timestamp_timeout=0
Wyłączenie wygasania (NIEZALECANE ze względów bezpieczeństwa):
Defaults timestamp_timeout=-1
Dodaj wybraną linijkę przed sekcją specyfikacji użytkowników i hostów.
Zapisz zmiany i wyjdź z edytora visudo (w nano: Ctrl+O
→ Enter → Ctrl+X
).
3. Konfiguracja tylko dla konkretnego użytkownika (opcjonalnie)
Aby ustawić inny limit dla wybranego użytkownika, dodaj:
Defaults:NAZWA_UŻYTKOWNIKA timestamp_timeout=5
Zamień NAZWA_UŻYTKOWNIKA
na login danego użytkownika.
4. Zastosowanie zmian
Po zapisaniu pliku zmiany obowiązują natychmiast przy nowych sesjach sudo. Trwające sesje należy zakończyć np. poleceniem:
sudo -k
które natychmiast wygasi sesję sudo.
Jak działa timestamp_timeout?
- Wartość liczbową podaje się w minutach; po jej upływie hasło będzie ponownie wymagane.
- Wartość 0 – hasło za każdym razem.
- Wartość -1 – brak limitu (autoryzacja ważna do zamknięcia sesji).
Bezpieczeństwo i dobre praktyki
- Ustaw niską wartość na systemach współdzielonych lub publicznych.
- Rozważ stosowanie różnych wartości dla różnych użytkowników w zależności od poziomu zaufania.
Przydatne polecenia
- Natychmiastowe usunięcie cache sudo:
sudo -k
- Informacja o aktywnej sesji sudo:
sudo -v
Podsumowanie
Zmiana limitu czasu sesji sudo pozwala lepiej kontrolować bezpieczeństwo pracy na systemie Ubuntu. Kluczowe są korzystanie z visudo, właściwy dobór wartości oraz świadomość bezpieczeństwa.
Źródła i szczegółowe zagadnienia na temat tłumaczenia zachowań pliku sudoers znajdziesz również w oficjalnych poradnikach i dokumentacji sudo.