Решение двухфакторной аутентификации Protectimus RADIUS 2FA подходит для защиты любого программного обеспечения или оборудования, которое поддерживает протокол аутентификации RADIUS.
Коннектор Protectimus RADIUS Server работает как RADIUS сервер. Он передает запросы аутентификации от устройства или ПО, ктоторое подключено к Protectimus RADIUS Server по протоколу RADIUS, на сервер многофакторной аутентификации (MFA) Protectimus и возвращает ответ с разрешением или запретом доступа.
Подключите двухфакторную аутентификацию (2FA/MFA) к VPN, Wi-Fi и любому другому программному обеспечению или девайсу, поддерживающему RADIUS аутуентификацию и защитите доступ к учетным записям пользователей от несанкционированного доступа. Двухфакторная аутентификация (2FA/MFA) — это мощное средство защиты от фишинга, подмены данных, кейлогеров, социальной инженерии и других подобных угроз.
Список программного обеспечения и устройств, которые можно интегрировать с Protectimus по протоколу аутентификации RADIUS, включает, но не ограничивается:
Программное обеспечение Protectimus RADIUS 2FA легко настроить и интегрировать с вашей системой. Но если у вас возникнут вопросы, наша команда всегда готова помочь с интеграцией двухфакторной аутентификации (2FA) по RADIUS даже в самую сложную инфраструктуру. Просто свяжитесь с нашей службой поддержки.
Чтобы интегрировать решение Protectimus 2FA с устройством или программным обеспечением, поддерживающим RADIUS, необходимо установить и настроить Protectimus RADIUS Server, а затем настроить политики аутентификации на устройстве или в приложении, которое вы хотите интегрировать с Protectimus (это устройство или приложение должно поддерживать протокол RADIUS):- Запрос на аутентификацию передается по протоколу RADIUS на Protectimus RADIUS Server;
- Protectimus RADIUS Server принимает и обрабатывает этот запрос;
- Далее Protectimus RADIUS Server обращается к серверу аутентификации Protectimus для проверки одноразового пароля от пользователя.
1. Установите Protectimus RADIUS Server
1.1. Установка Protectimus RADIUS Server из Docker-образа
- Для установки Protectimus RADIUS Server необходимо скачать и установить docker, docker-compose:
- Склонировать git репозиторий: https://github.com/protectimus/platform-linux.git
- Перейти в каталог platform-linux/radius и запустить:
docker-compose up -d
- За процессом разворачивания Protectimus RADIUS Server можно наблюдать используя команду:
docker-compose logs -f
- После завершения процесса запуска, Protectimus RADIUS Server будет доступен по адресу: https://localhost:8443
1.2. Установка Protectimus RADIUS Server на Windows
- Скачайте инсталлятор On-Premise платформы Protectimus здесь.
- Запустите инсталлятор от имени администратора.
- Выберите RProxy.
ВНИМАНИЕ!
Если вы планируете использовать локальную платформу Protectimus, выберите пункт Platform. Более детальная инструкция по установке On-Premise платформы Protectimus на Windows доступна здесь.
Если вы планируете использовать облачный сервис Protectimus, снимите галочку с пункта Platform.
Если используете On-Premise платформу Protectimus | Если используете Облачный сервис Protectimus |
| |
- На вашей машине должна быть установлена Java (JDK 8 или выше). Нажмите кнопку Install, чтобы проверить наличие Java. Если Java еще не установлена, последняя версия JDK будет установлена автоматически.
- Нажмите Next, чтобы продолжить установку.
- Выберите папку для установки компонентов Protectimus и нажмите Install.
- После успешной установки, вы увидите это сообщение.
2. Зарегистрируйтесь и задайте базовые настройки
- Зарегистрируйтесь в Облачном сервисе Protectimus и активируйте API или установите Локальную платформу Protectimus.
- Создайте ресурс.
- Добавьте пользователей.
- Добавьте токены или активируйте Портал самообслуживания пользователей.
- Назначите токены пользователям.
- Назначте токены с пользователями на ресурс.
3. Настройте Protectimus RADIUS Server
Конфигурирование Protectimus RADIUS Server выполняется путём задания настроек в файле
radius.yml, который должен быть расположен в той же папке, что и запускаемый файл.
Задайте в файле
radius.yml следующие значения:
3.1. Настройки RADIUS
radius:
secret: secret
auth-port: 1812
acct-port: 1813
listen-address: 0.0.0.0
dictionaries:
- file:<some_path>/<some_name>.dat
attributes:
copy-state:
true
defaults:
Service-Type: NAS-Prompt-User
for-users:
john:
Service-Type: Login-User
ldap:
memberOf:
'[cn=admins,ou=groups,dc=test,dc=com]':
Service-Type: Administrative
uid:
john_wick:
Class: Pro
conditional:
'[ldapUser.attributes["uid"] == "john"]':
Service-Type:
- Login-User
'[request.getAttributeValue("User-Name") =+ "john"]':
Class:
- RDP_HeadOffice_GP
НАЗВАНИЕ ПАРАМЕТРА | ФУНКЦИЯ ПАРАМЕТРА |
secret:
| Секрет, который будет использоваться прокси-сервером аутентификации и вашим сервером RADIUS. |
auth-port:
| Порт на котором будет запущен RADIUS сервер. |
listen-address:
| IP-адрес, к которому подключается сервер. |
dictionaries:
| Расширение списка атрибутов для протокола RADIUS. Пример подобного списка атрибутов представлен здесь. |
attributes:
| Атрибуты, которые будут возвращаться при успешной аутентификации. |
copy-state:
| Копирует каждый возвращаемый атрибут в ответ. |
defaults:
| Aтрибуты для всех пользователей. |
for-users:
| Атрибуты для определенных пользователей. |
ldap:
| Атрибуты для конкретного пользователя или группы пользователей в LDAP. |
conditional:
| Когда параметр conditional активирован, вы можете указать скрипт, который будет проверять условия, при выполнении которых атрибут будет возвращаться. |
3.2. Настройки PROTECTIMUS API (настройка подключения к сервису PROTECTIMUS)
protectimus-api:
login:
api-key:
url: https://api.protectimus.com/
resource-id:
resource-name:
НАЗВАНИЕ ПАРАМЕТРА | ФУНКЦИЯ ПАРАМЕТРА |
login:
| Ваш логин в системе PROTECTIMUS. |
api-key:
| Ваш ключ API в системе PROTECTIMUS. |
url:
| Если Вы используете облачный сервис PROTECTIMUS, укажите следующий API URL: https://api.protectimus.com/
Если Вы используете on-premise платформу Protectimus, API URL будет выглядеть примерно так: protectimus.api.url=http://127.0.0.1:8080/ |
resource-id:
| ID ресурса, созданного Вами в системе PROTECTIMUS. |
resource-name:
| Название ресурса, созданного Вами в системе PROTECTIMUS. |
3.3. Настройки LDAP
ldap:
base: dc=test,dc=com
urls:
- ldap://127.0.0.1:389
principal-attribute: userPrincipalName
custom-filter: (memberof=cn=managers,ou=groups,dc=test,dc=com)
НАЗВАНИЕ ПАРАМЕТРА | ФУНКЦИЯ ПАРАМЕТРА |
base:
| LDAP DN группы или подразделения, содержащего всех пользователей, которым вы хотите разрешить вход. |
urls:
| Имя хоста или IP-адрес вашего контроллера домена. |
principal-attribute:
| Используется для LDAP аутентификации по определенному атрибуту.
Если вы хотите аутентифицировать пользователя с помощью «sAMAccountName» вместо «userPrincipalName», укажите атрибуты «query-attribute» и «principal-attribute» соответственно. |
custom-filter:
| Используется для ограничения пользователей, которым разрешено проходить аутентификацию. |
3.4 Настройка процесса аутентификации
auth:
providers:
re-enter-otp: true
principal-normalization: true
bypass-otp:
ldap-filter: (memberOf=cn=bypass-otp,ou=groups,dc=test,dc=com)
usernames:
- john
- luci
inline-mode:
enabled: false
separator: ''
НАЗВАНИЕ ПАРАМЕТРА | ФУНКЦИЯ ПАРАМЕТРА |
providers:
| Могут быть:- LDAP
- PROTECTIMUS_PASSWORD
- PROTECTIMUS_OTP
- PROTECTIMUS_PUSH
- RADIUS_PROXY
|
re-enter-otp:
| Когда параметр re-enter-otp активирован, статический пароль не запрашивается после неудачной проверки OTP-пароля. |
principal-normalization:
| Когда параметр normalization активирован, любая информация о домене удаляется из имени пользователя, то есть независимо от того, как указано имя пользователя «username», «DOMAIN \ username», или «[email protected]», оно будет преобразовано в одно «username». |
bypass-otp:
| Когда опция bypass-otp включена, для указанных пользователей не требуется ввод одноразового пароля (OTP). |
|
inline-mode:
| Inline mode позволяет использовать 2FA в случае, когда Access-Challenge не поддерживается.
Inline mode можно активировать с помощью ‘enabled: true’ или с помощью атрибута запроса ‘State=INLINE’.
В этом случае пароль должен быть в следующем формате ‘password,otp’, если используется разделитель: ‘,’. |
3.5. Настройка RADIUS_PROXY Authentication Provider
# Настройки для провайдера аутентификации RADIUS_PROXY
proxy:
secret: secret
auth-port: 1812
remote-address: 192.168.1.1
НАЗВАНИЕ ПАРАМЕТРА | ФУНКЦИЯ ПАРАМЕТРА |
secret:
| Секрет, который будет использоваться прокси-сервером аутентификации и вашим сервером RADIUS. |
auth-port:
| Порт на котором будет запущен RADIUS сервер. |
remote-address:
| IP-адрес сервера PROXY_RADIUS. |
3.6. Пример конфигурационного файла radius.yml
radius:
secret: secret
auth-port: 1812
dictionaries:
- file:C:/Protectimus/dict.dat
attributes:
defaults:
Service-Type: NAS-Prompt-User
auth:
providers:
# Could be:
- LDAP
- AD
- PROTECTIMUS_PASSWORD
- PROTECTIMUS_OTP
- RADIUS_PROXY
# Configuration for RADIUS_PROXY auth provider
proxy:
secret: secret
auth-port: 1812
remote-address: 192.168.1.1
#Configuration for AD auth provider
ad:
urls:
- ldap://127.0.0.1:389
domain: test.com
#Configuration for LDAP auth provider
ldap:
urls:
- ldap://localhost:389
base: dc=test,dc=com
username: [email protected]
password: secret
principal-attribute: sAMAccountName
#Configuration for PROTECTIMUS_PASSWORD/PROTECTIMUS_OTP auth providers
protectimus-api:
login: [email protected]
api-key: secret
url: https://api.protectimus.com/
resource-id: 1
В этом случае пароль будет проверяться через LDAP, а OTP — с помощью Protectimus MFA.
3.7. Пример Dictionary
VENDOR 12356 fortinet
VENDORATTR 12356 Fortinet-Group-Name 1 string
VENDORATTR 12356 Fortinet-Access-Profile 6 string
Теперь вам нужно настроить ваше устройство или приложение для связи с Protectimus RADIUS Server по протоколу RADIUS.