Domyślnie Ubuntu nie konfiguruje hasła roota, dlatego nie możesz zalogować się jako root. Zamiast tego masz możliwość wykonywania zadań z uprawnieniami administratora za pomocą sudo.
Odpowiedziałem wcześniej na podobne pytanie .
Podczas gdy można utworzyć hasło dla konta root umożliwiającym zalogowanie się jako root su
, to nie jest typowy „Ubuntu” sposób robienia rzeczy. Zamiast tego Ubuntu oczekuje, że będziesz używać sudo
.
Korzystanie z sudo
Sudo jest alternatywą dla podawania ludziom hasła roota w celu wykonywania obowiązków administratora. W domyślnej instalacji Ubuntu osoba, która zainstalowała system operacyjny, domyślnie otrzymuje uprawnienia „sudo”.
Każdy, kto ma uprawnienie „sudo”, może wykonać coś „jako superużytkownik”, oczekując sudo
na polecenie. Na przykład, aby uruchomić apt-get dist-upgrade
jako superużytkownik, możesz użyć:
sudo apt-get dist-upgrade
Domyślnie sudo poprosi Cię o podanie hasła do konta podczas wykonywania tej czynności. Pomaga to w bezpieczeństwie. Jest to pamiętane przez kilka minut, więc jeśli masz kilka zadań związanych z sudo, poprosi Cię tylko o podanie hasła.
Powyższe użycie sudo zobaczysz niemal wszędzie, gdy przeczytasz tutorial o Ubuntu w Internecie. To alternatywa dla tego.
su
apt-get dist-upgrade
exit
Korzyści
Dzięki sudo z góry wybierasz, którzy użytkownicy mają dostęp do sudo. Nie muszą pamiętać hasła roota, ponieważ używają własnego hasła. Jeśli masz wielu użytkowników, możesz odwołać dostęp do swojego administratora tylko poprzez usunięcie ich uprawnień sudo, bez konieczności zmiany hasła roota i powiadamiania wszystkich o nowym haśle. Możesz nawet wybrać, które polecenia użytkownik może wykonywać za pomocą sudo i które polecenia są dla niego zabronione. I wreszcie, w przypadku naruszenia bezpieczeństwa może w niektórych przypadkach pozostawić lepszą ścieżkę audytu pokazującą, które konto użytkownika zostało naruszone.
Brak hasła roota uniemożliwia ataki typu brute force na konto roota: jest to istotne, jeśli zezwolisz na logowanie przez SSH. Zamiast tego atakujący musiałby znać nazwę konta lokalnego.
Sudo ułatwia wykonywanie pojedynczych poleceń z uprawnieniami administratora. Za pomocą su
, na stałe upadasz do powłoki superużytkownika, którą należy zamknąć za pomocą exit
lub logout
. Może to spowodować, że ludzie pozostaną w powłoce superużytkownika dłużej niż to konieczne tylko dlatego, że jest to wygodniejsze niż wylogowanie i ponowne zalogowanie później.
Uzyskiwanie powłoki roota
W sudo nadal możesz otworzyć stałą (interaktywną) powłokę superużytkownika za pomocą polecenia:
sudo su
... i nadal można tego dokonać bez hasła roota, ponieważ sudo
daje on superużytkownikowi uprawnienia do su
polecenia.
Podobnie, zamiast su -
powłoki logowania, której możesz użyć, sudo su -
a nawet sudo -i
.
Jednak robiąc to, musisz mieć świadomość, że działasz jako superużytkownik dla każdego polecenia. Dobrą zasadą bezpieczeństwa jest, aby nie pozostać superużytkownikiem dłużej niż to konieczne, aby zmniejszyć możliwość przypadkowego spowodowania uszkodzenia systemu (bez niego możesz tylko uszkodzić pliki, których właścicielem jest użytkownik).
Właśnie w celu wyjaśnienia, to może , jeśli zdecydujesz, daj użytkownik root hasło pozwalające logowania jako root, jeśli konkretnie chcesz robić rzeczy w ten sposób zamiast. Chciałem tylko poinformować Cię o konwencji preferowania Ubuntu sudo
zamiast tego i dać znać, że istnieje alternatywa.