From 5a6834585c43296c2207f5f251d3d5c237c7c8d2 Mon Sep 17 00:00:00 2001 From: Sn4il Date: Wed, 6 Mar 2024 10:25:41 +0300 Subject: Update LFS mirror --- lfs-12.1-sysv/chapter08/shadow.html | 942 ++++++++++++++++++++++++++++++++++++ 1 file changed, 942 insertions(+) create mode 100644 lfs-12.1-sysv/chapter08/shadow.html (limited to 'lfs-12.1-sysv/chapter08/shadow.html') diff --git a/lfs-12.1-sysv/chapter08/shadow.html b/lfs-12.1-sysv/chapter08/shadow.html new file mode 100644 index 0000000..7de24d3 --- /dev/null +++ b/lfs-12.1-sysv/chapter08/shadow.html @@ -0,0 +1,942 @@ + + + + + + 8.27. Shadow-4.14.5 + + + + + + + + +

+ 8.27. + Shadow-4.14.5 +

+
+
+

+ Пакет Shadow содержит программы для безопасной обработки паролей. +

+
+
+
+ Приблизительное время сборки: + 0.1 SBU +
+
+ Требуемое дисковое + пространство: 49 MB +
+
+
+
+
+

+ 8.27.1. Установка пакета Shadow +

+
+ [Примечание] +

+ Примечание +

+

+ Если вы хотите принудительно использовать надежные пароли, + обратитесь к инструкции + https://mirror.linuxfromscratch.ru/blfs/view/12.1/postlfs/cracklib.html + для установки CrackLib перед сборкой. Затем добавьте параметр + --with-libcrack в + приведенную ниже команду configure. +

+
+

+ Отключите установку groups и ее справочных страниц, + так как Coreutils предоставляет версию лучше. Кроме того, запретите + установку страниц руководств, так как они были установлены в + Раздел 8.3, «Man-pages-6.06»: +

+
sed -i 's/groups$(EXEEXT) //' src/Makefile.in
+find man -name Makefile.in -exec sed -i 's/groups\.1 / /'   {} \;
+find man -name Makefile.in -exec sed -i 's/getspnam\.3 / /' {} \;
+find man -name Makefile.in -exec sed -i 's/passwd\.5 / /'   {} \;
+

+ Вместо + используемого по умолчанию метода crypt, используйте более безопасный + метод шифрования паролей YESCRYPT, который также позволяет + использовать пароли длиннее 8 символов. Также необходимо изменить + устаревшее местоположение для почтовых ящиков пользователей + /var/spool/mail, которое Shadow + использует по умолчанию, на используемое в настоящее время + /var/mail. И удалите /bin и /sbin из + PATH, поскольку они являются просто + символическими ссылками на их аналоги в /usr. +

+
+ [Примечание] +

+ Примечание +

+

+ Если вы по какой-либо причине хотите включить /bin и/или /sbin + в PATH, измените PATH в файле .bashrc + после сборки LFS. +

+
+
sed -e 's:#ENCRYPT_METHOD DES:ENCRYPT_METHOD YESCRYPT:' \
+    -e 's:/var/spool/mail:/var/mail:'                 \
+    -e '/PATH=/{s@/sbin:@@;s@/bin:@@}'                \
+    -i etc/login.defs
+
+ [Примечание] +

+ Примечание +

+

+ Если вы решили собрать Shadow с поддержкой Cracklib, выполните + эту команду: +

+
sed -i 's:DICTPATH.*:DICTPATH\t/lib/cracklib/pw_dict:' etc/login.defs
+
+

+ Подготовьте Shadow к компиляции: +

+
touch /usr/bin/passwd
+./configure --sysconfdir=/etc \
+            --disable-static  \
+            --with-{b,yes}crypt \
+            --without-libbsd    \
+            --with-group-name-max-length=32
+
+

+ Значение новых параметров конфигурации: +

+
+
+ touch + /usr/bin/passwd +
+
+

+ Файл /usr/bin/passwd должен + существовать, потому что его местоположение жестко задано в + некоторых программах; если он не существует, скрипт установки + создаст его не в том месте. +

+
+
+ --with-{b,yes}crypt +
+
+

