Куда я попал?
Установка парольной политики для Linux
Цель: повысить безопасность учетных записей пользователей в среде Linux, минимизировать риски несанкционированного доступа, компрометации учетных данных путем внедрения требований к длине, сроку действия паролей и использования модулей строгой проверки.
Мера направлена на защиту систем от взлома учетных записей путем принудительного применения политик сложности паролей, их ротации и блокировки после неудачных попыток входа.
Реализуется через редактирование файла:
/etc/login.defs для базовых параметров и настройку модулей;
/etc/login.defs для базовых параметров и настройку модулей;
pam_pwquality/pam_cracklib для обеспечения сложности паролей;
pam_faillock для блокировки учетных записей.
Рекомендации по установке парольной политики для Linux
1. Базовая настройка параметров паролей (`/etc/login.defs`)
Файл /etc/login.defs задает глобальные параметры для утилит управления пользователями (`passwd`, `useradd`).
1.1. Порядок настройки
1. Откройте файл в терминале:
Файл /etc/login.defs задает глобальные параметры для утилит управления пользователями (`passwd`, `useradd`).
1.1. Порядок настройки
1. Откройте файл в терминале:
sudo nano /etc/login.defs2. Найдите и приведите следующие параметры к указанным значениям:
- PASS_MAX_DAYS → Максимальный срок действия пароля → 90
- PASS_MIN_DAYS → Минимальное число дней между сменами пароля → 1–7
- PASS_WARN_AGE → За сколько дней до истечения срока показать предупреждение → 7–14
- PASS_MIN_LEN → Минимальная длина пароля (не во всех дистрибутивах) → 15
- ENCRYPT_METHOD → Метод шифрования пароля (SHA512, YESCRYPT, BCRYPT) → SHA512 или YESCRYPT
3. Важно: После сохранения файла изменения вступят в силу для новых пользователей. Для применения к существующим учетным записям требуется ручное изменение пароля или пересоздание пользователя.
2. Усиление проверки сложности паролей (модули PAM)
Файл /etc/login.defs не гарантирует строгую проверку пароля. Для принудительного соблюдения правил сложности используйте модули PAM.
2.1. Настройка для Debian/Ubuntu
Отредактируйте файл:
2. Усиление проверки сложности паролей (модули PAM)
Файл /etc/login.defs не гарантирует строгую проверку пароля. Для принудительного соблюдения правил сложности используйте модули PAM.
2.1. Настройка для Debian/Ubuntu
Отредактируйте файл:
sudo nano /etc/pam.d/common-passwordДобавьте или измените строку, содержащую pam_pwquality.so:
password requisite pam_pwquality.so retry=3 minlen=15 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-12.2. Настройка для RHEL/CentOS/Rocky Linux
Способ А (рекомендуемый): через файл конфигурации.
Способ А (рекомендуемый): через файл конфигурации.
sudo nano /etc/security/pwquality.confРаскомментируйте и установите параметры:
- minlen = 15
- ucredit = -1
- lcredit = -1
- dcredit = -1
- ocredit = -1
- retry = 3
Способ Б: через PAM-модули (`/etc/pam.d/system-auth` или `password-auth`).
3. Защита от перебора (блокировка после неудач)
Для предотвращения брутфорс-атак настройте блокировку учетной записи.
3.1. Пример для RHEL-подобных систем с модулем pam_faillock
Добавьте следующие строки в соответствующие файлы PAM (`/etc/pam.d/system-auth` и `/etc/pam.d/password-auth`):
В секцию `auth` до строки `pam_unix.so`:
3. Защита от перебора (блокировка после неудач)
Для предотвращения брутфорс-атак настройте блокировку учетной записи.
3.1. Пример для RHEL-подобных систем с модулем pam_faillock
Добавьте следующие строки в соответствующие файлы PAM (`/etc/pam.d/system-auth` и `/etc/pam.d/password-auth`):
В секцию `auth` до строки `pam_unix.so`:
auth required pam_faillock.so preauth audit deny=5 unlock_time=900В секцию `auth` после строки `pam_unix.so`:
auth [default=die] pam_faillock.so authfail audit deny=5 unlock_time=900В секцию `account`:
account required pam_faillock.so4. Дополнительные меры безопасности
4.1. Запрет повторного использования паролей
Включите ведение истории паролей, чтобы пользователь не мог сменить пароль на один из предыдущих.
Настройка (Debian/Ubuntu): в файле /etc/pam.d/common-password добавьте параметр remember к модулю pam_unix.so:
password required pam_unix.so remember=104.2. Двухфакторная аутентификация (2FA)
Для привилегированных пользователей рекомендуется использовать двухфакторную аутентификацию (например, Google Authenticator или аппаратные токены). Настройка производится через модуль pam_google_authenticator.so.
4.3. Проверка паролей на утечки и словарные значения
Интеграция с HaveIBeenPwned API: Используйте утилиты (например, `pam_pwned`) для проверки новых паролей по базе утечек.
Сканирование уязвимостей: Регулярно проводите аудит системы с помощью OpenVAS для выявления слабых паролей в системе.
5. Проверка работоспособности политики
Чтобы убедиться, что политика работает корректно:
1. Создайте нового пользователя:
Для привилегированных пользователей рекомендуется использовать двухфакторную аутентификацию (например, Google Authenticator или аппаратные токены). Настройка производится через модуль pam_google_authenticator.so.
4.3. Проверка паролей на утечки и словарные значения
Интеграция с HaveIBeenPwned API: Используйте утилиты (например, `pam_pwned`) для проверки новых паролей по базе утечек.
Сканирование уязвимостей: Регулярно проводите аудит системы с помощью OpenVAS для выявления слабых паролей в системе.
5. Проверка работоспособности политики
Чтобы убедиться, что политика работает корректно:
1. Создайте нового пользователя:
sudo useradd testusersudo passwd testuser
2. При попытке ввести простой пароль (например, 123, qwerty или `password`) система должна отклонить его с сообщением об ошибке, указывающим на нарушение правил сложности или длины.
3. В случае успешной проверки, политика считается примененной и активной.
3. В случае успешной проверки, политика считается примененной и активной.
Рекомендации по установке парольной политики для Linux:
- PASS_MAX_DAYS → Максимальный срок действия пароля → 90
- PASS_MIN_DAYS → Минимальное число дней между сменами пароля → 1–7
- PASS_WARN_AGE → За сколько дней до истечения срока показать предупреждение → 7–14
- PASS_MIN_LEN → Минимальная длина пароля (не во всех дистрибутивах) → 15
- ENCRYPT_METHOD → Метод шифрования пароля (SHA512, YESCRYPT, BCRYPT) → SHA512 или YESCRYPT
Рекомендации к заполнению карточки:
- Привяжите созданный актив типа групповые политики к данной защитной мере в качестве инструмента.
- Приложите в карточку защитной меры снимок экрана, отображающий установленные настройки для паролей учетных записей пользователей ИС организации, подтверждающий соответствие настроек паролей учетных записей пользователей парольной политике.
- Создайте шаблон регулярной задачи "Проверка применения парольных политик на Linux - серверах" с периодичностью "ежеквартально".
Область действия: Вся организация
Классификация
Тип
Техническая
?
Реализация
Вручную
Периодичность
Ежеквартально
Ответственный
Не определено
Инструменты
Не определено
Мы используем cookie-файлы, чтобы получить статистику, которая помогает нам улучшить сервис для вас с целью персонализации сервисов и предложений. Вы может прочитать подробнее о cookie-файлах или изменить настройки браузера. Продолжая пользоваться сайтом, вы даёте согласие на использование ваших cookie-файлов и соглашаетесь с Политикой обработки персональных данных.