Linux и пароли


Когда можно использовать GRUB

           Если у вас установлен загрузчик GRUB и есть доступ к редактированию параметров загрузки выделенной строки, то задача становится очень простой. Следуйте дальнейшим рекомендациям, и получите права рута в кратчайшие сроки. А как только вы станете рутом, сразу сможете сделать все что угодно.
          В окне загрузчика GRUB выделите строку с нужной версией линукса, для которого вам нужно сбросить пароль Нажмите 'e' для редактирования. Выберите строку ядра. Добавьте 'single' в конец строки. Нажмите 'b' для загрузки. Если система продолжает запрашивать пароль рута, добавьте в конец строки init=/bin/bash Снова нажмите 'b' для загрузки




         После этого вы либо увидите приглашение для рута, либо восстанавливающее меню, где нужно выбрать строку с рутом. Используйте passwd <имя пользователя> для того чтобы изменить пароль у любого пользователя



Выполните команду reboot для перезагрузки системы и затем авторизуйтесь с новым паролем

Также следует заметить что некоторые дистрибутивы создают режим восстановления во время установки. Если в вашем меню GRUB есть такой пункт, вам не нужно производить все вышеперечисленные действия, просто выберите режим восстановления, а затем приглашение для рута, в последующем диалоговом окне.


Когда нет возможности использовать GRUB

Если вы не используете GRUB по каким-то причинам, вы можете восстановить пароль с помощью live CD (Я буду использовать Ubuntu live CD, вы можете взять любой другой). Просто следуйте дальнейшим инструкциям:
Загрузитесь с live CD Выберите «Попробовать Ubuntu без изменений на вашем компьютере» (Try Ubuntu without any changes to your computer)



    Когда система будет готова, запустите окно терминала и приготовьтесь к выполнению некоторых действий в командной строке
    Напечатайте в окне терминала sudo fdisk -l. В результате мы узнаем, в какой раздел диска установлен линукс и непосредственно имя самого жесткого диска, в представленном примере нужный нам раздел называется /dev/sda1 . Если вы точно знаете нужный раздел, этот шаг можно пропустить.



Далее нам нужно монтировать линукс-раздел. Для этого создайте папку, в качестве точки для монтирования, используя команду: sudo mkdir /media/linx_part


Примонтируйте линукс-раздел командой sudo mount /dev/sda1 /media/linx_part


Измените рута в примонтированном разделе — sudo chroot /media/sda1Используйте passwd для изменения текущего пароля на новый



Перезагрузите систему с помощью команды reboot

Linux и пароли 

 Данная статья, как и все остальные материалы этого блога, является конспектом основанном на личном опыте и посвящена паролям ОС Linux. Как всем (ну я во всяком случае надеюсь) уже давно известно, идеальных людей не бывает. Способности забывать у каждого человека проявляются индивидуально. Моя интуиция и практический опыт подсказывают, что каждый второй хотя бы раз в жизни забывал свой пароль от почты, аккаунта социальной сети, операционной системы и т. д. Восстановить можно теоретически практически любой пароль. В этой статье речь пойдет о восстановлении забытых паролей к ОС Linux. Мотивов для сброса паролей может быть несколько. Самый банальный из них, это пользователь, который забыл или потерял листочек с паролем к своей ОСи. Правда бывают и более абсурдные случаи, когда уволенный (на не совсем законных основаниях) администратор (во всяком случае ему так может показаться) оставил неверный password к рабочему серверу. Но, как бы там ни было, вопрос сброса пароля может возникнуть перед любым пользователем Linux, а про администраторов я вообще молчу. Где хранятся пароли в Linux? В целях безопасности, во всех современных дистрибутивах Linux пароли хранятся в зашифрованном виде, в файле /etc/shadow, которых доступен для чтения только root пользователю с идентификатором равным нулю. Хеш находится между первым и вторым двоеточием. Существует два способа изменения (сброса) passwd root и других пользователей Linux. Как показывает практика, изменить root -овый password немногим сложнее, чем, например, сбросить пароль в Windows. Сброс пароля в Linux 
 Итак, способ номер раз, с использованием подручных средств вида LiveCD: Для этого необходимо загрузиться с любого LiveCD (Ubuntu, Knoppix, Kali Linux) и в терминале, последовательно ввести команды: 
