Obecne ustawienia domyślne konta głównego /etc/passwd
to root:x:0:0:root:/root:/bin/bash
.
Dlaczego nie ustawić root:x:0:0:root:/root:/usr/sbin/nologin
?
command-line
security
root
loongyh
źródło
źródło
sudo -i
?Odpowiedzi:
Gdyby tak było, można by uruchamiać polecenia
sudo
pojedynczo, ale nie można uruchomić powłoki roota. Powłoka root jest wygodna w wielu przypadkach, np. Jeśli planujesz uruchamiać wiele poleceń jako root z rzędu.W szczególności nie można uruchomić
sudo -i
, jak zauważył AlexP. Odman sudo
:źródło
sudo /bin/bash
działa?sudo -s
myślę (a rootem, ale nie jest to główny logowania shell). To jednak dobra uwaga - isudo -s
wydaje się, że działa nawet wtedy, gdy jest to skorupa roota/usr/sbin/nologin
-i
,-s
,/bin/bash
, i tak dalej po prostu pozwalając białą listę poleceń, zobacz dokumentację pliku sudoers. Jest to tak drobnoziarniste, że można na przykład zezwolić użytkownikom na uruchamianie się/etc/init.d/someservice restart
jako root bez konieczności uruchamiania/etc/init.d/someservice stop
. Ale domyślnym ubuntu jest po prostu brak hasłaroot
i zezwalanie administratorom na robienie wszystkiego z sudo. Prawdopodobnie uzasadnieniem jest: a) więcej niż jeden użytkownik admin oraz b) użytkownik admin nie musi pamiętać drugiego hasła do konta root.Oprócz sudo Alberto Santiniego jest jeszcze jedna (znacznie lepsza) odpowiedź. Jeśli powłoka root jest ustawiona na coś, co nie jest powłoką, uruchamianie pojedynczego użytkownika nie działa. Odzyskiwanie
sulogin
dotyczy nieistniejącej powłoki lub całkowicie zepsutej powłoki, ale nie zadziała, jeśli powłoka wydaje się być prawidłową powłoką, ale tak naprawdę nie jest powłoką.Nadal możesz
sudo
bezpośrednio uzyskać powłokę, określającsudo
ją, aby nie była to nawet dobra ochrona.źródło