Domyślne hasło roota Raspbian

16

Próbowałem zmodyfikować plik sudoers na Raspbian /etc/sudoersi wygląda na to, że popełniłem błąd, ponieważ nie mogę go ponownie zmodyfikować. Nie mogę także wywołać żadnego polecenia wymagającego sudouprawnień. Przeprowadziłem więc badania i znalazłem tutaj rozwiązanie .

Rozwiązanie wykorzystuje polecenia *pkexec visudo*, ale gdy próbowałem to, że daje mi komunikat o błędzie: Authentication is needed to run '/usr/sbin/visudo' as the super user. Istnieje również lista rozwijana, która zawiera tylko słowo „root” (i nie można jej zmienić). Jak również o nazwie Tożsamość i puste pole tekstowe o nazwie Hasło.

Pytanie brzmi: skąd mogę poznać hasło roota? Próbowałem „root”, „malinowy”, „admin” itp., Ale nic nie działało.

Zgodnie z odpowiedziami wydaje się, że zalogowanie przy użyciu roota jest trochę niemożliwe, wtedy użycie pkexec visudo nie rozwiąże mojego problemu! i zgodnie z odpowiedzią moim jedynym sposobem jest użycie komputera z systemem Linux, aby wyświetlić zawartość sd i zmodyfikować plik sudoers. Mam już zainstalowany Debian na mojej maszynie wirtualnej i wreszcie mogę uzyskać dostęp do pliku sudoers, ale nie mam uprawnień, aby uzyskać do niego dostęp! mówi, że nie jestem właścicielem pliku! Rozumiem ten problem bezpieczeństwa, ale ponieważ wiele osób podczas wyszukiwania online sugeruje użycie komputera z systemem Linux do zmodyfikowania pliku sudoers, powinien istnieć sposób na uzyskanie dostępu do niego. czy ktoś wie w ten sposób?

Dani
źródło

Odpowiedzi:

15

Domyślnie Raspbian jest skonfigurowany tak, że nie można zalogować się do konta root przy użyciu hasła. Odbywa się to od wpisu, w /etc/passwordktórym zaczyna się:

root:x:0:0:

Pola są oddzielone dwukropkami i wyjaśnione w man 5 passwd(zwróć uwagę 5, ponieważ man passwdda ci stronę podręcznika dla polecenia passwd; sekcja 5 dotyczy plików konfiguracyjnych, w tym przypadku mają one taką samą nazwę). Tutaj pierwszy to name ( root), trzeci i czwarty to numeryczny uid i gid (oba 0), a drugi to hasło. Dla większości wpisów to będzie x, co wskazuje rzeczywisty hasło znajduje się w innym pliku /etc/shadow.

Pamiętaj, że „rzeczywiste hasło” nie jest tak naprawdę nigdzie przechowywane. Przechowywany shadowjest jednokierunkowy skrót rzeczywistego hasła. Hash jednokierunkowy jest wynikiem procesu, który zawsze da to samo (umożliwiając weryfikację hasła), ale jest nieodwracalny. Innymi słowy, jeśli ktoś dostanie w swoje ręce shadow, nie można wydedukować hasła z skrótu. Jeśli jednak mogą modyfikować shadow , oczywiście mogą wyłączyć lub zmienić hasło, które będzie działać. Ale nigdy nie będą w stanie odkryć twoich haseł. Dlatego nawet rootnie może tego zrobić (chociaż root może zawsze zmienić je na coś innego bez potrzeby używania oryginału).

W przypadku roota wpis shadowzaczyna się tak, jak w przypadku większości innych kont systemowych:

root:*:

*Wskazuje obecnie nie ma możliwości hasło, które mogą być wykorzystane do tego konta.

Użytkownik root może to zmienić za pomocą passwdpolecenia, aby ustawić nowe hasło, które zastąpi *wspomniany wcześniej skrót (zawsze zaczynają się $n$tam, gdzie njest jakaś losowa wartość, która jest używana jako „sól” skrótu, ale nie trzeba to zrozumieć).

W każdym razie, kiedy ustawiam kartę ze świeżego obrazu, pierwszą rzeczą, którą robię, jest wejście /etc/passwdi usunięcie xwpisu roota:

root::0:0

Zauważ, że teraz nie ma drugiego pola. Oznacza to, że nie ma hasła, a wszystko, co musisz zrobić, to wpisać rootpolecenie logowania i zalogować się jako root. Następnie możesz użyć, passwdaby ustawić jeden.

Masz tutaj dwie możliwości, ale obie wymagają wyjęcia karty z pi i uzyskania dostępu do drugiej partycji z innego systemu (który może odczytywać / zapisywać partycje ext4).

  1. Restore sudoers. Jeśli masz obraz referencyjny, jest to łatwe, możesz po prostu przywrócić go do poprzedniego stanu, zastępując go. W przeciwnym razie jest to bardziej skomplikowana opcja, ponieważ musisz wiedzieć, co robisz (a twoje osiągnięcia sudoersnie są tak dobre ...).

  2. Edytuj /etc/passwdi usuń to, xjak opisano powyżej, włóż kartę ponownie, zaloguj się jako root, utwórz hasło. Oczywiście nadal będziesz musiał to naprawić sudoers, ale próby i błędy będą łatwiejsze, ponieważ jeśli naprawdę root, zawsze będziesz mógł uzyskać do niego dostęp.

