Recent am avut nevoie sa intru pe un linux box sa schimb ip-ul unei placi de retea, nat-ul si sa mai fac curat prin loguri & other maintenance shit.
Problema: Cu toate ca eu am instalat “server-ul” am uitat parola de root, alt user nu mai creasem. Panica!
Panica? Eram in fata box-ului (masinii, calculatorului, junghiului)! De ce ma panichez? Am mai schimbat parola de root de nenumarate ori dar nu pentru ca o uitasem ci pentru ca a fost nevoie. Linux-ul este cat se poate de sigur dar are “vulnerabilitatea” asta. Daca e unu care stie sa incarce kernel-ul in single mode… poate sa isi seteze cum vrea muschiul lui parola de root.
1. Booteaza in sigle mode. Daca ai Ubuntu intra in recovery mode, daca ai alta distributie & GRUB apasa pe ESC si editeaza (daca nu ai “single user mode”) adaugand la sfarsitul liniei care incarca kernel-ul “single”. Functioneaza si cu LILO.
2. Parola de root se schimba cu “passwd”, comanda pe care o rulati dupa ce aveti linia de comanda la dispozitie. Daca introduceti “passwd gigel” veti schimba parola userului gigel.
3. Reboot!
Atat! Panica? Nici un pic de panica! Incarcati sistemul normal si folositi parola setata mai devreme 😀
Good to know! Thanks! 😉
la distribuţiile mai noi ştiu că se implementase o chestie care îţi cerea parola de root şi la single user boot.
Eu nu consider asta ca vulnerabilitatea. Orice sistem, daca esti in fata lui, poti intra in el.
Eu practicam alta metoda, care functioneaza si daca cere parola la single user.
Varianta 1: Pornesc cu un Linux de pe un CD, montez hardu din comp, dupaia un chroot in directoru unde am montat hardu si schimb parola cu passwd.
Varianta 2: Zici la lilo sa porneasca direct un shell. Merge si la GRUB cumva dar nu am mai avut nevoie de asa ceva de mult timp si am uitat, si pana imi aduc iara aminte, mai degraba pornesc cu un CD.
[mirceacluj@localhost ~]$ passwd root
passwd: Numai root poate specifica un nume de utilizator.
[mirceacluj@localhost ~]$ dnf passwd root
No such command: passwd. Please use /usr/bin/dnf –help
It could be a DNF plugin command, try: “dnf install ‘dnf-command(passwd)'”
[mirceacluj@localhost ~]$ sudo passwd root
[sudo] password for mirceacluj:
Sorry, try again.
[sudo] password for mirceacluj:
Schimb parola pentru utilizatorul root.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: toate simbolurile de autentificare au fost actualizate cu succes.
[mirceacluj@localhost ~]$ su
Password:
[root@localhost mirceacluj]#
Eu postez un copy/paste al terminalului .Am reusit