- Как сменить пароль в Linux
- Основы
- Как сменить пароль пользователя
- Как сменить пароль другого пользователя
- Как поменять пароль группы
- Как заставить пользователя поменять пароль
- Как поменять пароль root
- Как вручную поменять пароль
- Выводы
- Изменяем пароль пользователя в Linux
- Меняем пароль текущего пользователя
- Меняем пароль произвольного пользователя
- Дополнительная информация
- Сброс пароля Linux
- С использованием GRUB
- С использованием ALT Rescue
- С использованием ALT Rescue и автомонтированием системы
- С использованием установленной системы
- Сброс пароля Linux
- С использованием GRUB
- С использованием ALT Rescue
- С использованием ALT Rescue и автомонтированием системы
- С использованием установленной системы
Как сменить пароль в Linux
Операционная система Linux изначально проектировалась как многопользовательская и безопасная система. Поэтому здесь у каждого пользователя есть пароль. Полномочия пользователей и способ их аутентификации заложен на уровне системы.
Иногда возникает необходимость изменить пароль в Linux. Во-первых, это может произойти, если вы забыли пароль или просто хотите его поменять. Другая же причина — это безопасность. Пароли нужно менять по крайней мере несколько раз в год, и, если вы системный администратор компании, важно заставить ваших пользователей тоже менять пароли время от времени, и у Linux для этого тоже есть инструменты. В этой статье мы рассмотрим, как поменять пароль в Linux.
Основы
В Linux есть несколько утилит с помощью которых может быть выполнена смена пароля Linux. В этой статье мы будем рассматривать только способы сделать это с помощью терминала, с графическими способами, я думаю, вы и так без труда разберётесь, к тому же они не дают нужной нам гибкости.
Список пользователей в Linux хранится в файле /etc/passwd, вы можете без труда открыть его и посмотреть, пароли же выделены в отдельный файл — /etc/shadow. Этот файл можно открыть только с правами суперпользователя, и, более того, пароли здесь хранятся в зашифрованном виде, поэтому узнать пароль Linux не получиться, а поменять вручную будет сложно.
В большинстве случаев смена пароля выполняется с помощью утилиты passwd. Это очень мощная утилита, она позволяет не только менять пароль, но и управлять сроком его жизни. У неё такой синтаксис:
$ passwd опции пользователь
Рассмотрим опции, чтобы лучше ориентироваться в использовании утилиты:
- -d — удалить пароль пользователя, после этого он не сможет войти
- -e — сделать пароль устаревшим
- -i — через сколько дней после того, как пароль устарел, отключить аккаунт, если пользователь не сменил пароль
- -l — запретить пользователю входить в систему
- -n — минимальное количество дней между сменами пароля
- -S — отобразить информацию об аккаунте
- -u — отменяет действие параметра -l
- -x — максимальное количество дней, пока пароль можно использовать.
- -w — количество дней, после которых нужно предупреждать пользователя о том, что надо сменить пароль.
Возможно, сейчас всё выглядит очень непонятно, но на примерах станет проще. Мы рассмотрим, зачем и в каких случаях нужно использовать все эти опции, чтобы сменить пароль в Linux. Переходим к практике.
Если вы забыли пароль и вам его надо не просто сменить, а сбросить, вам будут полезными эти две статьи:
Как сменить пароль пользователя
Вы можете сменить свой пароль, когда захотите. Для этого вам не нужно особых прав суперпользователя, только знать свой текущий пароль. Просто откройте терминал и выполните утилиту passwd без параметров:
Дальше необходимо ввести новый пароль — и готово, теперь он измеён. Он кодируетсятся с помощью необратимого шифрования и сохраняется в файле /etc/shadow Но заметьте, что вы не можете использовать здесь любой пароль. Система Linux заботится о том, чтобы пользователи выбирали достаточно сложные пароли. Если он будет очень коротким или будет содержать только цифры, вы не сможете его установить.
Общие требования для пароля такие: должен содержать от 6 до 8 символов, причём один или несколько из них должны относиться как минимум к двум из таких множеств:
- Буквы нижнего регистра
- Буквы верхнего регистра
- Цифры от нуля до девяти
- Знаки препинания и знак _
Теперь рассмотрим, как изменить пароль Linux для другого пользователя.
Как сменить пароль другого пользователя
Со своим паролем всё понятно, но если вы захотите поменять код для другого пользователя, то придётся вопользоваться правами суперпользователя. А во всём остальном процесс тот же:
Здесь user — это пользователь, для которого нужна смена пароля Linux. Требования для пароля такие же: вы не сможете установить слишком простой пароль.
Вы можете удалить пароль Linux для пользователя, тогда он не сможет войти в систему:
Как поменять пароль группы
Наверное вы видели в своей системе файл /etc/gshadow. Этот файл эквивалентен /etc/shadow, только содержат пароли для групп. Вы не можете войти от имени группы, но зато, зная её пароль, можете получить доступ к предоставляемым ею функциям в отдельной командной оболочке с помощью команды newgrp.
Для установки пароля на группу используется утилита очень похожая на passwd — gpasswd. Естественно, нам нужны права суперпользователя. Например:
Теперь попробуем получить полномочия группы:
После ввода пароля мы временно оказываемся в этой группе и можем работать с теми файлами, к которым разрешен доступ этой группе. Чтобы удалить пароль Linux из группы, используется опция -r:
Как заставить пользователя поменять пароль
Безопасность сервера — это одна из самых важных вещей. Часто причиной проблем с безопасностью становятся сами пользователи, которые недостаточно часто меняют пароли или делают их слишком простыми. Если вы администратор, у вас есть возможность заставить пользователей выполнять смену пароля время от времени, а также автоматически отсылать им предупреждения о том, что пора сменить пароль пользователя Linux.
Всё это позволяет сделать утилита passwd. Сначала давайте рассмотрим, как посмотреть информацию о пароле в passwd. Для этого используется опция -S:
- Первое поле — имя пользователя
- Второе поле показывает одно из значений: P — пароль установлен, L — пользователь заблокирован, NP — пароля нет.
- 07/21/2016 — дата последнего изменения пароля.
- 0 — минимальное время до смены пароля
- 99999 — максимальное время действия пароля
- 7 — за сколько дней нужно предупреждать об истечении срока действия пароля
- -1 — через сколько дней пароль нужно деактивировать.
Например, через тридцать дней после смены, пароль пользователя станет устаревшим:
За три дня до того, как пароль устареет, предупредим пользователя, что его нужно сменить:
Если он этого не сделает в течении пяти дней, аккаунт нужно отключить:
Пароль можно менять не чаще, чем раз в 10 дней:
Смотрим теперь, что у нас получилось:
Как поменять пароль root
Изменить пароль Linux для root очень просто, точно так же, как и для любого другого пользователя. Только нужно иметь права суперпользователя. Вот так это будет выглядеть:
Всё работает. Таким же способом можно задать пароль root в Ubuntu.
Как вручную поменять пароль
Операционная система Linux не была бы Linux, если бы мы не имели возможность настроить пароль вручную безо всяких утилит. Как я уже говорил, пароли хранятся в файле /etc/shadow. И хранятся они там в зашифрованном виде. Расшифровать пароль невозможно.
Когда система сохраняет пароль, она выполняет шифрование по определённому алгоритму и сохраняет уже зашифрованный результат, а когда пользователю нужно войти в систему, она просто берёт его пароль, опять же шифрует и сверяет с тем, что хранится в /etc/shadow. Если совпадает — пользователь авторизован.
Даже таким способом сменить пароль пользователя Linux не так уж сложно. Итак, сначала нам нужно получить зашифрованный пароль. Это можно сделать несколькими способами, например с помощью openssl:
openssl passwd -1 -salt xyz yourpass
Замените xyz на любую случайную комбинацию символов, чем больше, тем лучше; yourpass — это ваш новый пароль.
Скопируйте полученный результат в буфер обмена, затем откройте файл /etc/shadow и найдите там нужного пользователя. Я хочу сменить пароль Linux для test:
Синтаксис этого файла такой:
имя_пользователя: пароль: .
Следующее поле указывает на последнее изменение пароля в виде количества дней, прошедших с первого января 1970. Остальные поля нас не интересуют, да и вы с ними очень просто разберётесь, просто сопоставив данные.
Теперь замените пароль на полученный выше и сохраненный в буфер обмена. Сохраните файл и можете пробовать войти под новым паролем:
Всё работает. Как я уже говорил, есть ещё несколько алгоритмов шифрования, с помощью которых вы можете получить пароль, вот они:
makepasswd —clearfrom=- —crypt-md5 mkpasswd -m sha-512 -S salt -s perl -e ‘print crypt(«YourPass», «salt»),»\n»‘
openssl passwd -crypt -salt XRYourPass
Во всех этих примерах salt — это случайная строка для увеличения надёжности шифрования, а YourPass — ваш пароль. Что делать с полученным данными вы уже знаете.
Выводы
Из этой статьи вы узнали, как сменить пароль Linux. Я рассмотрел все возможные способы и даже не очень стандартные. Если у вас остались вопросы, пишите комментарии!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Изменяем пароль пользователя в Linux
В данной статье я хочу рассказать о том, как изменять пароль пользователя в Linux. Я рассмотрю универсальный способ изменения пароля через командную строку, чтобы не привязываться к конкретному дистрибутиву.
Для изменения паролей в Linux служит команда passwd. Команду можно выполнять без указания каких-либо параметров, либо явно указать имя пользователя, пароль которого вы хотите сменить (в данном случае требуются права суперпользователя). После чего вам нужно будет ввести текущий пароль, а затем дважды ввести новый пароль.
Меняем пароль текущего пользователя
Чтобы сменить пароль текущего пользователя выполните команду passwd без параметров:
После этого нужно будет ввести текущий пароль и нажать клавишу Enter, затем ввести новый пароль и снова нажать Enter и, наконец, еще раз ввести новый пароль и нажать Enter.
Changing password for yuriy. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passed: password updated successfully
Обратите внимание на то, что когда вы вводите пароль, он не отображается на экране.
Если вдруг вы получили сообщение:
You must choose a longer password
Это означает, что вы ввели очень простой (или короткий) пароль. В таком случае повторите команду passwd и введите более сложный пароль (как минимум длиной от 6 до 8 символов, пароль должен включать цифры, прописные и строчные символы). Чтобы избежать проверки пароля на сложность необходимо выполнять команду passwd через sudo (см. ниже).
Меняем пароль произвольного пользователя
Чтобы сменить пароль любого пользователя вам необходимо запускать программу passwd под пользователем root или через sudo. Например, чтобы сменить пароль пользователя с именем pingvinus необходимо выполнить:
В данном случае вам нужно будет ввести только новый пароль:
Enter new UNIX password: Retype new UNIX password: passed: password updated successfully
Здесь пароль не проверяется на сложность и можно задавать совсем простые и короткие пароли.
Дополнительная информация
Я рассмотрел два простых способа для быстрого изменения паролей пользователей. Получить полный список возможностей команды passwd можно, выполнив в терминале:
Сброс пароля Linux
Пароль пользователя в Linux по соображениям безопасности узнать нельзя, однако ему можно задать новый пароль. Это можно сделать с помощью загрузчика GRUB и Rescue-диска.
С использованием GRUB
- В меню загрузчика пропишите в параметрах init=/bin/bash. Для этого следует:
- нажать «e» при курсоре на цели загрузки, соответствующей используемому экземпляру ALT Linux;
Примечание: В Linux при вводе/смене пароля в консоли вводимые символы не отображаются. Так что если вы не видите звездочек/точечек означающих элементы пароля — это норма
С использованием ALT Rescue
В данном случае подразумевается, что вы загрузились с восстановительного образа ALT Linux Rescue.
С использованием ALT Rescue и автомонтированием системы
Вместо того, чтобы монтировать систему вручную, можно смонтировать ее автоматически.
С использованием установленной системы
Предположим, у Вас такая ситуация. У Вас один системный пользователь. Вы помните пароль суперпользователя, но забыли пароль от обычного пользователя. В данном случае Вы можете поменять пароль без LiveCD.
- Посмотрите имя пользователя
Сброс пароля Linux
Пароль пользователя в Linux по соображениям безопасности узнать нельзя, однако ему можно задать новый пароль. Это можно сделать с помощью загрузчика GRUB и Rescue-диска.
С использованием GRUB
- В меню загрузчика пропишите в параметрах init=/bin/bash. Для этого следует:
- нажать «e» при курсоре на цели загрузки, соответствующей используемому экземпляру ALT Linux;
Примечание: В Linux при вводе/смене пароля в консоли вводимые символы не отображаются. Так что если вы не видите звездочек/точечек означающих элементы пароля — это норма
С использованием ALT Rescue
В данном случае подразумевается, что вы загрузились с восстановительного образа ALT Linux Rescue.
С использованием ALT Rescue и автомонтированием системы
Вместо того, чтобы монтировать систему вручную, можно смонтировать ее автоматически.
С использованием установленной системы
Предположим, у Вас такая ситуация. У Вас один системный пользователь. Вы помните пароль суперпользователя, но забыли пароль от обычного пользователя. В данном случае Вы можете поменять пароль без LiveCD.
- Посмотрите имя пользователя