6.53. Shadow-4.0.4.1
6.53. Shadow-4.0.4.1
Пакет Shadow содержит программы для усиления безопасности системных паролей.
Расчетное время сборки 0.4 SBU
Требуемое место на диске 11 MB
Shadow - зависимости установки: Bash, Binutils, Bison, Coreutils, Diffutils, GCC, Gettext, Glibc, Grep, Make и Sed
6.53.1. Инсталируем Shadow
Подготавливаем Shadow для компиляции:
./configure --libdir=/usr/lib --enable-shared
Поработаем над проблемой, которая препятствует интернационализации Shadow, выполнив:
echo '#define HAVE_SETLOCALE 1' >> config.h
Shadow некорректно декларирует функцию malloc(), означающую ошибку компиляции. Устраним это:
sed -i '/extern char/d' libmisc/xmalloc.c
Компилируем пакет
make
Устанавливаем пакет
make install
Shadow использует два файла для настройки параметров аутентификации в системе. Установим эти файлы:
cp etc/{limits,login.access} /etc
Вместо использования по умолчанию метода crypt, используем более защищенный метод шифрования паролей MD5, который также допускает использование паролей длинной более 8 символов. Также необходимо изменить положение пользовательских почтовых ящиков на /var/spool/mail, которое Shadow устанавливает по умолчанию в /var/mail. Мы сделаем это, проведя следующие изменения конфигурационного файла:
cp etc/login.defs.linux /etc/login.defs sed -i -e 's@#MD5_CRYPT_ENAB.no@MD5_CRYPT_ENAB yes@' \ -e 's@/var/spool/mail@/var/mail@' /etc/login.defs
Переместим некоторые ссылки/программы в более предпочтительное место:
mv /bin/sg /usr/bin mv /bin/vigr /usr/sbin mv /usr/bin/passwd /bin
Переместим динамические библиотеки в более предпочтительное место:
mv /usr/lib/lib{shadow,misc}.so.0* /lib
Поскольку некоторые пакеты нуждаются в расположении только что перемещенных библиотек в /usr/lib,создадим следующие ссылки:
ln -sf ../../lib/libshadow.so.0 /usr/lib/libshadow.so ln -sf ../../lib/libmisc.so.0 /usr/lib/libmisc.so
Опция -D программы useradd требует директорию /etc/default для корректной работы:
mkdir /etc/default
Coreutils уже имеет лучшую установленную программу groups в /usr/bin. Удалим аналогичную программу из Shadow:
rm /bin/groups
Этот пакет содержит утилиты для модификации паролей пользователей, добавления или удаления пользователей и групп и тому подобные. Мы не собираемся объяснять здесь что такое скрытие паролей (password shadowing). Полное объяснение можно найти в файле doc/HOWTO в распакованой директории с исходниками Shadow. Сдесь мы опишем только то, что вам понадобится, если вы захотите использовать поддержку Shadow: программы, которые должны проверять пароли (к примеру: xdm, демоны ftp, демоны pop3) должны будут компилироваться с поддержкой 'shadow-совместимости', что надо для использования работы со скрытыми паролями.
Для использования скрытых паролей, запустите команду:
pwconv
А для использования скрытых групп, выполните:
grpconv
При нормальных обстоятельствах, вам пока нет надобности создавать пароли. Запомните, что если вы решите вернуться к этой главе для включения скрытия паролей, вам надо будет сбросить пароли всех пользователей командой passwd и пароли всех групп командой gpasswd.
6.53.3. Установка пароля root
Выберите пароль для пользователя root и установите его командой:
passwd root
Проинсталированные программы: chage, chfn, chpasswd, chsh, expiry, faillog, gpasswd, groupadd, groupdel, groupmod, groups, grpck, grpconv, grpunconv, lastlog, login, logoutd, mkpasswd, newgrp, newusers, passwd, pwck, pwconv, pwunconv, sg (ссылка на newgrp), useradd, userdel, usermod, vigr (ссылка на vipw) и vipw
Проинсталированные библиотеки: libshadow[.a,so]
Короткое описание
- chage
-
Используется для изменения максимального количества дней до обязательной смены пароя.
- chfn
-
Изменяет полное имя пользователя и некоторую другую информацию.
- chpasswd
-
Используется для обновления паролей пользовательских аккаунтов.
- chsh
-
Используется для изменения шелла пользователя по умолчанию.
- expiry
-
Проверяет и изменяет правила использования паролей.
- faillog
-
Используется для обработки логов ошибочных входов в систему, для установки лимита на ошибки входа до блокирования аккаунта или для сброса счетчика этих ошибок.
- gpasswd
-
Используется для добавления или удаления членов и администраторов групп.
- groupadd
-
Создает группу с указанным именем.
- groupdel
-
Удаляет группу с указанным именем.
- groupmod
-
Используется для изменения имени указанной группы или ее GID.
- groups
-
Возвращает группы, членом которых является указанный пользователь.
- grpck
-
Проверяет целосность файлов групп /etc/group и /etc/gshadow
- grpconv
-
Создает или обновляет теневой файл групп, используя обычный файл групп.
- grpunconv
-
Обновляет /etc/group из /etc/gshadow и затем удаляет последний.
- lastlog
-
Отчитывается о входах пользователей или указанного пользователя в систему.
- login
-
Используется в начале новой сессии работы с системой.
- logoutd
-
Демон, контролирующий время регистрации и порты.
- mkpasswd
-
Шифрует указанный пароль указанным алгоритмом.
- newgrp
-
Используется для изменения текущего GID.
- newusers
-
Используется для создания или обновления пользовательских аккаунтов.
- passwd
-
Используется для изменения пароля пользователя или группы.
- pwck
-
Проверяет целостность файлов паролей /etc/passwd и /etc/shadow
- pwconv
-
Создает или обновляет теневой файл паролей, используя обычный файл паролей.
- pwunconv
-
Обновляет /etc/passwd из /etc/shadow и затем удаляет последний.
- sg
-
Выполняет указанную команду с правами группы с указанным GID.
- su
-
Запускает shell с заменой пользователя и ID группы.
- useradd
-
Создает нового пользователя с указанным именем или обновляет информацию по умолчанию для новых пользователей.
- userdel
-
Удаляет указанный пользовательский аккаунт.
- usermod
-
Используется для модификации указанноко имени пользователя, UID, шелла, группы, домашней директории и т.п.
- vigr
-
Редактирует файл /etc/group или /etc/gshadow.
- vipw
-
Редактирует файл /etc/passwd или /etc/shadow.
- libshadow
-
Содержит функции, используемые большинством программ этого пакета.