Ubuntu требует логин и пароль
Забыли рутовый пароль для входа в Ubuntu Linux ? Не беда. Сейчас расскажем, как быстро восстановить доступ.
Упомянутый здесь метод работает для сброса пароля Ubuntu в VMware, двойной загрузки или одиночной установки. Все, что вам нужно, это немного терпения и выполнить пару команд. Вы сбросите пароль root в течение пары минут.
Если нужна другая сборка, то мы также рассказывали про восстановление пароля в CentOS и Debian
Сброс пароля Ubuntu из режима восстановления (recovery mode)
Шаг 1. Загрузитесь в режиме восстановления
Включите компьютер. Зайдите в меню Grub . Как правило, оно появляется автоматически, а если нет, то удерживайте клавишу Shift , пока не появится меню загрузки.
Если вы используете Oracle VirtualBox или VMWare , вы должны удерживать клавишу Shift при появлении логотипа Oracle или VMWare.
В меню grub выберите «Дополнительные параметры для Ubuntu» (Advanced Options for Ubuntu) :
Здесь вы увидите возможность перейти в режим восстановления (recovery mode) :
Выбрав его, вы сначала увидите темный экран и после непродолжительной загрузки окажитесь в меню восстановления.
Шаг 2. Переходим в командный интерпретатор суперпользователя
Теперь вам будут представлены различные варианты режима восстановления. Здесь вам нужно выбрать «Root Drop to root shell prompt» («Перейти в командный интерпретатор суперпользователя» по-русски) . Просто нажмите клавишу Enter, чтобы выбрать эту опцию.
После этого у вас внизу появится командная строка.
Шаг 3: Перемонтировать рут с правами записи
У вас должен быть доступ на запись к корневому разделу. По умолчанию он имеет доступ только для чтения. Используйте команду ниже, чтобы перемонтировать ее с правами записи:
mount -rw -o remount /
Шаг 4: Сбросьте имя пользователя или пароль
Здесь вам будет представлен root-доступ. Используйте следующую команду, чтобы получить список всех доступных пользователей:
Из предыдущей команды выберите пользователя ( username ), для которого вы хотите сбросить пароль. Теперь используйте следующую команду для сброса пароля для выбранного пользователя (вместо username указываем имя нашего пользователя):
У нас запросят новый пароль и подтверждение. Введите новый пароль дважды:
Enter new UNIX password:
Retype new UNIX password:
Готово! Вы только что успешно сбросили пароль. Теперь выйдите из командной строки root:
Когда вы выйдете, вы вернетесь в меню режима восстановления. Выберите нормальный вариант загрузки - Resume .
Может появится предупреждение о совместимости графического режима, но не волнуйтесь. Полная перезагрузка решит проблему, если таковая имеется.
После перезагрузки вы сможете войти с новым паролем.
Альтернативный метод сброса пароля Ubuntu
Если по каким-либо причинам у вас возникли трудности с переходом в корневую оболочку и сменой пароля, вы можете попробовать выполнить следующие действия:
Перезагрузите компьютер. Удерживайте Shift , чтобы открыть экран grub (если он не работает автоматически). Нажмите E в приглашении grub для редактирования экрана grub.
Найдите строку, начинающуюся с linux, измените ro на rw и добавьте init=/bin/bash в конце этой строки.
Нажмите Ctrl-X, чтобы сохранить изменения и загрузиться. Теперь вы загружаетесь в ядро Linux с правами на чтение и запись, и вместо графического интерфейса пользователя вы будете использовать оболочку bash . Другими словами, ваша система будет загружаться в корневой пароль без пароля.
Введите команду passwd с вашим именем пользователя. Если вы не знаете имя пользователя, проверьте с помощью команды ls/home (как в первом методе).
Теперь установите новый пароль. После того, как вы установили новый пароль, выйдите из терминала. Просто введите reboot в терминал или используйте команду выключения.
Готово! Пароль изменен.
Возможные проблемы и их решение
Ошибка “Authentication token manipulation error”
passwd username
Enter new UNIX password:
Retype new UNIX password:
passwd: Authentication token manipulation error
passwd: password unchanged
Причиной этой ошибки является то, что файловая система монтируется только с доступом для чтения. Измените доступ и перемонтируйте файловую систему следующим образом:
mount -rw -o remount /
Нет пункта “recovery mode”
Если нет пункта recovery mode , то вам нужно выбрать строчку с вашей системой, нажать E и допишите в конец опций ядра слово single. Затем нужно нажать B чтобы загрузился тот же терминал с правами суперпользователя.
Ошибка “end Kernel panic”
Вы можете увидеть такой вывод:
end Kernel panic - not syncing: Attempted to kill init! exit code=0x0007f00
Убедитесь, что вы удалили опцию splash boot при редактировании пункта меню grub.
Ошибка “Failed to connect to bus”
При попытке перезагрузиться с помощью команды reboot вы можете получить:
Failed to connect to bus: No such file or directory
Failed to talk to init daemon.
Все знают, что с паролями нужно обращаться аккуратно, записывать их в надежном месте, чтобы не забыть. Но знание это одно, а на деле получается совсем по-другому. У многих пользователей часто пароли теряются, особенно, если вы ими не пользуетесь. А как вы знаете, архитектура Linux не позволит выполнить какие-либо административные действия без прав суперпользователя.
Поэтому даже если при серфинге в интернете пароль пользователя вам не нужен, при условии, что вы настроили автоматический вход в систему, то уже установить программу без него или изменить настройки системы вы не сможете. В этой статье мы рассмотрим как выполняется сброс пароля Ubuntu если вы его забыли.
Какие пароли бывают в Ubuntu
Сначала нужно обговорить какие пароли бывают и что мы будем сбрасывать. Потому что Ubuntu несколько отличается от других дистрибутивов в этом плане. В большинстве дистрибутивов Linux есть пользователь root, он имеет полномочия на выполнение всех действий и от его имени можно авторизоваться, как и от любого другого пользователя.
Но Ubuntu пошла другим путем. Здесь тоже есть суперпользователь, но из соображений безопасности, по умолчанию, вы не можете авторизоваться от его имени. Все действия выполняются через утилиту sudo от имени обычного пользователя. Пароль для пользователя root не задан и трогать его мы не будем. А будем восстанавливать пароль для текущего пользователя.
Если вы не знаете какое имя у вашего текущего пользователя, его можно посмотреть с помощью такой команды:
Это имя пригодится вам для сброса пароля.
Сброс пароля Ubuntu с помощью sudo
Сброс пароля Ubuntu - дело не такое уж сложное. Все может оказаться еще проще, если у вас есть другие пользователи, к которым вы помните пароль и у которых есть право использования утилиты sudo. Для того чтобы изменить пароль для пользователя достаточно авторизоваться от имени другого пользователя и выполнить команду passwd, передав ей имя нужного пользователя, например losstuser:
sudo passwd losstuser
А затем ввести пароль текущего пользователя:
И два раза ввести новый пароль для пользователя, пароль которого вы забыли.
Но не всегда все так просто и о запасном варианте мы вспоминаем только тогда, когда создавать его уже поздно. Поэтому есть еще один способ, которым можно выполнить восстановление пароля Ubuntu.
Как сбросить пароль с помощью Grub
Если у вас нет пользователя, с помощью которого вы могли бы изменить пароль в системе, то это можно сделать с помощью другого Linux дистрибутива или Recovery Mode. В загрузчике Grub вы можете менять параметры, передаваемые ядру. Например, вы можете передать параметр init, который попросит ядро выполнить вместо системы инициализации вашу команду. Но для этого вам надо меню загрузчика Grub. Если меню Grub вообще не показывается, а вместо этого сразу начинается загрузка операционной системы, зажмите правый Shift до начала загрузки системы, меню должно появится:
Для того чтобы настроить параметры ядра, выберите пункт меню, с которым вы обычно загружаетесь, например, первый и нажмите клавишу E. Откроется редактор конфигурации выбранной секции. Вы можете использовать стрелки вверх-вниз, вправо-влево для перемещения по тексту. Тут вам необходимо найти строчку, начинающуюся со слова linux. В конце неё есть два параметра: quiet splash.
Первый параметр указывает, что надо выводить минимум информации во время загрузки, а второй - показывает заставку. Если заставку не отключить, то в последних версиях Ubuntu вы можете не увидеть консоль восстановления. Поэтому удалите их, а вместо них добавьте: verbose init=/bin/bash. Должно получится вот так:
Для загрузки с этой конфигурацией нажмите Ctrl+X. Обратите внимание, что измененная конфигурация действует только для текущей загрузки и никуда не сохраняется. Если всё прошло хорошо, то вы увидите такую консоль:
По умолчанию, в режиме восстановления корневая файловая система монтируется только для чтения чтобы вы случайно ничего не повредили, но так мы не сможем изменить пароль, поэтому нужно перемонтировать ее для чтения/записи:
mount -o remount,rw /
Затем осталось восстановить пароль Ubuntu. Можно вернутся к команде passwd, которая использовалась в предыдущем пункте для восстановления пароля. Например, для того же пользователя losstuser команда будет выглядеть вот так:
Но я бы не советовал выполнять сброс пароля root ubuntu, если вы не уверенны что вам это нужно. Лучше придерживаться решения разработчиков дистрибутива.
Выводы
В этой небольшой статье мы рассмотрели как сменить пароль в Ubuntu в операционной системе или с помощью режима восстановления. Как видите, это не так сложно. Если вы хотите чтобы никто не смог получить доступ к вашему паролю нужно использовать шифрование всего диска, например, LUKS. Более подробно узнать о работе утилиты passwd вы можете в статье как сменить пароль Linux. Пусть у вас никогда не возникает ситуации забыл пароль ubuntu, пароли надо надежно сохранять, запоминать, или, на крайний случай, записывать на бумаге!
Сегодня поговорим о том, как мы нашли локальную авторизацию без пароля в Ubuntu, которая, похоже, никогда не будет закрыта. Как всё происходило, читайте под катом.
Одним прекрасным летним вечером автор статьи закрыл крышку рабочего ноутбука с Ubuntu 16.04 Desktop на Unity и отправился домой. Вечер был настолько прекрасен, что я решил взять пару дней отпуска, бросил СМС начальнику, и он меня отпустил.
Как оказалось, не у всех моих коллег этот вечер был таким же прекрасным. У c4n сломался ноутбук, поэтому он попросил одолжить ему мой, но с его жестким диском. Я, конечно, разрешил.
С этого и началось наше увлекательное расследование.
Что произошло?
Утром следующего дня c4n разобрал мой ноутбук и вставил туда свой жесткий диск. Он открыл крышку и увидел вместо начала загрузки своей ОС окно входа в мою систему. Оно было кликабельно, и c4n начал вводить случайные пароли, однако, всё безуспешно. Расстроившись, он нажал на кнопку выключения, и тут произошло чудо.
Вместо перезагрузки компьютера был выполнен успешный вход в мою систему, а также были показаны последние открытые мной программы и документы. Стоит отметить, что документы не просто были показаны, они вполне себе работали! Можно было скроллить по документам и ходить по вкладкам браузера. c4n тут же скинул мне скриншот.
На самом деле скриншот был другой. Я, уходя с работы, не оставляю открытый KeePass и сайт компании.
На лицо локальная авторизация без пароля!
Когда я вышел из отпуска, мне стало интересно, что является виной этого явления, всегда ли воспроизводится и всегда ли воспроизводится одинаково, на всех ли системах воспроизводится.
Причины
Как оказалось, виной данного явления было то, что при закрытии крышки мой ноутбук уходил не в гибернацию, а в сон (т.е. оставлял питание на оперативной памяти), а после открытия крышки в оперативной памяти оставалась загруженная ОС и последние файлы, с которыми я работал. ОС ничего не знает о том, что из компьютера вынули жесткий диск, и продолжает работать, пока не понадобится обратиться к жесткому диску.
Почему удаётся пройти авторизацию, для нас осталось загадкой. Мы грешим на работу модулей PAM (Pluggable Authentication Modules), которые, вероятнее всего, не находятся в оперативной памяти, а Ubuntu 16.04 неправильно обрабатывает их отсутствие, но потом поняли, что проблема в чём-то другом.
Всегда ли воспроизводится и всегда ли одинаково?
Наши эксперименты начались с Ubuntu 16.04. Действия были следующие:
- Отправляем компьютер в спящий режим.
- Вынимаем жесткий диск.
- Выводим компьютер из спящего режима.
- Компьютер показывает окно входа, вводим случайный пароль => видим окна пользователей перед слипом (все окна рабочие).
- Компьютер показывает окно входа, вводим случайный пароль => система говорит, что пароль неверный => однократно нажимаем кнопку питания => видим окна пользователей перед слипом (все окна рабочие).
- Компьютер показывает черный экран (по нему бегает курсор), нажимаем случайные клавиши и Enter => видим окна пользователей перед слипом (все окна рабочие).
- Компьютер показывает черный экран (по нему бегает курсор), нажимаем случайные клавиши и Enter => ничего не происходит => однократно нажимаем кнопку питания => видим окна пользователей перед слипом (все окна рабочие).
Эксперимент проводился много раз, и все разы удавалось получить доступ к окнам пользователя, т.е. воспроизводимость равна 100%. Это очень круто для такого странного бага. Правда, стоит отметить, что доступны только активные окна, переключиться на свёрнутые окна нам не удалось. Также некоторые окна исчезали спустя время, а иногда наблюдался эффект разлогинивания, но один из четырех способов входа позволял вернуться обратно.
Мы сняли небольшое видео, которое демонстрирует весь процесс атаки.
На всех ли системах воспроизводится?
Условием тестирования было наличие всех последних обновлений на системе. Зачем нам бага, которую давно закрыли?
Для начала было решено проверить воспроизводится ли баг на обычных ПК (не ноутбуках) с Ubuntu 16.04 с Unity. Была теория, что показ окон может быть как-то связан с видеокартой. Поэтому проверка осуществлялась с ПК как с интегрированной, так и с дискретной видеокартой, во всех случаях результат был один и тот же – бага отлично отрабатывает.
Дальше была взята Ubuntu 16.04 с GNOME. И тут нас ждало разочарование: бага не отрабатывала. Иногда, при выходе из слипа, система на полсекунды показывала последние окна (вполне реально заснять на видео), про это исследователи сообщили ещё в 2011 году, и она не закрыта до сих пор.
Дальше мы взяли Arch с Wayland и Xorg — разочарование, не работает. Debian 9 c GNOME и опять разочарование. Также не отработало на новой Ubuntu 18.04 — не удивительно, ведь к этому времени мы уже стали подозревать, что проблема в Unity. Поэтому решили для последних тестов взять Ubuntu 14.04, а еще посмотреть, что произойдёт с Ubuntu 18.04, если поменять оконный менеджер с GNOME на Unity. На Ubuntu 14.04 все хорошо отработало (хотя время жизни окон было значительно меньше, чем на 16.04). На Ubuntu 18.04 с Unity после выхода из слипа система сразу падает, и никакие эксперименты дальше провести нельзя.
Вывод: мы решили, что уязвимы версии Ubuntu с нативно установленной Unity, т.е. версии
- 10.10
- 11.04
- 11.10
- 12.04
- 12.10
- 13.04
- 13.10
- 14.04 (протестировано нами)
- 14.10
- 15.04
- 15.10
- 16.04 (протестировано нами)
- 16.10 (протестировано нами)
- 17.04 (протестировано нами)
Почему мы считаем, что это плохо
Уязвимость позволяет получить только локальный доступ к данным, и то не ко всем, а лишь к тем, что открыты в приложениях и развернуты. Однако, это все равно довольно критично, поскольку:
- Используемые данные могут быть не сохранены на диск (например, редактируемый документ).
- Данные могут находиться в шифрованной домашней директории (например, файлик с паролями).
- Данные могут быть на шифрованной флешке.
- Данные могут требовать дополнительной авторизации (как в нашем PoC с KeePass).
Скептики скажут, что подобного результата можно легко добиться, проведя cold boot атаку, а результаты буду даже лучше, но как часто кто-то из вас носит с собой термос с парой литров жидкого азота?
Мы решили, что проблема критичная и надо писать в Ubuntu.
Как мы пишем в Ubuntu
Попытки переубедить не увенчались успехом. Нас отправили в тотальный игнор на неделю. После чего нам дали разрешение публиковать данное исследование:
UPD: 9 июля 2018 года, в 16 часов мы решили сделать багу публичной (спасибо amarao). В обсуждении на launchpad багу подтвердили для Mate 18.04, а не только для Unity. Также сообщество настаивает, что бага существует и её не стоит игнорировать.
Забыл пароль Linux.
Недавно случилось, что необходимо стало установить программу на машину где стоит ubuntu, но как многие знают в системе linux при совершении того или иного действия необходимо знать пароль пользователя.
Если запуск и работа Linux могут быть настроены без ввода пароля, то внесении изменений попросит пароль.
Вот задача ? Пароль Linux все уже забыли и наверное даже и не знали.
Система была установлена и настроена. Пароль никому не нужен был, ведь комп включался и на нем работали в стандартных приложениях, в основном удаленно. Если проще, то изменения не требовались, но спустя несколько лет нужно стало сменить браузер. Тут и пришлось обратится ко всемирной паутине и сильно задуматься.
Оказалось, что все гораздо проще чем в windows, не нужно ни каких сторонних программ или дисков, совсем просто.
Меняем пароль Linux.
Рассмотрим вариант с Ubuntu
Для начала определимся с именем пользователя, его нам надо знать обязательно, ведь для него мы и меняем пароль. Это по сути все, что нам необходимо.
Например в запущенном Ubuntu имя пользователя можно увидеть в правом верхнем углу.
Возьмем за ситуацию когда большей информацией вы не располагаете.
После некоторого времени, зависит от вашего ПК, откроется меню в котором выбираем строку
Теперь нам необходимо подключить нашу файловую систему операционной системы для редактирования, сделаем это командой:
Как бы все пароль установлен, перезагружаем систему командой reboot. Загрузившись в обычном режиме проверяем.
Если хотите сбросить пароль root Ubuntu, то соответственно имя пользователя указываем root.
Рассмотрим вариант с Linux Mint
Так как linux Mint основан на Ubuntu, то и в нем этот способ будет скорее всего работать.
Включаем компьютер или ноутбук, и при старте в меню режимов запуска, обычно оно появляется при старте системы на 10 секунд и выглядит так
Если вы не смогли увидеть это меню, то перезагрузите компьютер и во время загрузки, после старта Bios удерживайте клавишу Shift, появится это окно.
Выбираем пункт запуска вашей системы, как правило это первый пункт и он выбран автоматически (выбираем стрелочками без нажатия клавиши Enter). Когда выбрали нужный пункт нажимаем кнопку E
Откроется меню файл с параметрами запуска системы, пролистайте стрелочками вниз до строки такого содержания
выглядит она так
в этой строке окончание
Выглядеть это будет так
теперь нажимаем F10 или Ctrl +x
В результате система загрузится в терминальном режиме от пользователя root
Теперь смотрим пользователей на нашем компьютере, если не знаем, командой
Выглядеть это будет так
Теперь перезагружаем ПК с помощью сочетания клавиш Ctrl+Alt+Del
Читайте также: