- Для чего нужен файл /etc/shadow
- Формат /etc/shadow
- Пример записи
- Выводы
- Understanding /etc/shadow file format on Linux
- Understanding /etc/shadow file fields/format
- A note about password ageing
- How do I change the password?
- How do I change the password for other users?
- How do I change or set password ageing information?
- Linux no shadow file
- Linux no shadow file
- Linux Shadow file explained in detail
- surendra : $6$1aEszVo.gsdPEr : 15107 : 22 : 99999 : 207 : 205 : 105345 : 1 2 3 4 5 6 7 8 9
Для чего нужен файл /etc/shadow
В системах Linux можно использовать несколько различных схем аутентификации. Наиболее часто используемая и стандартная схема — аутентификация по файлам /etc/passwd и /etc/shadow .
/etc/shadow — это текстовый файл, содержащий информацию о паролях пользователей системы. Он принадлежит пользователю root и теневой группе и имеет 640 разрешений .
Формат /etc/shadow
Файл /etc/shadow содержит по одной записи в каждой строке, каждая из которых представляет учетную запись пользователя. Вы можете просмотреть содержимое файла с помощью текстового редактора или такой команды, как cat :
Обычно первая строка описывает пользователя root, за которым следуют учетные записи системного и обычного пользователя. Новые записи добавляются в конец файла.
Каждая строка файла /etc/shadow содержит девять полей, разделенных запятыми:
- Имя пользователя. Строка, которую вы вводите при входе в систему. Учетная запись пользователя, существующая в системе.
- Зашифрованный пароль. Пароль использует $type$salt$hashed формат $type$salt$hashed . $type — это алгоритм криптографического хеширования метода и может иметь следующие значения:
- $1$ — 5 MDL
- $2a$ — Blowfish
- $2y$ — Eksblowfish
- $5$ — SHA-256
- $6$ — SHA-512
Если в поле пароля есть звездочка ( * ) или восклицательный знак ( ! ), Пользователь не сможет войти в систему, используя аутентификацию по паролю. Другие методы входа в систему, такие как аутентификация на основе ключей или переключение на пользователя , по-прежнему разрешены.
В старых системах Linux зашифрованный пароль пользователя хранился в /etc/passwd .
Файл /etc/shadow не следует редактировать вручную, если вы не знаете, что делаете. Всегда используйте команду, предназначенную для этой цели. Например, чтобы изменить пароль пользователя, используйте команду passwd , а чтобы изменить информацию об устаревании пароля, используйте команду chage .
Пример записи
Давайте посмотрим на следующий пример:
Запись выше содержит информацию о пароле пользователя linuxize:
- Пароль зашифрован с помощью SHA-512 (пароль усечен для лучшей читаемости).
- Последний раз пароль менялся 23 апреля 2019 г. — 18009 .
- Нет минимального возраста пароля.
- Пароль необходимо менять не реже, чем каждые 120 дней.
- Пользователь получит предупреждающее сообщение за семь дней до истечения срока действия пароля.
- Если пользователь не попытается войти в систему через 14 дней после истечения срока действия пароля, учетная запись будет отключена.
- Срок действия учетной записи отсутствует.
Выводы
В /etc/shadow хранятся записи о зашифрованных паролях пользователей, а также другая информация, связанная с паролями.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Источник
Understanding /etc/shadow file format on Linux
Understanding /etc/shadow file fields/format
Basically, the /etc/shadow file stores secure user account information. All fields are separated by a colon ( : ) symbol. It contains one entry per line for each user listed in /etc/passwd file. Generally, shadow file entry looks as follows (click to enlarge image):
(Fig.01: /etc/shadow file fields)
- Username : It is your login name.
- Password : It is your encrypted password. The password should be minimum 8-12 characters long including special characters, digits, lower case alphabetic and more. Usually password format is set to $id$salt$hashed , The $id is the algorithm used On GNU/Linux as follows:
- $1$ is MD5
- $2a$ is Blowfish
- $2y$ is Blowfish
- $5$ is SHA-256
- $6$ is SHA-512
- Last password change (lastchanged) : Days since Jan 1, 1970 that password was last changed
- Minimum : The minimum number of days required between password changes i.e. the number of days left before the user is allowed to change his/her password
- Maximum : The maximum number of days the password is valid (after that user is forced to change his/her password)
- Warn : The number of days before password is to expire that user is warned that his/her password must be changed
- Inactive : The number of days after password expires that account is disabled
- Expire : days since Jan 1, 1970 that account is disabled i.e. an absolute date specifying when the login may no longer be used.
A note about password ageing
The last 6 fields provides password aging and account lockout features. You need to use the chage command to setup password aging. According to man page of shadow – the password field must be filled. The encrypted password consists of 13 to 24 characters from the 64 character alphabet a through z, A through Z, 0 through 9, \. and /. Optionally it can start with a “ $ ” character. This means the encrypted password was generated using another (not DES) algorithm. For example if it starts with “ $1$ ” it means the MD5-based algorithm was used. If a password field which starts with a exclamation mark ( ! ) means that the password is locked. The remaining characters on the line represent the password field before the password was locked.
How do I change the password?
Use the following syntax to change your own password:
$ passwd
See passwd command tutorial page for more information.
How do I change the password for other users?
How do I change or set password ageing information?
To change user password expiry information use the chage command on Linux. The syntax is (again you must be root to set the password again) as follows:
Источник
Linux no shadow file
Традиционные Unix системы хранят данные о пользователях вместе с зашифрованным паролем в текстовом файле « /etc/passwd ». Поскольку этот файл используется многими инструментальными средствами (типа «ls») чтобы отобразить владельца файла и другие подобные сведения, файл должен быть открыт на чтение для всех, что, конечно, дает отличный шанс хакерам.
Другой метод хранения информации, тот, который я всегда использую, затенение паролей. Как и раньше, есть файл /etc/passwd с данными о пользователях. Однако, вместо паролей ставится символ “x”, а пароли хранятся отдельно в файле « /etc/shadow », в котором хранятся зашифрованные пароли и некоторая дополнительная информация о паролях. Файл /etc/shadow доступен для чтения только root, что повышает защиту.
В Red Hat Linux установка пакета Shadow Password Suite, ответственного за теневые пароли, проста. Наберите как root:
С теневыми (shadow) паролями файл « /etc/passwd » хранит сведения о пользователях в виде:
Каждое поле в записи отделено символом “:”:
Username, до 8 символов. Регистр важен, обычно пишут в нижнем регистре.
Символ “x” в поле пароля. Пароли хранятся в файле « /etc/shadow ».
Числовой user id. Назначается скриптом « adduser ». Unix использует данное значение и значение группы для определения кому какие файлы принадлежат.
Числовой group id. Red Hat использует group id в довольно неожиданном способе усиления защиты файла. Часто group id равен user id.
Полное имя пользователя. Максимальная длина мне неизвестна, но лучше ограничиться разумными рамками (до 30 символов).
Домашний каталог пользователя. Обычно /home/username (например, /home/smithj). Там хранятся все личные файлы пользователя и его web-страницы.
Пользовательская оболочка. Обычно используется « /bin/bash » для доступа к оболочке bash.
Если нужно чтобы пользователь не имел доступа к shell, создайте скрипт « /bin/sorrysh », который выведет соотвтетствующее сообщение и завершит работу пользователя. Впишите скрипт сюда в качестве оболочки.