Jeśli nie masz systemu, który może uzyskać dostęp do systemów plików ext4 (dobrym „CD na żywo” Debiana jest tutaj dobrym wyborem), to utkniesz. Musisz przeflashować kartę i zacząć od nowa.

Złotowłosa
źródło
Zainstalowałem już debian w VM Ware i włożyłem kartę, ale wyświetla ona tylko te pliki, które są wyświetlane tak, jakbym używała systemu Windows. Mam na myśli, że nie mogę wyświetlić / zmodyfikować pliku sudoers. czy powinienem użyć niektórych poleceń, aby wyświetlić je w Debianie?
Dani
Nie jestem użytkownikiem VM, więc nie mogę pomóc w tym, ale prawdopodobnie masz dostęp do roota na VM, prawda? Jeśli tak, i możesz uzyskać dostęp do karty SD z maszyny wirtualnej, powinieneś być w stanie zamontować drugą partycję i zajrzeć do środka /etc. Jeśli go sudoersnie ma, być może przypadkowo go usunąłeś. W takim przypadku musisz go zastąpić świeżym obrazem Debiana (nie musisz tworzyć nowej karty, potrzebujesz tylko pliku obrazu, zobacz tutaj ). .
Złotowłosa
... Powinieneś także mieć dostęp etc/passwddo karty i zmienić ją za pośrednictwem konta root Debian VM.
Złotowłosa
(powinieneś być w stanie zamontować drugą partycję i zajrzeć do / etc) jakich poleceń powinienem użyć do zamontowania drugiej partycji?
Dani
Z VMware VM? Nie wiem Używam virtualboksa, ale nigdy nie musiałem konfigurować dostępu do sprzętu ani montowania w systemie hosta oprócz sieci (jeśli muszę przesyłać dane, robię to tylko przez sieć). Zakładam, że jest to możliwe i proste, ale mój system hosta również jest linux. Zakładam również, że jest jakiś sposób korzystania z VMware z systemem Windows / Mac / Niezależnie od hosta, aby zapewnić maszynie wirtualnej dostęp do urządzenia SD podłączonego do sprzętu hosta ... nawet jeśli sam host nie może odczytać partycji, nadal może uzyskać dostęp do faktycznej karty, więc maszyna wirtualna również powinna mieć możliwość (i wtedy system operacyjny maszyny wirtualnej może ją odczytać).
Złotowłosa
4

Raspbian NIE ma roothasła. Pod tym względem różni się od Ubuntu. Możesz utworzyć roothasło, ale AFAIK to wymaga sudo.

Najlepiej jest edytować pliki, instalując kartę SD na komputerze z systemem Linux.

Można to zrobić na Pi, jeśli 1. masz czytnik kart SD 2. Do uruchomienia Pi używasz dobrego systemu operacyjnego na innej karcie SD.

Milliways
źródło
ale dlaczego raspbian poprosił mnie o hasło? i dlaczego nie akceptuje pustych haseł?
Dani
Konto root może mieć hasło „nieprawidłowe” lub „niemożliwe” - jest to powszechna sztuczka, aby zablokować konto root w ten sposób.
płatek śniegu
4

Aby ustawić hasło roota:

  • Uruchom i zaloguj się normalnie.
  • Biegać:sudo passwd root
  • Wpisz nowe hasło dla roota zgodnie z monitem

Źródło: https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=5056&start=25

Doskonałość Ilesanmi
źródło
1
Problem polega na tym, że nie mogłem użyć polecenia sudo, ponieważ popełniłem błąd podczas modyfikowania pliku sudoers. Problem został rozwiązany przez instalację linux OS Debian OS na moim komputerze, włożenie karty SD i zmianę pliku sudoers z powrotem do pierwotnego stanu ...
Dani
-1

Jeśli pobierzesz Puppy Linux dla Raspberry Pi ze strony http://puppylinux.org/main/Download%20Latest%20Release.htm#quirky i zainstalujesz go na dysku typu thumbdrive, powinieneś być w stanie uruchomić z niego komputer, a ponieważ Puppy zawsze działa jako root bez hasła, możesz zmienić cokolwiek na swoim komputerze. Wprowadź zmiany, a następnie uruchom ponownie komputer bez nośnika rozruchowego Puppy. Teraz komputer uruchomi się w zmienionym systemie bez Puppy.

Jestem trochę nowy w Raspberry Pi, więc nie wiem, jak uruchomić go z innego urządzenia (thumbdrive), ale prawdopodobnie istnieje sposób. Być może system Noobsa przytrzymuje Shift podczas uruchamiania.

Dodam prostą alternatywę do uruchamiania z innego napędu: Raspberry Pi można zamiast tego uruchomić z instalacji Puppy na karcie SD (lub karcie microSD), a oryginalny nośnik instalacyjny można odczytać i zmienić z czytnika kart podłączonego do ten sam Raspberry Pi.

Miriam English
źródło
2
Uważam, że przegłosowanie jest niesmaczne, więc postaram się wypełnić anonimowego zstępującego. Odpowiedź „Nie wiem” jest chyba bardziej odpowiednia jako komentarz. Niestety wymaga to reputacji 50. Proszę kontynuować wysiłki, aby pomóc. To jest warte wysiłku. : D
OyaMist