+ Оболочка расширяет это значение до двух параметров: + --with-bcrypt и + --with-yescrypt. Они + позволяют Shadow использовать алгоритмы Bcrypt и Yescrypt, + реализованные в Libxcrypt, + для хеширования паролей. Эти алгоритмы более безопасны (в + частности, гораздо более устойчивы к атакам с использованием + графических процессоров), чем традиционные алгоритмы SHA. +

+
+
+ --with-group-name-max-length=32 +
+
+

+ Максимально допустимая длина имени пользователя составляет 32 + символа. Сделайте такую же длину для названия группы. +

+
+
+ --without-libbsd +
+
+

+ Не используйте функцию readpassphrase из иблиотеки libbsd, + которой нет в LFS. Вместо этого используйте внутреннюю копию. +

+
+
+
+

+ Скомпилируйте пакет: +

+
make
+

+ С этим пакетом не поставляется набор тестов. +

+

+ Установите пакет: +

+
make exec_prefix=/usr install
+make -C man install-man
+
+
+

+ 8.27.2. Настройка Shadow +

+

+ Этот пакет содержит утилиты для добавления, изменения и удаления + пользователей и групп; установки и изменения их паролей; и + выполнения других задач администрирования. Полное объяснение того, + что означает password + shadowing, см. в файле doc/HOWTO в дереве распакованных + исходных текстов. При использовании Shadow имейте в виду, что + программы, которым необходимо проверять пароли (дисплейные + менеджеры, FTP-программы, демоны pop3 и т.д.), должны быть + совместимы с Shadow. То есть они должны уметь работать с теневыми + паролями. +

+

+ Чтобы включить поддержку теневых паролей, выполните следующую + команду:: +

+
pwconv
+

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

+
grpconv
+

+ Конфигурация Shadow по умолчанию для утилиты useradd имеет несколько + особенностей, требующих пояснения. Во-первых, по умолчанию утилита + useradd создает + пользователя и группу с тем же названием, что и имя пользователя. + По умолчанию, идентификатора пользователя (UID) и идентификатора + группы (GID) начинаются с 1000. Это означает, что если вы не + передадите дополнительные параметры в useradd, каждый пользователь + будет членом уникальной группы в системе. Если такое поведение + нежелательно, вам нужно передать один из параметров -g или -N в useradd или изменить настройку + USERGROUPS_ENAB в файле + /etc/login.defs. Смотрите справочную + страницу useradd(8) для + получения дополнительной информации. +

+

+ Во-вторых, чтобы изменить параметры по умолчанию, необходимо + создать файл /etc/default/useradd и + настроить его в соответствии с вашими потребностями. Создайте его: +

+
mkdir -p /etc/default
+useradd -D --gid 999
+
+

+ Пояснения к параметрам /etc/default/useradd +

+
+
+ GROUP=999 +
+
+

+ Этот параметр задает начальный номер группы, используемых в + файле /etc/group. Значение 999 + берется из приведенного выше параметра --gid. Вы можете установить + любое значение. Обратите внимание, что useradd никогда не будет + повторно использовать UID или GID. Если номер, указанный в + этом параметре, уже используется будет выбран следующий + доступный номер. Также обратите внимание, что если в вашей + системе нет группы с идентификатором, равным этому номеру, + при первом использовании useradd без параметра + -g — вы получите + следующее сообщение об ошибке: useradd: unknown GID 999, даже если + учетная запись была создана правильно. Поэтому мы создали + группу users с этим + идентификатором в Раздел 7.6, + «Создание основных файлов и символических ссылок». +

+
+
+ CREATE_MAIL_SPOOL=yes +
+
+

+ Этот параметр заставит утилиту useradd создавать файл + почтового ящика для каждого нового пользователя. useradd сделает этот файл + принадлежащим группе mail с + правами доступа 0660. Если вы предпочитаете, не создавать эти + файлы, выполните следующую команду: +

+
sed -i '/MAIL/s/yes/no/' /etc/default/useradd
+
+
+
+
+
+

+ 8.27.3. Установка пароля пользователя root +

+

+ Придумайте пароль для root и + установите командой: +

+
passwd root
+
+
+

+ 8.27.4. + Содержимое пакета Shadow +

+
+
+
+ Установленные программы: + chage, chfn, chgpasswd, chpasswd, chsh, + expiry, faillog, getsubids, gpasswd, groupadd, groupdel, + groupmems, groupmod, grpck, grpconv, grpunconv, login, logoutd, + newgidmap, newgrp, newuidmap, newusers, nologin, passwd, pwck, + pwconv, pwunconv, sg (ссылка на newgrp), su, useradd, userdel, + usermod, vigr (ссылка на vipw) и vipw +
+
+ Установленные библиотеки: + libsubid.so +
+
+ Созданные каталоги: + /etc/default и /usr/include/shadow +
+
+
+
+

