| Краткое описание | Обнаружение и блокировка трафика через VPN и прокси во время регистрации пользователей, входа в систему и/или глобально с использованием API ProxyTracer. | |
| Ссылка на репозиторий | https://github.com/ProxyTracer/discourse-proxytracer | |
| Руководство по установке | Как установить плагины в Discourse |
Этот плагин использует API ProxyTracer для обнаружения и блокировки трафика через VPN и прокси в системе Discourse.
Возможности
- Предоставляет тонкую настройку блокировки пользователей VPN и прокси при регистрации новых пользователей, аутентификации существующих или глобально для всех посетителей сайта. Если вы допускаете, чтобы пользователи VPN и прокси имели доступ только для чтения к вашему форуму, вы можете сэкономить запросы к API, включив проверку только при регистрации и аутентификации.
- Использует кэширование для хранения результатов проверки последних IP-адресов, что снижает количество запросов к API и уменьшает задержку. В настройках можно указать, как долго сохранять результаты проверки IP-адреса.
- В случае тайм-аута API или сбоя сети плагин приоритизирует доступ пользователей, чтобы избежать массовых блокировок. Это поведение можно изменить через настройки.
- Встроенная поддержка точного whitelisting по IP-адресам и подсетям CIDR.
Настройка
- Получите стандартный ключ API в панели управления ProxyTracer.
- Перейдите в панель администратора Discourse: Администрирование → Плагины → ProxyTracer, чтобы найти настройки ProxyTracer.
- Введите ваш ключ API в поле
Ключ API ProxyTracer. - Включите параметры защиты, переключив опции
Включено при регистрации,Включено при входеи/илиВключено для всех посетителей. - Добавьте доверенные IP-адреса или диапазоны CIDR в список
Whitelisted IPs(Белый список IP-адресов). - (Опционально) Отрегулируйте тайм-аут API и длительность кэширования Redis в соответствии с потребностями трафика вашего сервера.
- (Опционально) Настройте сообщение о блокировке, которое отображается заблокированным пользователям. Например, вы можете добавить инструкции по связи с администрацией сайта, если пользователь считает, что блокировка необоснованна и он не использует прокси или VPN.
Настройки
Таблица настроек и их описаний:
| Название | Описание |
|---|---|
| Тайм-аут API (мс) | Время ожидания ответа от API перед возникновением тайм-аута. |
| Длительность кэша (часы) | Время, в течение которого сохраняется результат проверки IP-адреса перед повторной проверкой через API. |
| Fail Open при ошибке | Если API аварийно завершает работу или происходит тайм-аут, разрешить пользователю регистрацию/вход, чтобы избежать полной блокировки всех пользователей. |
| Включено при регистрации | Блокировать прокси и VPN, когда новый пользователь пытается зарегистрироваться. |
| Включено при входе | Блокировать прокси и VPN, когда существующий пользователь пытается войти в систему. |
| Включено для всех посетителей | Блокировать прокси и VPN от доступа или просмотра любой страницы форума. (Предупреждение: это проверяет каждого посетителя и значительно расходует квоту API). |
| Сообщение о блокировке | Точный текст сообщения об ошибке, отображаемый пользователю при блокировке. |
| Whitelisted IPs | IP-адреса или диапазоны CIDR (например, 192.168.1.0/24), которым строго разрешено обходить блокировку. |
Настройка сети: Cloudflare и обратные прокси
Для корректной работы ProxyTracer приложение Discourse должно получать настоящий IP-адрес клиента.
Чтобы обеспечить правильную передачу IP-адресов, следуйте этим подробным инструкциям.
Экстренный доступ
Если вы заблокировали себя, вы можете восстановить доступ, выполнив эти простые шаги.
Если вы хотите протестировать плагин, вы можете зарегистрироваться в ProxyTracer и получить бесплатные кредиты API для тестирования.