root@localhost:~# sudo fdisk -l 
Команда fdisk -l покажет подключенные жесткие диски и структуру разделов. 
После чего нужно смонтировать раздел HD в котором установлена проблемная система, в моем случае это раздел /dev/sda6 но у вас он скорее всего будет другой 
root@localhost:~# sudo mount /dev/sda6 /mnt 
Добавляем root окружение к каталогу /mnt. 
root@localhost:~#sudo chroot /mnt 
Изменяем пароль root или других пользователей, системной командой passwd: root@localhost:~# passwd username 
В общем все, как на рисунке Но бывают случаи, когда под рукой просто нет LiveCD, а пароль все-таки необходимо сбросить, причем очень быстро. 
Способ номер два. Тяжелый случай. Однажды мне было необходимо сбросить пароль пользователя сервера на Ubuntu. Все усложнялось тем, что пароль root тоже был неизвестен, но назначен, поэтому вначале нужно было получить права root и уже потом изменить пароль. Для большинства дистрибутивов Linux, которые разрешают вход в систему от имени root-a, достаточно в загрузчике Grub выбрать проблемную ОСь и нажать клавишу «e» для редактирования загрузки. После нужно в самый конец строки ядра добавить single, это позволит загрузиться в однопользовательском режиме с правами root и выполнить смену пароля командой passwd. В Ubuntu есть режим восстановления, и моем случае консоль начала требовать пароль root, что можно увидеть на самом первом скриншоте. Решение оказалось очень простым. Нужно в самый конец строки ядра, после root=UUID=12ed6546s-55as-ac4f-adferwf990ca ro quiet splash добавить rw init=/bin/bash и нажать клавишу F10 для загрузки. В этом случае после загрузки ядра управление сразу переходит bash, что позволяет изменить пароли всем пользователям системы включая root. Пример работы можно увидеть на рисунке. В Ubuntu passwd root может изменить любой привилегированный пользователь с правами sudo, если конечно он сам сможет зайти в систему. Но и даже в особо тяжелых случаях, выход, как выясняется есть.


Пошаговая инструкция:
Для смены пароля пользователя в Linux, необходимо выполнить в Терминале (или консоли) следующую команду:
passwd
После ввода этой команды, система потребует от вас корректно и дважды ввести ваш новый пароль.
Если вы хотите сменить пароль другого пользователя, вам необходимы права суперпользователя root. Если вы наделены такими правами, то выполните в Терминале:sudo bashи введите пароль суперпользователя root (о переходе в режим суперпользователя будет свидетельствовать знак "#" вместо привычного для вас знака "$"). И, затем, выполните команду:passwd имя_пользователягде имя_пользователя - логин пользователя, которому вы меняете пароль.
Система опять же потребует от вас корректно и дважды ввести новый пароль.
Это все! Не правда ли просто?! Самое главное - выбирайте надежные пароли и постарайтесь их не забыть!

Сброс пароля root в Linux Debian







Linux Debian Сброс пароля
В данной заметке рассмотрена процедура сброса пароля root в Linux Debian 6.0 squezee с установленным загрузчиком GRUB. Для сброса пароля необходим физический доступ к машине и выполнение следующих пунктов:
  1. Перезагрузить машину и, дождавшись появления окна загрузк, нажать клавишу e (edit)
  2. В конце строки, начинающийся с "linux /boot/vmlinuz-...", поставить пробел и дописать init=/bin/bash
  3. Нажать ctrl+x и дождаться загрузки системы
  4. Перемонтировать корневую файловую систему с правами на запись
    mount -rw -o remount /
  5. Командой passwd сменить пароль пользователя root. Если система выдаст ошибку bash: passwd: command not found примонтировать каталог /usr
    mount /usr
    passwd
  6. Перезагрузить систему

Восстановление пароля для root или угроза безопасности из коробки в Linux


Если Вы забыли пароль и не можете получить доступ к операционной системе? То эта статья для Вас!

В статье собрана исчерпывающая информация, способная помочь отредактировать пароль root в операционной системе Линукс. Способы восстановления подойдут абсолютно для любых дистрибутивов Linux.

В то же время эта статья даст пищу для размышлений на тему незащищенности менеджера загрузки ОС при физическом доступе к Linux машине. Злоумышленник может получить привилегированный доступ к компьютеру или серверу, войдя в однопользовательский режим и сменив пароль root. При этом ему не требуется знать ни единого пароля системы.

1. Введение
Наверх




