Файл /etc/passwd в Linux - полное описание

/etc/passwd файл Linux  - описание

В файле /etc/passwd хранятся логин пользователя, зашифрованный пароль, UID, GID по умолчанию, имя (иногда называемое GECOS), домашний каталог и оболочка входа (shell). Каждая строка в файле представляет информацию о пользователе. Строки состоят из различных стандартных полей, каждое из которых разделено двоеточием. Пример записи из файла passwd с различными полями показан на рисунке 1 . Поля файла /etc/passwd подробно обсуждаются в данной статье.



Поля файла /etc/passwd

Рисунок 1    Поля файла  /etc/passwd

Поле имени пользователя (Username)

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

Распространенный метод - использовать первую букву имени пользователя и добавлять его фамилию. Обычно это работает, потому что вероятность того, что в организации будет несколько пользователей с одинаковыми именами и фамилиями, относительно невелика. Например, пользователю, имя которого «Инь», а фамилия - «Ян», может быть назначено имя пользователя «Ян». Конечно, используются и несколько вариаций этого метода.

Поле пароля (Password)

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

Пароли и шифрование

Большинство дистрибутивов GNU / Linux используют современные алгоритмы шифрования (такие как Blowfish, SHA-512 и так далее) для шифрования и хранения паролей в системе. В целом, более сильные и лучшие алгоритмы шифрования увеличили сложность и сложность взлома паролей. Конечно, все это работает только при условии, что ваши конечные пользователи для начала выбирают хорошие пароли!

Процесс работает следующим образом: когда пользователи вводят свои пароли в приглашении для входа в систему, пароль, который они вводят, зашифровывается. Затем зашифрованное значение сравнивается с паролем пользователя / теневой записью. Если два зашифрованных значения совпадают, пользователю разрешается войти в систему.

 

НА ЗАМЕТКУ!

Выбор хороших паролей - это всегда рутинная работа. Ваши пользователи неизбежно спросят: «Что же тогда, о Могущественный системный администратор, сделать хороший пароль?» Вот хороший ответ: неязыковое слово (не английское, не испанское, не йоруба; фактически, не человеческое слово), предпочтительно со смешанным регистром, числами, пунктуацией и высокой энтропией - другими словами, строка, которая выглядит как линейный шум.

Что ж, все это прекрасно и замечательно, но если пароль слишком сложно запомнить, большинство людей быстро нарушат его назначение, записав его и храня в легкодоступном месте. Так что лучше сделайте это запоминающимся! Хороший прием - выбрать фразу, а затем выбрать первую букву каждого слова во фразе. Таким образом, фраза «кофе ОЧЕНЬ ХОРОШО для нас с тобой» превращается в ciVG4y&m. Фраза запоминается, даже если полученный пароль - нет! Файл конфигурации теневого пароля /etc/login.defs может использоваться для настройки и принудительного применения различных параметров пароля.

Поле идентификатора пользователя (UID)

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

Нулевой UID (0) является дополнительным специальным значением и обычно зарезервирован для пользователя root . Любой пользователь с UID, равным 0, имеет root-доступ (административный) и, таким образом, имеет полный доступ (контроль) над системой. Считается плохой практикой разрешать другим пользователям или именам пользователей иметь UID равный 0.

В разных дистрибутивах Linux иногда используются определенные схемы нумерации UID. Например, более новые дистрибутивы Fedora и Red Hat Enterprise Linux (RHEL), openSUSE и Ubuntu резервируют UID 65534 для пользователя «никто».

Поле идентификатора группы (GID)

Следующее поле в файле /etc/passwd - это запись идентификатора группы. Это числовой эквивалент основной группы, к которой принадлежит пользователь. Это поле также играет важную роль в определении прав доступа пользователей. Следует отметить, что помимо основной группы, пользователь может принадлежать и к другим группам (подробнее об этом позже в разделе «Файл /etc/group»).

GECOS

В этом поле может храниться различная информация для пользователя. Он может выступать в качестве заполнителя для описания пользователя, полного имени (имени и фамилии), номера телефона и т. Д. Это поле является необязательным, поэтому его можно оставить пустым. Также можно хранить несколько записей в этом поле, просто разделяя разные записи запятой.

ПРИМЕЧАНИЕ  

Исторически следует отметить, что GECOS - это аббревиатура от General Electric Comprehensive Operating System (теперь именуемая GECOS), унаследованная от первых дней вычислительной техники.

Каталог (Directory)

