Strona główna
» LINUX
»
Debian: Jak bezpiecznie dodać użytkownika do Sudoers
Debian: Jak bezpiecznie dodać użytkownika do Sudoers
W Debianie najprostszym i najbezpieczniejszym sposobem nadania istniejącemu użytkownikowi pełnych uprawnień administracyjnych jest zazwyczaj dodanie tego konta do sudogrupy. Domyślna konfiguracja sudo w Debianie pozwala członkom tej grupy na uruchamianie poleceń za pośrednictwem sudo. Zazwyczaj nie ma potrzeby bezpośredniej edycji /etc/sudoers.
Jeśli podczas instalacji Debiana pozostawiono puste hasło roota, instalator zazwyczaj wyłącza bezpośrednie logowanie roota i nadaje pierwszemu użytkownikowi uprawnienia administracyjne za pośrednictwem sudo. Jeśli zamiast tego ustawisz hasło roota, sudo może nie zostać zainstalowane lub użytkownik może nie należeć do sudogrupy. Debian dokumentuje obie konfiguracje w swoich instrukcjach sudo .
Sprawdź, czy Twój użytkownik ma już dostęp sudo
Otwórz terminal i sprawdź grupy przypisane do Twojego konta:
groups
Jeżeli sudona wyjściu pojawi się komunikat , przetestuj konfigurację:
sudo whoami
Po wpisaniu własnego hasła, powinna wyświetlić się działająca konfiguracja root. Jeśli powłoka wyświetli komunikat sudo: command not found, zainstaluj pakiet jako root. Jeśli pojawi się komunikat, że użytkownik nie ma uprawnień do uruchamiania sudo, dodaj konto do sudogrupy.
1. Uzyskaj uprawnienia roota i zainstaluj sudo, jeśli to konieczne
Jeśli znasz hasło roota, uruchom powłokę logowania roota:
su --login
Użyj, su --loginjeśli potrzebujesz uprawnień roota, aby zainstalować lub skonfigurować sudo.
Następnie zainstaluj sudo z APT:
apt update
apt install sudo
W Debian Reference sudo opisane jest jako standardowe narzędzie do delegowania uprawnień administracyjnych bez konieczności ciągłej pracy w powłoce roota.
2. Dodaj użytkownika do grupy sudo Debiana
Nadal jako root zastąp je alicekontem, które powinno otrzymać dostęp sudo:
adduser alice sudo
Dodanie istniejącego konta do sudogrupy przyznaje uprawnienia zdefiniowane dla tej grupy.
Można również użyć usermod -aG sudo alice, ale formularz specyficzny dla Debiana adduser USER GROUPjest prosty i pozwala uniknąć przypadkowego zastąpienia innych uzupełniających grup użytkownika.
3. Wyloguj się, zaloguj ponownie i zweryfikuj dostęp
Nowe członkostwo w grupie zazwyczaj nie dotyczy już otwartej sesji logowania. Całkowicie wyloguj się z pulpitu lub sesji SSH i zaloguj się ponownie. Następnie sprawdź konto i przetestuj sudo:
groups alice
sudo whoami
Po ponownym zalogowaniu sprawdź, czy użytkownik jest w sudogrupie i czy sudo whoamizwraca root.
Jeśli użytkownik został właśnie dodany, a sudo nadal zgłasza, że konto nie ma uprawnień do uruchomienia polecenia, częstą przyczyną jest stara sesja logowania. Dokumentacja sudo Debiana wyraźnie zaznacza, że członkostwo w grupie staje się aktywne po zalogowaniu.
Opcjonalnie: utwórz regułę sudoers dla każdego użytkownika
W większości systemów Debian powyższa metoda grupowania w zupełności wystarczy. Reguła dla każdego użytkownika jest przydatna, gdy celowo potrzebujesz osobnej polityki sudo. Nie otwieraj /etc/sudoersw zwykłym edytorze. W podręczniku visudo wyjaśniono, że visudoblokuje to plik i sprawdza jego składnię przed instalacją zmian.
Jako root utwórz dedykowany plik o prostej nazwie, która nie zawiera kropki:
visudo -f /etc/sudoers.d/alice
Aby zapewnić sobie alicetakie same pełne uprawnienia administracyjne, jakie ma typowy użytkownik sudo, dodaj:
alice ALL=(ALL:ALL) ALL
Zapisz i zamknij edytor, a następnie zatwierdź całą konfigurację sudoers:
visudo -c
Użyj go visudodo zmian w sudoers, aby wykryć problemy składniowe zanim uniemożliwią dostęp administracyjny.
Debian zaleca zachowanie lokalnych reguł zamiast /etc/sudoers.dmodyfikowania pliku głównego. W podręczniku sudoers zaznaczono również, że pliki w tym katalogu, których nazwy zawierają kropkę lub kończą się na kropce, ~są pomijane, więc nazwa taka jak alicejest bezpieczniejsza niż alice.conf.
Jak usunąć dostęp sudo
Aby cofnąć dostęp przyznany za pośrednictwem sudogrupy, uruchom to jako root:
deluser alice sudo
Podręcznik użytkownika Debiana potwierdza, że forma dwuargumentowa usuwa użytkownika z określonej grupy. Użytkownik musi się wylogować i zalogować ponownie, aby nowa lista grup została uwzględniona.
Jeśli utworzyłeś również /etc/sudoers.d/alicekonto , usunięcie go z grupy nie wystarczy, ponieważ ta osobna reguła nadal przyznaje uprawnienia. Usuń lub edytuj tę regułę jako użytkownik root, a następnie uruchom visudo -cponownie.
Typowe błędy, których należy unikać
Nie edytuj /etc/sudoersw zwykłym edytorze tekstu. Błąd składni może zablokować dostęp do sudo.
Nie używaj usermod -G sudo USERbez -a. Ten formularz może zastąpić listę grup uzupełniających użytkownika zamiast po prostu dodać sudo.
Pamiętaj o wymogu ponownego logowania. Dodanie lub usunięcie grupy nie powoduje wstecznej zmiany danych logowania do istniejącej sesji.
W przypadku standardowej stacji roboczej lub serwera Debian zalecana ścieżka jest prosta: zainstaluj sudo, jeśli to konieczne, dodaj konto do sudogrupy, rozpocznij nową sesję logowania i zweryfikuj wynik przed zamknięciem powłoki roota.