Есть ситуации, когда требуется войти в систему под root, но пароль неизвестен. Общий механизм восстановления заключается в осуществлении загрузки системы в однопользовательском режиме и редактировании пароля. Этот доступ можно получить только отредактировав конфигурацию менеджера загрузки ОС. Если по какой-то причине этого сделать нельзя (установлен пароль на изменение запуска, используется «самописный» загрузчик и т.д.), то следует использовать LiveCD любого доступного дистрибутива Linux.
Этот подход к восстановлению пароля может быть использован злоумышленником с целью осуществления несанкционированного доступа. Получается, что установленная система по умолчанию не имеет должной защиты при физическом доступе к компьютеру. Злоумышленник может с легкостью получить полный доступ к системе.
Решение, которое может обезопасить от такого рода взлома ОС, заключается в установке пароля доступа к редактированию конфигурации менеджера загрузки системы. Об установке пароля на менеджер загрузки ОС можно прочитать в статье "Установка и настройка пароля на менеджер ОС GRUB".

2. Восстановление пароля root в дистрибутивах Linux




2.1 Дистрибутивы с включенным локальным входом root`aНаверх

К этому списку относится большинство дистрибутивов Linux. Проще говоря, это дистрибутивы, в которых можно залогиниться в системе в качестве root`a. Все примеры, приведенные ниже, относятся к дистрибутиву Mandriva.

Алгоритм восстановления пароля root в дистрибутивах с включенным локальным входом суперпользователя:

  1. При загрузке системы Вы попадаете в меню менеджера загрузки ОС, где списком отображены способы запуска ОС с доступными версиями ядра. В некоторых дистрибутивах используется графический режим (например Mandriva), который отключается клавишей <Esc>.
    GNU GRUBversion 0.97 (639K lower / 129984K upper memory)
    linux
    linux-nonfb
    failsafe
    Use the ↑ and ↓ keys to select which entry is hightlighted.
    Press enter to boot the selected OS, 'e' to edit the
    commands before booting, or 'c' for a command-line.
    В начале списка обычно располагается самое новое ядро, напротив которого Вам следует установить курсор и нажать клавишу <E> (Edit). В данном примере только одно доступное ядро.
  2. Следующим шагом редактируем параметры загрузки ядра.
    GNU GRUBversion 0.97 (639K lower / 129984K upper memory)
    kernel (hd0,0)/boot/vmlinuz BOOT_IMAGE=linux root=/dev/hda1→ 
    initrd (hd0,0)/boot/initrd.img
    Use the ↑ and ↓ keys to select which entry is hightlighted.
    Press enter to boot the selected OS, 'e' to edit the
    commands before booting, or 'c' for a command-line.
    В этом списке ставим курсор на пункт, который начинается со слова kernel и нажимаем клавишу <E> (Edit).
  3. К концу строки после пробела добавляем 1 и нажимаем <ENTER>.
    [ Minimal BASH-like line editing is supported. Fot the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ESC at any time exits. ]
    <a1 resume=/dev/hda5 splash=silent vga=788 1
    Этот добавленный параметр позволяет запустить систему в однопользовательском режиме (Single Mode) с правами root. В следующем окне нажимаем клавишу <B> (Boot).
  4. После загрузки системы меняем пароль суперпользователя root. Для этого запускаем команду:
    # passwd root
    При смене пароля, система не будет спрашивать старый пароль, а сразу предложит ввести новый с последующим его повторным подтверждением.
    sh-3.2# passwd root
    New UNIX password:
    Retype new UNIX password:
    passwd: all authentication tokens updated successfully
    Пароль изменен.
  5. Далее <Ctrl>+<Alt>+<Delete> и при последующем старте системы можно будет зайти под учетной записью суперпользователя root.

2.2 Дистрибутивы с отключенным локальным входом root`aНаверх

К таким дистрибутивам относятся: Ubuntu, Kubuntu, Xubuntu, Edubuntu. Идеология этих дистрибутивов запрещает работать от имени суперпользователя. Поэтому в них по умолчанию отключен локальный вход root`a на компьютер. В таких ОС только восстановить пароль недостаточно. Нужно еще включить этот самый локальный вход.

