Описание
При выполнении команд через SUDO пользователи проходят двухэтапную аутентификацию: вводят пароль пользователя (первый фактор) и подтверждают выполнение привилегированной операции с помощью второго фактора (Push-уведомление, TOTP или Telegram-бот).
Для интеграции используется PAM-адаптер Simple2FA, который устанавливается на Linux-сервер и взаимодействует с локальным инстансом Simple2FA по HTTPS.
Схема работы:
- Пользователь выполняет команду через SUDO.
- SUDO запрашивает пароль пользователя и передает учетные данные в PAM-адаптер Simple2FA.
- PAM-адаптер отправляет логин и пароль в локальный инстанс Simple2FA по HTTPS.
- Локальный инстанс Simple2FA проверяет первый фактор через LDAP или Keycloak.
- При успешной проверке первого фактора локальный инстанс инициирует проверку второго фактора.
- Пользователь подтверждает выполнение операции через Push, TOTP или Telegram-бот.
- После успешной проверки второго фактора выполнение SUDO-команды разрешается.
Подготовка в Simple2FA
Войдите в административную панель локального модуля Simple2FA. Перейдите в раздел «Настройка ресурсов» и создайте новый ресурс:
- Название: Linux SUDO (или любое удобное).
- Протокол: HTTPS.
- Проверять первый фактор: включить.
- Поставщики учетных записей: выберите один или несколько каталогов, в которых будет выполняться проверка первого фактора пользователей.
- Использовать кеширование сессий:включить, если необходимо, чтобы у пользователя после успешного входа не запрашивался второй фактор в течение указанного времени.
- Длительно кеша: рекомендуемое значение — 60 минут.
В глобальных настройках убедитесь, что:
- указан корректный API key для связи локального модуля с облаком.
Требования
- ОС: Linux (Astra Linux 1.7+, Debian 11+, Ubuntu 20.04+)
- SUDO: установленный пакет sudo с поддержкой PAM
- Наличие PAM в системе
- Доступ Linux-сервера к local-backend по HTTPS (TCP 443)
- Корректное системное время (NTP) на Linux-сервере и local-backend
- Права root для установки PAM-адаптера и изменения PAM-конфигурации
Без доступа к local-backend двухфакторная аутентификация работать не будет.
Установка PAM-адаптера
1) Скопируйте PAM-адаптер
- Скопируйте модуль simple2fa_pam.so в системный каталог PAM.
- Для Debian-based систем используется каталог /lib/security/.
- Для RPM-based систем используется каталог /usr/lib64/security/.
2) Создайте конфигурацию Simple2FA
Создайте файл конфигурации PAM-адаптера Simple2FA.
В конфигурации указываются:
- API key ресурса Linux SUDO
- URL local-backend
- параметры проверки первого фактора
- настройки логирования
- режим работы OTP
3) Настройте PAM для SUDO
В PAM-конфигурацию SUDO добавляется PAM-адаптер Simple2FA.
Обычно настройка выполняется в файле:
/etc/pam.d/sudo
4) Проверьте настройки SUDO
Убедитесь, что SUDO использует PAM-аутентификацию.
5) Проверьте работу SUDO
После применения конфигурации выполните тестовую SUDO-команду.
Проверка работы
- Подключитесь к Linux-серверу
- Выполните команду через SUDO
- Введите пароль пользователя
- Дождитесь запроса второго фактора
- Подтвердите выполнение операции через Push, Telegram или TOTP
- После успешной проверки выполнение SUDO-команды будет разрешено
После успешной проверки первого фактора пользователь должен получить запрос на подтверждение второго фактора Simple2FA.