Jeżeli tu zaglądasz pewnie zdarzyło Ci się kiedyś, że przykładowo wygrzebujesz jakiś stary serwer i nie masz pojęcia co na nim było, ani do czego służyło, czy jeszcze działa… Albo jeszcze inaczej - serwer działał tak długo, że wszystkie osoby znające hasło na root’a przeszły na emeryturę lub zmarły… Nieistotne 😃

Jest pewna prosta sztuczka, pozwalająca wbić się na konto root’a nie znając hasła - dając nam możliwość jego zmiany. Potrzebne dwa restarty ale za to nie trzeba korzystać z żadnychlive cd.

  • Na początek zmuszamy serwer do restartu - mieć nadzieję, że maszyna obsługuje ACPI i delikatne wciśnięcie przycisku power subtelnie ją wyłączy. Jeśli to nie zadziała to kojarzą mi się tylko brzydkie rzeczy 😃
  • Gdy po restarcie załaduje się grub na domyślnej opcji bootowania wybieramy edycję wciskając “e”.
  • Wybieramy linię zaczynającą się od kernel i znów wybieramy edycję wciskając “e”.
  • Jeżeli znajduje się tam parametr ro to zastępujemy go rw i dopisujemy na końcu init=/bin/bash
  • Wbijamy “enter” zapisując zmieniony wiersz.
  • Bootujemy się z tak zmienionej konfiguracji wciskając “b”.
  • Po chwili system zamiast wystartować init’a i uruchamiać usługi, ląduje w bash’u z uprawnieniami root’a. A skoro mamy root’a to możemy wpisać passwd i zmienić rootowi hasło 😃
  • Teraz już tylko reboot i startujemy system normalnie - hasło root’a powinno działać.

Niestety ta prosta sztuczka nie działa na wszystkich linux’ach - szczególnie tych wykorzystujących initramfs-tools. Na tych systemach trzeba ciut więcej pokombinować ale przynajmniej ma się jakiś punkt wyjścia.