Блог компании Аладдин Р.Д.
Информационная безопасность
*nix
Apache
IT-компании
30 октября 2019

Аутентификация по OTP на Web-сервере Apache

Tutorial
В этом посте мы расскажем о том, как настроить аутентификацию по одноразовому паролю на Apache при помощи JAS и Radius. JAS (JaCarta Authentication Server) – автономный высокопроизводительный сервер аутентификации с поддержкой OTP- и U2F-токенов, а также программных токенов для мобильных устройств. В процессе настройки использовалось следующее ПО — JAS 1.x, Linux Debian, Apache2, а также токены JaCarta WebPass, JaCarta U2F, любые OTP-токены по событию, программные Google Authenticator, Яндекс-ключ и т.д.
Для решения данной задачи можно использовать подключаемый модуль аутентификации radius для сервера apache2. Все действия на Web-сервере выполняются для дистрибутива Linux Debian stretch.

Настройка Web-сервера


1. Устанавливаем модуль radius для apache2:
sudo apt install libapache2-mod-auth-radius
sudo a2enmod auth_radius

2. Выбираем нужный сайт и в его конфигурации делаем изменения:
   ServerName web1.test2.ru
   ServerAdmin webmaster@localhost
   DocumentRoot /var/www/html
# Указываем параметры нашего сервера radius (адрес, секрет, количество попыток соединения)
   AddRadiusAuth 127.0.0.1 P@ssw0rd 5
   AddRadiusCookieValid 60 

В секции  «Directory» также указываем:
 AuthType Basic
 AuthName "Radius Authentication"
 AuthBasicAuthoritative Off
 AuthBasicProvider radius
 AuthRadiusAuthoritative on
 AuthRadiusActive On
 Require valid-user


3. Перезагружаем демон Web-сервера:
sudo apache2ctl restart

Web-сервер готов.

Настройка сервера Radius (NPS)


Запускаем консоль управления NPS.

1. Добавим наш Web-сервер в качестве клиента:
image

2. В политиках запроса соединения создаём правило, согласно политике безопасности предприятия:
image

Добавление пользователя с правами сетевого доступа


Создаём пользователя и на вкладке Dial-in предоставляем права сетевого доступа:
image

Настройка сервера JAS


В консоли управления JAS добавляем любой из указанных выше OTP-аутентификаторов.
В свойствах указываем имя пользователя:
image
Более подробно о настройке сервера JAS написано в документации по продукту, а также в Базе знаний.

Проверка работы


В браузере переходим на наш сайт. Должен быть запрошен логин и пароль. Вводим логин и одноразовый пароль:
image
Если всё выполнено верно, получаем доступ на наш сайт, защищённый паролем:
image

Дополнительно:
www.adminsehow.com/2010/03/how-to-authenticate-apache-2-with-radius-on-debian

 

+10
1,6k 36
Комментировать

Рекомендуем