- Начало работы
- Интеграция
- HTTP API
- OpenID Connect
- RADIUS протокол
- RADIUS адаптер
- LDAP адаптер
- Портал самообслуживания
- MULTIFACTOR Directory Sync
- Windows Logon
- MacOS logon
- Регистрация пользователей
- .NET Core
- 1с-Bitrix24
- 1с-плагин двухфакторной аутентификации
- ADFS
- ASP.NET
- Ansible AWX
- Atlassian Cloud
- BearPass
- Check Point VPN
- Cisco ASA VPN
- Citrix Gateway
- FortiGate VPN
- HRBOX
- Huawei Cloud
- Huawei VPN
- Ideco UTM
- Keycloak
- Let's Encrypt Windows Server
- Linux logon (GUI)
- Linux SSH
- Linux SUDO
- Microsoft Entra ID
- MikroTik L2TP VPN
- NGate VPN
- Network Policy Server (NPS)
- Nextcloud
- OpenVPN
- OpenVPN + AD
- OpenVPN Access Server
- OpenVPN pfSense
- Outlook Web Access (OWA)
- Passwork
- RD Gateway (RDGW)
- Redmine
- UserGate VPN
- VMware Horizon Cloud
- VMware Horizon View
- VMware vCloud Director
- VMware vSphere
- Vault
- ViPNET
- Windows VPN
- Yandex.Cloud
- Yandex 360
- Zabbix
- АйТи-Бастион
- Континент 4 VPN
- МТС Линк (бывш. webinar.ru)
- WordPress
- С-Терра VPN
- Точка доступа Wi-Fi
- ФПСУ-IP/Клиент
Настройка двухфакторной аутентификации на RedOS
В статье описывается настройка сервера RedOS для включения двухфакторной аутентификации c логином/паролем и одноразовым кодом доступа (OTP) или PUSH уведомлением при локальном входе или подключении через RDP.
Использование второго фактора на 99% сокращает риск неправомерного доступа и совершенно не усложняет процесс подключения для пользователей.
Возможные способы аутентификации:
Мобильное приложение Multifactor
СМС
Аппаратные OTP токены
Приложения OTP: Google Authenticator или Яндекс.Ключ
Telegram
Принцип работы
- SSHD использует модуль PAM_RADIUS для второго фактора проверки подлинности
- Модуль подключается через RADIUS протокол к сервису MULTIFACTOR
- MULTIFACTOR отправляет одноразовый пароль или PUSH уведомление пользователю для подтверждения доступа
- Пользователь вводит одноразовый пароль или подтверждает PUSH и получает доступ при локальном входе или подключении через RDP.
Настройка MULTIFACTOR
Зайдите в систему управления MULTIFACTOR, далее в раздел «Ресурсы» и создайте новый Linux сервер. После создания вам будут доступны два параметра: NAS Identifier и Shared Secret, они потребуются для последующих шагов.
Установка и настройка модуля PAM_RADIUS
#Обновим системный репозиторий sudo apt update #Установим модуль ssh (если не установлен) sudo apt install ssh #Установим PAM sudo apt install libpam-radius-auth #Выполняем обновление списков пакетов dnf -y update #Выполняем команду sudo dnf install gcc pam pam-devel make -y #Скачиваем pam-модуль нужной версии, в данной инструкции используется версия 3.0.0 wget https://www.freeradius.org/ftp/pub/freeradius/pam_radius-3.0.0.tar.gz #Распаковываем скачанный архив tar -xzvf pam_radius-3.0.0.tar.gz Переходим в распакованный каталог cd pam_radius-3.0.0 #Выполняем команду sudo ./configure #Выполняем команду sudo make #Скопируем pam_radius_auth.so файл в каталог security #Для 32-разрядной системы sudo cp pam_radius_auth.so /lib/security/ #Для 64-разрядной системы sudo cp pam_radius_auth.so /lib64/security/
Далее создайте файл каталог raddb:
sudo mkdir /etc/raddb/
Копируем конфигурационный файл: “pam_radius_auth.conf” в созданный выше каталог и переименуем его в MF:
sudo cp pam_radius_auth.conf /etc/raddb/MF
Впишите в него настройки RADIUS сервера MULTIFACTOR, сохраните и закройте редактор (:x)
radius.multifactor.ru SHARED_SECRET 40
где:
- radius.multifactor.ru: адрес сервера
- SHARED_SECRET: скопируйте из соответствующего параметра настроек Linux ресурса MULTIFACTOR
- 40: таймаут ожидания запроса с запасом
Должен выглядеть следующим образом