Восстановление пароля в Ubuntu, Kubuntu, Xubuntu, Edubuntu:

  1. При загрузке системы Вы попадаете в меню менеджера загрузки ОС, где списком отображены способы запуска ОС с доступными версиями ядра. В начале списка обычно располагается самое новое ядро, напротив которого Вам следует установить курсор и нажать клавишу <E> (Edit).
  2. Следующим шагом редактируем параметры загрузки ядра. В этом списке ставим курсор на пункт, который начинается со слова kernel и нажимаем клавишу <E> (Edit).
    uuid b01b2698-983b-4de7-8ba5-fe9Bad772722
    kernel /boot/vnlinuz-2.6.27-9-generic boot=UUID=b01b2698-983b-4de7→
    initrd /boot/initrd.img-2.6.27-9-generic
    quiet
    Use the ↑ and ↓ keys to select which entry is highlighted Press 'b' to boot, 'e' to edit the selected command in the boot sequence, 'c' for a command-line, 'o' to open a new line after ('O' for before) the selected line, 'd' to remove the selected line, or escape to go back to the main menu.
  3. К концу строки после пробела добавляем:
    # rw init=/bin/bash
    В результате на экране получаем:
    [ Minimal BASH-like line editing is supported. Fot the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ESC at any time exits. ]
    <-983b-4de7-Bba5-fe98ad772722 ro quiet rw init=/bin/bash
    Жмем <ENTER> и затем клавишу <B> (Boot).
  4. После загрузки системы меняем пароль root командой:
    # passwd root
    При смене пароля, система не будет спрашивать старый пароль, а сразу предложит ввести новый с последующим его повторным подтверждением.
    root@(none):/# passwd root
    New UNIX password:
    Retype new UNIX password:
    passwd: all authentication tokens updated successfully
    Пароль изменен.
  5. Добавляем разрешение на локальный вход суперпользователю. Для этого нужно отредактировать конфигурационный файл /etc/gdm/gdm.conf. В разделе [SECURITY], находим параметр AllowRoot и меняем его значение на true:
    # sudo nano /etc/gdm/gdm.conf
    # Открываем файл для редактирования
    Ищем строку в разделе [SECURITY]:
    AllowRoot=false
    И меняем параметр AllowRoot на true. Должно получиться так:
    AllowRoot=true
    Закрываем файл, сохраняя внесенные изменения.
  6. Жмем <Ctrl>+<Alt>+<Delete> и при последующем старте системы можно будет зайти под учетной записью суперпользователя root.

3. Использование LiveCD для восстановления пароля root
Наверх




Если по каким-то причинам Вы не можете восстановить пароль root вышеизложенными способами, то предлагаю рассмотреть последний общий способ восстановления. Этот способ подойдет для любой операционной системы Linux.
Суть последнего способа заключается в загрузке компьютера с LiveCD в root окружении вашего корневого раздела и смене пароля.

Использование LiveCD для восстановления пароля суперпользователя root:

  1. Загружаемся с LiveCD;
  2. Монтируем корневую файловую систему к директории /mnt. Про монтирование можно прочитать подробнее в статье "Команда mount в Linux или все о монтировании разделов, дисков, образов ISO и SMB ресурсов"
    # sudo fdisk -l
    # Просматриваем структуру жесткого диска. Корневой раздел будет помечен символом /, именно он нам и нужен.
    # sudo mount /dev/корневой раздел/mnt
    # Монтирование корневого раздела. В качестве точки монтирования директория /mnt.
  3. Добавляем root-окружение системе LiveCD:
    #sudo chroot /mnt
  4. Меняем стандартной командой пароль root:
    #sudo passwd root
    При смене пароля, система не будет спрашивать старый пароль, а сразу предложит ввести новый с последующим его повторным подтверждением.
    root@ubuntu#sudo passwd root
    New UNIX password:
    Retype new UNIX password:
    passwd: all authentication tokens updated successfully
  5. Перезагружаем систему и входим под добавленной учетной записью root.
Из всего написанного выше можно сделать вывод, что восстановление утерянного пароля root не столь уж трудоемкая работа, с которой может справиться любой заинтересованный человек. Даже тот кому этого делать не положено. С точки зрения безопасности, вход в однопользовательский режим операционной системы требует дополнительного внимания.
Об этом должен знать и помнить каждый системный администратор!


Комментарии

Популярные сообщения из этого блога

Права на папки и файлы (unix/chmod)

Автоматическое монтирование дисков и разделов в Linux или что такое fstab? Проблема Debian

Как подключить сетевой диск Windows в Linux