Как сбросить пароль root в Linux
Сброс забытого пароля root в Linux
Некоторое время назад мы описали, как сбросить пароль пользователя root в Unix (FreeBSD). Сегодня мы увидим, как сбросить или восстановить пароль пользователя root в Linux. Поверьте мне, сбросить пароль пользователя root в Linux очень просто. Даже опытный пользователь Linux может легко сбросить пароль пользователя root, следуя методам, описанным ниже. Обратите внимание, что вы можете сбросить пароль только при наличии физического доступа к системе. Для удаленных систем и VPS вам может понадобиться помощь вашего поставщика услуг.
Я протестировал это руководство на следующих трех дистрибутивах:
- Арч Линукс,
- ЦентОС,
- Убунту.
Однако шаги почти такие же и для других дистрибутивов.
Сначала мы начнем с Arch Linux.
1. Сброс пароля пользователя root в Arch Linux
Этот метод был протестирован в Arch Linux, однако он может работать и в других дистрибутивах Linux на базе Arch, таких как Antergos, Manjaro Linux и т. д.
В меню загрузки GRUB выберите запись Arch Linux с помощью клавиш со стрелками.
Меню загрузки Arch Linux GRUB
Нажмите e , чтобы отредактировать запись меню загрузки. Найдите строку, начинающуюся со слова linux:
linux /boot/vmlinuz-linux root-UUID=d474f2-e6a2-4cc3-9899-aa98af13 rw quiet
В конце приведенной выше строки добавьте следующую строку:
init=/bin/bash
См. следующий снимок экрана.
Редактировать меню загрузки GRUB в Arch Linux
После добавления указанной выше строки нажмите CTRL-X
или F10
, чтобы продолжить загрузку в однопользовательском режиме. Это изменение будет временным и не будет сохранено в вашем загрузочном menu.ist
файле.
Теперь вы достигли однопользовательского режима.
Введите следующую команду, чтобы смонтировать корневую файловую систему (/) в режиме чтения/записи.
mount -n -o remount,rw /
Затем измените пароль пользователя root с помощью команды:
passwd
Введите новый пароль дважды.
Сбросить пароль пользователя root в Arch Linux
Наконец, введите следующую команду, чтобы применить изменения и запустить Arch Linux в обычном режиме.
exec /sbin/init
Вуаля! Теперь вы можете войти на свой сервер Arch Linux, используя новый пароль пользователя root.
2. Сброс пароля пользователя root в CentOS 8.x.
Чтобы восстановить или сбросить пароль пользователя root в серверных версиях CentOS 8 и RHEL, обратитесь к следующему руководству.
- Как сбросить пароль root-пользователя в CentOS 8/RHEL 8
3. Сброс пароля пользователя root в CentOS 7.x.
Мы можем сделать это двумя способами. Оба немного разные, но простые. Этот метод также будет работать в RHEL 7.x, Scientific Linux 7.x.
Метод 1:
Включите сервер CentOS 7. В меню загрузки выберите ядро, которое вы хотите загрузить, и нажмите e, чтобы отредактировать выбранную загрузочную запись.
Меню загрузки CentOS Grub
Найдите строку rhgb quiet :
Редактировать записи меню загрузки CentOS Grub
...и замените его на init=/bin/bash
Изменить параметры ядра
Затем нажмите CTRL+X
, чтобы войти в однопользовательский режим.
Введите следующую команду, чтобы смонтировать корневую файловую систему (/) в режиме чтения/записи.
mount -o remount,rw /
Смонтируйте корневую файловую систему для чтения и режима записи в CentOS.
Теперь измените пароль пользователя root с помощью команды:
passwd root
Введите новый пароль дважды.
Сброс пароля пользователя root в CentOS 7
Наконец, выполните следующую команду для обновления SELinux:
touch /.autorelabel
Затем введите следующую команду, чтобы применить изменения и перезапустить CentOS 7:
exec /sbin/init
Включить перемаркировку SELinux при перезагрузке
Теперь вы сможете войти в CentOS 7 как пользователь root с новым паролем.
Метод 2:
В меню загрузки GRUB выберите загрузочную запись и нажмите e, чтобы отредактировать выбранный элемент.
Меню CentOS Grub
Найдите строку ro :
Найдите запись параметра ro krnel
Измените строку ro на rw и добавьте дополнительную строку init=/sysroot/bin/sh.
Изменить параметры ядра
Нажмите CTRL+X, чтобы войти в однопользовательский режим.
Затем введите:
chroot /sysroot/
Монтировать корневую файловую систему в режиме чтения, записи.
Затем измените пароль пользователя root с помощью команды:
passwd root
Сбросить пароль root в Centos
Обновите SELinux командой:
touch /.autorelabel
Перезагрузите систему.
exit
reboot
Теперь вы можете войти в систему с новым паролем.
4. Сброс пароля пользователя root в CentOS 6.x.
Если вы хотите сбросить пароль пользователя root для систем CentOS 6.x и более ранних версий, выполните следующие действия. Этот метод также будет работать в RHEL 6.x, Scientific Linux 6.x.
В меню загрузки выберите ядро, которое вы хотите загрузить, и нажмите e, чтобы отредактировать выбранный элемент.
Меню загрузки CentOS 6 grub
Выберите вторую строку (начинается со слова Kernel) и нажмите e, чтобы отредактировать эту строку.
Редактировать загрузочное меню centos 6 grub
Перейдите в конец строки и введите S , чтобы перейти в однопользовательский режим.
Перейти в однопользовательский режим в Centos 6
Затем нажмите клавишу ENTER и клавишу b, чтобы загрузиться в однопользовательском режиме.
Смонтируйте корневую файловую систему (/) в режиме чтения/записи:
mount -o remount,rw /
Измените пароль root с помощью команды:
passwd root
Наконец, перезагрузите сервер CentOS 6.
sync
reboot
Сброс пароля пользователя root в CentOS 6
Теперь вы можете войти в систему с новым паролем.
5. Сброс пароля пользователя sudo в Ubuntu
Я тестировал это руководство на сервере Ubuntu 15.10, однако оно может работать и на других версиях Ubuntu, таких как Ubuntu 15.04/14.10/14.04 и т. д.
Вы можете сделать это двумя способами.
Метод 1:
В меню загрузчика Grub выберите используемое ядро и нажмите e, чтобы отредактировать запись.
Найдите строку, начинающуюся со слова linux
. Добавьте следующую строку в конце.
init=/bin/bash
Редактировать меню загрузки Ubuntu grub
Затем нажмите CTRL-X
или F10
, чтобы загрузиться в однопользовательском режиме.
Введите следующую команду, чтобы смонтировать корневую файловую систему (/) в режиме чтения/записи.
mount -o remount,rw /
Затем измените пароль вашей учетной записи администратора с помощью команды:
passwd sk
Здесь sk — моя административная учетная запись.
Введите новый пароль дважды.
Сбросить пароль пользователя sudo в Ubuntu
Наконец, введите следующую команду, чтобы запустить Ubuntu с обновленным паролем.
exec /sbin/init
Теперь вы сможете войти в систему с новым паролем.
Этот метод очень прост. Все еще интересно узнать другой способ сброса пароля? читай дальше.
Метод 2:
В главном меню загрузки GRUB выберите пункт Дополнительные параметры для Ubuntu.
Выберите дополнительные параметры в меню grub
Выберите второй вариант, то есть режим восстановления.
Выберите режим восстановления
Вы увидите список вариантов восстановления. Выберите параметр Перейти в корневую оболочку.
Перейдите в командную строку root в Ubuntu
Теперь вы перейдете в однопользовательский режим.
Введите следующую команду, чтобы смонтировать корневую файловую систему (/) в режиме чтения/записи.
mount -o remount,rw /
Затем измените пароль администратора, например sk, с помощью команды:
passwd sk
Введите новый пароль дважды.
Сбросьте sudo или пароль администратора в Ubuntu
Затем введите exit, чтобы вернуться в меню восстановления. Выберите «Возобновить», чтобы запустить систему Ubuntu.
Возобновить нормальную загрузку
Вы можете увидеть следующее сообщение: «Теперь вы собираетесь выйти из режима восстановления. Нажмите ENTER, чтобы продолжить.
Выйти из режима восстановления
Вот и все. Теперь вы можете войти в систему с новым паролем.
Все вышеперечисленные методы должны работать как в настольной, так и в серверной версии.
Что делать, если я не знаю имя пользователя?
Я не хочу сбрасывать пароль пользователя root, а хочу сбросить пароль другого обычного пользователя. Как мне это сделать? Или вы можете спросить, я собираюсь сбросить пароль моей клиентской системы, а мы оба не знаем имени пользователя. Можно ли сбросить пароль конкретного пользователя? Да, ты можешь.
После входа в однопользовательский режим вы можете просмотреть список существующих пользователей командой:
cat /etc/passwd
Пример вывода:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
systemd-timesync:x:100:103:systemd Time Synchronization,,,:/run/systemd:/bin/false
systemd-network:x:101:104:systemd Network Management,,,:/run/systemd/netif:/bin/false
systemd-resolve:x:102:105:systemd Resolver,,,:/run/systemd/resolve:/bin/false
systemd-bus-proxy:x:103:106:systemd Bus Proxy,,,:/run/systemd:/bin/false
syslog:x:104:109::/home/syslog:/bin/false
messagebus:x:105:110::/var/run/dbus:/bin/false
uuidd:x:106:111::/run/uuidd:/bin/false
sshd:x:107:65534::/var/run/sshd:/usr/sbin/nologin
sk:x:1000:1000:sk,,,:/home/sk:/bin/bash
Или вы можете перечислить имена пользователей только с помощью команды:
awk -F':' '{ print $1}' /etc/passwd
Пример вывода:
root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
proxy
www-data
backup
list
irc
gnats
nobody
systemd-timesync
systemd-network
systemd-resolve
systemd-bus-proxy
syslog
messagebus
uuidd
sshd
sk
Приведенные выше команды одинаковы для многих дистрибутивов Linux.
Заключение
В этом уроке мы узнали, как сбросить пароль пользователя root, а также пароль обычного пользователя. Не верьте слепо в свою безопасность после установки надежного пароля для учетной записи пользователя root и других системных учетных записей. Как вы можете видеть в этом руководстве, пароли можно легко сбросить в течение нескольких минут, независимо от того, являетесь ли вы пользователем root или обычным пользователем. Мы должны быть более осторожными и зашифровать наши данные, разделы и, конечно же, установить надежный пароль для загрузчика GRUB, чтобы защитить нашу систему. Обратитесь к следующему руководству, чтобы узнать, как установить пароль для загрузчика Grub.
- Как защитить паролем загрузчик GRUB в Linux