Как получить пароль пользователя Linux

Обновлено: 21.11.2024

<р>11. Потерянный пароль!
Что, если однажды вы сели за компьютер и не смогли вспомнить пароль пользователя? Это могло случиться. Моменты старшего возраста, моменты блондинок, маминые хаймеры — называйте это как хотите — но время от времени люди среди нас теряют случайные биты данных. И, поскольку записывать свои пароли небезопасно (или, скорее, небезопасно), вот как вы можете войти в систему, несмотря на забытый пароль.

ВАЖНО: Советы в этом документе требуют использования команд командной строки. Дополнительные сведения о том, как читать и выполнять подсказки и команды командной строки Linux, см. в Cheat Sheet Linux Clues, особенно в разделе Основы подсказок Linux и Номенклатура командной строки Linux.

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

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

Конечно, это исправление предполагает, что вы помните свой пароль root. Что делать, если вы забыли пароль root? Невозможно? Хорошо, просто представьте, что вы исчезаете в фантастическом отпуске без компьютера. (Это МОЖЕТ случиться.) Допустим, вы провели восхитительные две недели, жаря мозги на солнце или путешествуя по склонам гор, любуясь потрясающими видами. День за днем ​​за днем. Затем, через 14 дней, вы возвращаетесь домой, включаете компьютер, входите в систему и теряете мозг, пытаясь вспомнить свой пароль root. Что вы должны сделать? Что ж, мы покажем вам.

Утерян корневой пароль
ВАЖНО: Физически отключите компьютер от сети и Интернета — вытащите кабель Ethernet, извлеките карту беспроводной связи и т. д. Просто убедитесь, что вы не в сети. Это необходимо для защиты вашего ПК от возможных интернет-атак, пока вы восстанавливаете пароль. Обратите внимание на это предупреждение и следуйте этой процедуре безопасности. На этих этапах Linux уязвим.

Выполните этот двухэтапный процесс. Поскольку первый шаг варьируется от дистрибутива к дистрибутиву, мы представляем несколько альтернатив, включая расширенную версию. Второй шаг практически одинаков для всех.

rescue (Введите "linux Rescue" для Red Hat.)

Компьютер должен загрузиться в режиме восстановления. На экране отобразится несколько вариантов. Выберите: «смонтировать существующие разделы» и перейдите к приглашению оболочки/консоли. (Пользователи Mandrake: вместо этого загрузитесь в «failsafe» из меню Lilo.)

Шаг 1: SuSE
Загрузитесь с первого установочного компакт-диска и нажмите F1 на первом экране, затем выберите «Rescue System» в меню и в подсказке введите:

root (Вам не нужен пароль.)

Шаг 1. Другие дистрибутивы
Загрузитесь с первого установочного компакт-диска (или любого live-CD, такого как Knoppix) и в командной строке введите:

linux single (Для Knoppix введите "knoppix single" без кавычек.)

Шаг 1: Расширенная альтернатива
Если вы регулярно читаете информационный бюллетень Scot и воспользовались советом проводников Linux по аварийному компакт-диску из последнего выпуска информационного бюллетеня, у вас уже есть аварийный компакт-диск Linux, который требуется для эта альтернатива шагу 1.

Загрузившись с загрузочного компакт-диска (или с живого компакт-диска Linux, такого как Knoppix), вы можете обойти шаг 1, смонтировать раздел и, войдя в систему как пользователь root, сразу перейти к шагу 2 и внести изменения в файлы, необходимые для шага 2.

Шаг 2.
После выполнения шага 1 введите в командной строке следующее:

На шаге 2 необходимо внести изменения в эти два файла: «passwd» и «shadow». Введите эту строку:

Затем нажмите клавишу I, чтобы перевести редактор Vi в режим вставки.

Первая строка файла passwd, вероятно, будет выглядеть так:

Осторожно удалите "x" после "root:", не трогая двоеточия. Теперь первая строка должна выглядеть так:

Сохраните файл, нажав клавишу Escape, а затем введите:

Чтобы отредактировать второй файл, введите:

Нажмите клавишу I, чтобы перевести редактор Vi в режим вставки.

Первая строка теневого файла представляет собой длинную зашифрованную строку символов. Измените его на:

корень. (Это четыре двоеточия.)

Сохраните файл, нажав клавишу Escape, а затем введите:

Теперь вы можете перезагрузить компьютер. Войдите в систему как обычный пользователь, откройте консоль и введите:

И установите новый пароль root. Выйдите из системы как пользователь root:

И дело сделано!

Поздравляем! Вы сбросили утерянный пароль. Вы должны планировать никогда больше не отправляться в продолжительный отпуск (или стареть, или заводить детей, и так далее) — чтобы это никогда не повторилось. В конце концов, нет ничего важнее Linux. Верно? Приоритеты, люди!

