Что такое Duo Proxy Server и зачем он нужен?
Duo Proxy Server — это промежуточное программное обеспечение, которое интегрирует двухфакторную аутентификацию (2FA) Duo Security с веб-приложениями, не поддерживающими SAML или современные протоколы. Он действует как “переводчик”, обеспечивая совместимость устаревших систем с защитой Duo. Основные преимущества:
- Защита VPN, RDP и веб-порталов без замены инфраструктуры
- Централизованное управление политиками доступа
- Поддержка мобильных push-уведомлений, SMS и аппаратных токенов
- Аудит событий входа в реальном времени
Пошаговая настройка Duo Proxy Server
- Подготовка сервера: Установите Windows Server 2016+ или Linux. Требования: 2+ ядра CPU, 4 ГБ RAM, 10 ГБ диска.
- Загрузка ПО: Скачайте установщик с официального портала Duo (требуется аккаунт администратора).
- Инсталляция: Запустите duo-proxy-installer.exe (Windows) или .sh-скрипт (Linux), приняте лицензионное соглашение.
- Конфигурация: В файле authproxy.cfg укажите:
- api_host: api-XXXXXXXX.duosecurity.com
- integration_key (из панели Duo)
- secret_key (секретная фраза)
- Привязка к приложению: В админ-панели Duo создайте новое “Auth Proxy” приложение и скопируйте ключи.
- Тестирование: Откройте порт 443/TCP и проверьте доступ через https://your-proxy-ip/signin.
Оптимизация и расширенные настройки
Для повышения безопасности и производительности:
- Load Balancing: Разместите 2+ прокси за Nginx для отказоустойчивости
- SSL/TLS: Замените самоподписанный сертификат на Let’s Encrypt или корпоративный CA
- Интеграция с AD: Настройте ldap_uri в конфиге для синхронизации пользователей
- Кастомизация форм: Измените HTML-шаблоны в /html для фирменного стиля
Важно: регулярно обновляйте ПО через duo-proxy-updater и мониторьте логи в /var/log/duoauthproxy.
Типичные ошибки и их решение
- “Invalid integration key”: Проверьте регистр символов и перегенерируйте ключи в Duo Admin
- Блокировка портов: Разрешите входящие подключения на 443/TCP и 1812/UDP (для RADIUS)
- Расхождение времени: Настройте NTP-синхронизацию (разница > 5 мин ломает аутентификацию)
Часто задаваемые вопросы (FAQ)
Вопрос: Можно ли использовать Duo Proxy для защиты SSH?
Ответ: Да, через интеграцию с RADIUS. Настройте pam_radius на Linux-сервере для перенаправления запросов на порт 1812 прокси.
Вопрос: Как организовать аварийный доступ при отказе Duo?
Ответ: Активируйте “Failmode = safe” в конфигурации. Это разрешит вход при недоступности API Duo (но требует строгого контроля сети).
Вопрос: Поддерживается ли кластеризация прокси?
Ответ: Прямая кластеризация не предусмотрена, но можно развернуть несколько экземпляров за балансировщиком нагрузки с общим бэкендом.
Вопрос: Какие альтернативы при блокировке API Duo в РФ?
Ответ: Используйте GEO-IP фильтрацию на firewall или разверните Duo Gateway в разрешенной юрисдикции.
Вопрос: Как ограничить доступ по времени суток?
Ответ: Настройте “timebound” политики в Duo Admin Panel → Policies → Global Policy.