Обычно это домашний каталог пользователя, но также может быть любое произвольное место в системе. Каждому пользователю, который действительно входит в систему, нужно место для файлов конфигурации, уникальных для этого пользователя. Помимо файлов конфигурации, каталог (часто называемый домашним каталогом) также хранит личные данные пользователя, такие как документы, код, музыку, фотографии и т. Д.

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

Сценарии запуска

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

Каждый пользователь может иметь свои собственные файлы конфигурации; таким образом, кажется, что система настраивается для каждого конкретного пользователя (даже если другие люди входят в систему одновременно). Настройка каждой индивидуальной пользовательской среды выполняется с помощью сценариев оболочки, файлов инициализации, файлов управления запуском и т.п. Эти файлы могут содержать серию команд, которые должны выполняться оболочкой, которая запускается при входе пользователя в систему. В случае оболочки Bash, например, одним из ее файлов запуска является файл .bashrc . (Да, перед именем файла стоит точка - имена файлов, которым предшествуют точки, также называемые точечными файлами, скрыты от обычных списков каталогов.) Сценарий .bashrc по своей природе похож на autoexec.bat командный файл в мире Windows.

Различные программные пакеты Linux используют специфичные для приложения и настраиваемые параметры в каталогах или файлах, которые начинаются с точки (.) В домашнем каталоге каждого пользователя. Некоторые примеры: .mozilla , .kde , .local , .ssh и .ansible.cfg . Вот несколько распространенных точечных файлов, которые могут присутствовать в домашнем каталоге каждого пользователя:

  • .bashrc и .profile Файлы конфигурации для оболочки Bash.
  • .tcshrc и .login Файлы конфигурации для tcsh.
  • .xinitrc Этот сценарий отменяет сценарий по умолчанию, который вызывается при входе в систему X Window.
  • .Xdefaults Этот файл содержит значения по умолчанию, которые вы можете указать для приложений X Window System.

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

Для единообразия большинство сайтов размещают домашние каталоги в /home и именуют каталог каждого пользователя по имени входа этого пользователя. Таким образом, например, если ваше имя для входа было «yyang», ваш домашний каталог был бы /home/yyang . Исключением являются некоторые специальные системные учетные записи, такие как учетная запись пользователя root или системная служба. Домашний каталог суперпользователя (root) в Linux обычно устанавливается в /root . Примером специальной учетной записи системной службы, которой может потребоваться конкретный рабочий каталог, может быть веб-сервер, веб-страницы которого обслуживаются из каталога /var/www/ .

В Linux решение разместить домашние каталоги в /home является строго произвольным, но оно имеет организационный смысл. Системе на самом деле все равно, где мы размещаем домашние каталоги, если местоположение каждого пользователя указано в файле паролей.

Оболочка (Shell)

Когда пользователи входят в систему, они ожидают среды, которая поможет им работать продуктивно. При входе в систему из командной строки первая программа, с которой сталкиваются пользователи, называется оболочкой. Если вы привыкли к Windows, вы можете приравнять это к command.com (cmd), Program Manager, PowerShell или Windows Explorer.

В GNU / Linux большинство оболочек основаны на тексте. Популярной пользовательской оболочкой по умолчанию в Linux является Bourne Again Shell, или сокращенно Bash. Linux поставляется с несколькими оболочками, из которых можно выбрать - большинство из них перечислены в файле /etc/shells . Решение о том, какая оболочка вам подходит, похоже на выбор любимого чая или пива - то, что подходит вам, подходит не всем, но, тем не менее, каждый имеет тенденцию защищать свой выбор!

Интересно, что вы не ограничены только списком оболочек, объявленных в файле /etc/shells . В самом строгом из определений ввод пароля для каждого пользователя не столько указывает, какую оболочку запускать, сколько перечисляет, какую программу запускать первой для пользователя. Конечно, большинство пользователей предпочитают, чтобы при первом запуске программы была оболочка, например Bash.

Вас заинтересует / Intresting for you:

Основа операционной системы Li...
Основа операционной системы Li... 1120 просмотров Андрей Волков Wed, 09 Jan 2019, 05:36:45
Linux: как инсталлировать прог...
Linux: как инсталлировать прог... 649 просмотров Дэйзи ак-Макарова Sun, 11 Nov 2018, 11:54:59
Сигналы в Linux
Сигналы в Linux 851 просмотров Fortan Tue, 05 Feb 2019, 16:18:38
Файловая система /proc в Linux
Файловая система /proc в Linux 685 просмотров Fortan Fri, 22 Feb 2019, 06:05:18

Войдите чтобы комментировать

apv аватар
apv ответил в теме #9876 07 фев 2021 18:57
Браво! /etc/passwd просто по косточкам разобрали. Описание в подробнейшем виде. Ничего не упустили!