+ Краткое описание +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ chage +

+
+

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

+
+

+ chfn +

+
+

+ Используется для изменения полного имени пользователя и + другой информации +

+
+

+ chgpasswd +

+
+

+ Используется для обновления паролей групп в пакетном + режиме. +

+
+

+ chpasswd +

+
+

+ Используется для обновления паролей пользователей в + пакетном режиме. +

+
+

+ chsh +

+
+

+ Используется для изменения оболочки входа для + пользователя. +

+
+

+ expiry +

+
+

+ Проверяет и применяет текущую политику истечения срока + действия пароля +

+
+

+ faillog +

+
+

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

+
+

+ getsubids +

+
+

+ Используется для перечисления подчиненных диапазонов + идентификаторов для пользователя +

+
+

+ gpasswd +

+
+

+ Используется для добавления и удаления пользователей и + администраторов в группы. +

+
+

+ groupadd +

+
+

+ Создает группу с указанным именем +

+
+

+ groupdel +

+
+

+ Удаляет группу с указанным именем +

+
+

+ groupmems +

+
+

+ Позволяет пользователю управлять своим собственным + списком членов группы без привилегий суперпользователя +

+
+

+ groupmod +

+
+

+ Используется для изменения имени группы или GID +

+
+

+ grpck +

+
+

+ Проверяет целостность файлов групп /etc/group и /etc/gshadow +

+
+

+ grpconv +

+
+

+ Создает или изменяет файл теневых групп, используя для + этого обычный файл групп +

+
+

+ grpunconv +

+
+

+ Обновляет /etc/group из + /etc/gshadow, а затем + удаляет последний +

+
+

+ login +

+
+

+ Используется системой для того, чтобы пользователь мог + войти в систему +

+
+

+ logoutd +

+
+

+ Это демон, используемый для обеспечения соблюдения + ограничений на время входа в систему и порты +

+
+

+ newgidmap +

+
+

+ Используется для сопоставления gid пространства имен + пользователя +

+
+

+ newgrp +

+
+

+ Используется для изменения GID во время сеанса входа в + систему +

+
+

+ newuidmap +

+
+

+ Используется для сопоставления uid пространства имен + пользователя +

+
+

+ newusers +

+
+

+ Используется для создания или изменения + последовательности учетных записей +

+
+

+ nologin +

+
+

+ Отображает сообщение о том, что учетная запись + недоступна; она предназначена для использования в + качестве оболочки по умолчанию для отключенных учетных + записей +

+
+

+ passwd +

+
+

+ Используется для изменения пароля для учетной записи + пользователя или группы. +

+
+

+ pwck +

+
+

+ Проверяет целостность файлов паролей /etc/passwd и /etc/shadow +

+
+

+ pwconv +

+
+

+ Создает или изменяет файл теневых паролей, используя для + этого обычный файл паролей +

+
+

+ pwunconv +

+
+

+ Обновляет /etc/passwd из + /etc/shadow а затем удаляет + последний +

+
+

+ sg +

+
+

+ Выполняет указанную команду в случае, если у пользователя + идентификатор группы GID совпадает с идентификатором + указанной группы +

+
+

+ su +

+
+

+ Запускает оболочку с заменой идентификаторов пользователя + и группы +

+
+

+ useradd +

+
+

+ Создает нового пользователя с указанным именем, либо + изменяет информацию, задаваемую по умолчанию для нового + пользователя +

+
+

+ userdel +

+
+

+ Удаляет учетную запись указанного пользователя +

+
+

+ usermod +

+
+

+ Используется для изменения имени пользователя, + идентификатора пользователя (UID), оболочки, группы, + домашнего каталога и т.д. +

+
+

+ vigr +

+
+

+ Редактирует файлы /etc/group или /etc/gshadow +

+
+

+ vipw +

+
+

+ Редактирует файлы /etc/passwd или /etc/shadow +

+
+

+ libsubid +

+
+

+ библиотека для обработки подчиненных диапазонов + идентификаторов пользователей и групп +

+
+
+
+
+ + + -- cgit v1.2.3