Имя пользователя с соответствующим паролем для конкретной учетной записи является основным требованием, с помощью которого пользователь может получить доступ к системе Linux.Пароли всех учетных записей пользователей сохраняются в файле или базе данных, чтобы пользователь мог быть проверен при попытке входа в систему. У каждого пользователя недостаточно навыков и опыта, чтобы найти этот файл в своей системе. Однако, если вы получите доступ к базе данных или файлу, в котором хранятся все пароли пользователей для входа в систему, вы сможете легко получить доступ к системе Linux. Когда пользователь вводит имя пользователя и пароль в Linux для входа в систему, он сверяет введенный пароль с записью в различных файлах каталога «/etc».

В файлах /etc/passwd хранится вся важная информация, необходимая для входа пользователя в систему. Проще говоря, в файле /etc/passwd хранятся данные учетной записи пользователя. Этот файл представляет собой обычный текстовый файл, содержащий полный список всех пользователей вашей системы Linux. Он содержит информацию об имени пользователя, пароле, UID (идентификатор пользователя), GID (идентификатор группы), оболочке и домашнем каталоге. Этот файл должен иметь права на чтение, поскольку многие утилиты командной строки используются для сопоставления идентификаторов пользователей с именем пользователя. Но должны иметь ограниченные права доступа на запись только для учетных записей суперпользователя или пользователя root.

В этой статье показано, как и где можно хранить пароли системных учетных записей пользователей в дистрибутиве Linux. Мы реализовали все демонстрации в системе Ubuntu 20.04. Однако вы можете найти файл /etc/passwd в любом дистрибутиве Linux.

Предварительные условия

Для запуска административных команд у вас должны быть привилегии root.

Основные сведения о файле /etc/passwd

Файл /etc/passwd содержит информацию об учетной записи пользователя вашей системы. Все сохраняемые поля отделяются знаком двоеточия «:».
Когда вы запустите следующую команду, вы увидите каждую запись в файле /etc/passwd:

Приведенная выше команда выведет список всех пользователей вашей системы Linux.
На экране терминала отобразится следующий тип формата:

Подробности о полях /etc/passwd Формат
На изображении выше:

Имя пользователя: первое поле представляет имя пользователя. Длина поля имени пользователя определяется между 1-32 символами. Используется, когда пользователь входит в систему. В приведенном выше примере «khuzdar» — это имя пользователя.
Пароль: в приведенном выше примере символ «x» показывает, что пароль хранится в зашифрованном виде в файле /etc/shadow.
Идентификатор пользователя (UID): Идентификатор пользователя должен быть назначен каждому пользователю отдельно. Нулевой UID назначается пользователю root, а идентификаторы пользователей от 1 до 99 назначаются предопределенным или стандартным учетным записям. Дальнейшие UID от 100 до 999 назначаются системным административным учетным записям или группам. На приведенном выше снимке экрана идентификатор пользователя равен 1001.
Идентификатор группы (GID): Следующее поле представляет собой идентификатор группы. GID хранится в файле /etc/group. Исходя из приведенного выше примера, пользователь принадлежит к группе с идентификатором 1001.
Информация об идентификаторе пользователя: Следующее поле предназначено для комментариев. В этом поле вы можете добавить некоторую дополнительную информацию об указанном пользователе, такую ​​как полное имя пользователя, номер телефона и т. д. Однако в приведенном выше примере пользователь не указывает номер телефона.
Домашний каталог: В этом поле отображается расположение домашнего каталога, назначенного текущему пользователю. Если указанный каталог не существует, то он будет отображать «/». На изображении выше показано расположение выделенного пользователя в домашнем каталоге, который называется home/kbuzdar.
Command//shell: абсолютный путь по умолчанию для оболочки или команды — /bin/bash. Это известно как оболочка. Например, системный администратор, использующий оболочку nologin. Он ведет себя как заменяющая оболочка для системных учетных записей пользователей. Если оболочка расположена по пути к /sbin/nologin и пользователь хочет войти непосредственно в систему Linux, оболочка /sbin/nologin закроет или отключит соединение.

Поиск пользователя в файле /etc/passwd

Вы можете искать определенного пользователя в файле /etc/passwd, используя команду grep. Например, мы хотим найти имя пользователя «kbuzdar» в файле /etc/passwd, используя следующий синтаксис, тогда мы можем легко найти указанного пользователя, сэкономив наше время:

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

Поэтому рекомендуется постоянно менять пароль, чтобы снизить вероятность того, что кто-то еще узнает ваш пароль и сможет использовать ваши учетные данные для аутентификации.