В файле хранится секретный ключ, поэтому установите на него права доступа на чтение только пользователю root
sudo chmod 0600 /etc/pam_radius_ssh.conf
Настройка PAM модулей
Откройте для редактирования файл /etc/pam.d/sshd
sudo nano /etc/pam.d/sshd
#Добавим строки auth required pam_localuser.so auth required pam_unix.so nullok_secure try_first_pass auth required pam_radius_auth.so client_id=linux conf=/etc/raddb/MF #client_id=значение, должно быть идентичным с Nas identifier из конфигурации адаптера,или из созданного ресурса в личном кабинете Мультифактор, в зависимости от того используете вы облачный или локальный RADIUS адаптер #Закомментируем строки #auth substack password-auth #auth include postlogin
Сохраните и закройте файл.
Включение PAM в SSH
Отредактируйте файл /etc/ssh/sshd_config
sudo nano /etc/ssh/sshd_config
- Включите PAM интерфейс
UsePAM yes
- Добавьте способы аутентификации
AuthenticationMethods keyboard-interactive PasswordAuthentication yes
3. Сохраните файл (:x) и перезапустите ssh демона
sudo systemctl restart sshd
Откроем конфигурационный файл /etc/pam.d/system-auth
#Закомментируем все строки, начинающиеся на auth. #Добавим строки: auth required pam_localuser.so auth required pam_unix.so nullok_secure try_first_pass auth required pam_radius_auth.so client_id=linux conf=/etc/raddb/MF #«client_id=значение», должно быть идентичным с Nas identifier из конфигурации адаптера.
Откроем конфигурационный файл /etc/pam.d/password-auth
#Закомментируем все строки, начинающиеся на auth. #Добавим строки: auth required pam_localuser.so auth required pam_unix.so nullok_secure try_first_pass auth required pam_radius_auth.so client_id=linux conf=/etc/raddb/MF #«client_id=значение», должно быть идентичным с Nas identifier из конфигурации адаптера.
Включение 2FA для RDP подключения
Важно
Данный модуль не поддерживает отображение окна для ввода OTP, поэтому использование методов аутентификации с вводом ОТП технически невозможно. В данном сценарии возможно использование только PUSH.
Установите и настройте xrdp сервер на машину по инструкции из документации RedOS
Откроем конфигурационный файл /etc/pam.d/xrdp-sesman
#Добавим строки auth required pam_localuser.so auth required pam_unix.so nullok_secure try_first_pass auth required pam_radius_auth.so client_id=linux conf=/etc/raddb/MF #«client_id=значение», должно быть идентичным с Nas identifier из конфигурации адаптера. #Закомментируем строку #auth include password-auth
Выполните перезапуск xrdp:
sudo systemctl restart xrdp
Если что-то не работает
Последовательно проверьте, что вы ничего не упустили:
- На сервере с Linux есть пользователь с заданным логином
- С сервера открыт доступ по UDP порту 1812 на адрес radius.multifactor.ru
- Параметры Client ID и Shared Secret указаны корректно
- Пользователь настроил способ аутентификации
- Проверьте журнал «Запросы доступа» в личном кабинете MULTIFACTOR.
Если ничего не сработало, обращайтесь, поможем.