Файл /etc/passwd#

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

Как правило, /etc/passwd содержит в поле пароля символ x; зашифрованные пароли при этом находятся в файле /etc/shadow, доступном для чтения только пользователю с административными полномочиями.

Если зашифрованный пароль, как в /etc/passwd, так и в /etc/shadow, представляет собой пустую строку, то вход в систему разрешен без запроса пароля по умолчанию.

Если зашифрованный пароль равен *NP*, то соответствующая теневая запись должна быть получена с сервера NIS+.

При создании нового логина сначала поставьте звездочку * в поле пароль, а затем используйте утилиту passwd (подробнее см. в «Утилита passwd») для его установки. Также * можно поставить в поле зашифрованный пароль, чтобы убедиться, что пользователь не сможет авторизоваться с помощью пароля и login, однако пользователь все еще сможет авторизоваться через rlogin (удаленный вход в систему).

Пример записей#

Каждая строка файла описывает одного пользователя и содержит семь полей, разделенных двоеточием:

name:password:UID:GID:GECOS:directory:shell

Где:

  • name - имя пользователя для входа в систему, без заглавных букв;

  • password - зашифрованный пароль пользователя, либо *, либо x;

  • UID - идентификатор пользователя; привилегированная учетная запись root для входа в систему имеет идентификатор пользователя 0;

  • GID - идентификатор основной группы для пользователя;

  • GECOS - «поле для комментариев», является необязательным и используется только в информационных целях;

  • directory - домашний каталог пользователя – начальный каталог, в который помещается пользователь после входа в систему; значение в этом поле используется для установки переменной среды HOME;

  • shell - программа, запускаемая при входе в систему (если пусто, используется /bin/sh); если задано значение несуществующего исполняемого файла, пользователь не сможет войти в систему с помощью login; значение в этом поле используется для установки переменной среды SHELL.

Пример содержимого файла:

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
...