При смене пароля пользователя убедитесь, что он соответствует следующим минимальным требованиям:

  • Пароль должен быть надежным: лучше не менее шести-восьми символов или больше.
  • Обязательно используйте сложные пароли, смешивая буквы, цифры и другие символы, чтобы пароль было как можно труднее угадать.
  • Используйте прописные и строчные буквы, чтобы злоумышленнику было сложнее взломать пароль.
  • Не используйте слова из словаря в качестве пароля, потому что злоумышленники используют взломщик паролей для сканирования всего содержимого словаря, и если ваш пароль есть в словаре, они могут легко его взломать.

Изменение пароля пользователя в Linux

Изменить пароль пользователя не так сложно, просто используйте команду passwd, чтобы изменить пароль своей учетной записи (это может быть пользователь root или обычный пользователь).

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

Изменить пароль пользователя в Linux

Если вы вошли в систему как пользователь root, вы можете изменить пароль других пользователей системы, введя команду passwd, за которой следует имя пользователя, чей пароль вы хотите изменить.

Вам не будет предложено ввести старый пароль, так как вы вошли в систему как пользователь root, вы сможете изменить пароли пользователей, не зная старого пароля.

Изменить пароль другого пользователя в Linux

Управление пользователями Linux с помощью команды passwd

Удалить пароль пользователя в Linux

Используйте аргумент -d, чтобы удалить пароль для указанной учетной записи пользователя.

Удалить пароль пользователя в Linux

Заблокировать пароль пользователя в Linux

Используйте аргумент -l, чтобы заблокировать пароль для учетной записи пользователя, если он не используется в течение заданного периода времени.

Блокировка пароля пользователя в Linux

Разблокировать пароль пользователя в Linux

Используйте аргумент -u, чтобы разблокировать пароль пользователя, который был заблокирован параметром -l.

Разблокировать пароль пользователя в Linux

Заставить пользователя сменить пароль в Linux

Используйте аргумент -e, чтобы заставить пользователя сменить пароль при следующей попытке входа в систему.

Принудительное изменение пароля пользователя в Linux

Команда passwd очень полезна для управления системными пользователями в вашей системе Linux. Он манипулирует пользовательскими записями в файле /etc/passwd, и системный администратор должен иметь его в качестве набора инструментов.

В этом руководстве мы объясним, как изменить пароль пользователя в Linux. Мы также покажем вам, как заставить пользователей сменить пароль при следующем входе в систему.

Инструкции должны работать в любом дистрибутиве Linux, включая Ubuntu, Debian и CentOS.

В Linux вы можете изменить пароль учетной записи пользователя с помощью утилиты passwd.

Зашифрованные пароли пользователей, а также другая информация, связанная с паролями, хранятся в файле /etc/shadow.

Как обычный пользователь, вы можете изменить только свой собственный пароль. Пользователь root и пользователи с привилегиями sudo могут изменять пароли других пользователей и определять, как можно использовать или изменять пароль.

При смене пароля убедитесь, что вы используете надежный и уникальный пароль.

Самое важное, что вы можете сделать для защиты своей учетной записи, — это надежный пароль. Часто надежный пароль состоит не менее чем из 16 символов и содержит как минимум одну заглавную букву, одну строчную букву, одну цифру и один специальный символ.

В целях безопасности рекомендуется регулярно обновлять пароль и использовать уникальный пароль для каждой учетной записи.

Чтобы изменить пароль своей учетной записи пользователя, запустите команду passwd без каких-либо аргументов:

Вам будет предложено ввести текущий пароль. Если пароль правильный, команда попросит вас ввести и подтвердить новый пароль.

Пароли не отображаются на экране при их вводе.

При следующем входе в систему используйте новый пароль.

Как мы упоминали во введении, только пользователь root и пользователи с доступом sudo могут изменить пароль другой учетной записи пользователя.

В следующем примере предполагается, что вы вошли в систему как пользователь с правами sudo.

Чтобы изменить пароль другой учетной записи пользователя, выполните команду passwd, а затем введите имя пользователя. Например, чтобы изменить пароль пользователя с именем linuxize , выполните следующую команду:

Вам будет предложено ввести и подтвердить новый пароль:

В случае успеха команда напечатает что-то вроде этого:

По умолчанию пароли имеют неограниченный срок действия. Чтобы заставить пользователя изменить свой пароль при следующем входе в систему, используйте команду passwd с опцией --expire, за которой следует имя пользователя:

Приведенная выше команда немедленно истечет срок действия пароля пользователя.

В следующий раз, когда пользователь попытается войти со старым паролем, ему будет показано сообщение, требующее изменить пароль:

Как только пользователь установит новый пароль, соединение будет закрыто.

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

Дополнительную информацию о команде passwd можно найти, набрав man passwd в своем терминале или посетив справочную страницу Linux passwd.

Читайте также: