Каталог расширений

Интеграция почтового сервера CommuniGate Pro и PT Sandbox для подключения в разрыв

Интеграция почтового сервера CommuniGate Pro и PT Sandbox для подключения в разрыв на основе механизма помощников

Текущая логика работы:

Коннектор:

• Использует протокол помощников ComuniGate (https://old.communigatepro.ru/CommuniGatePro/russian/Helpers.html#Protocol) • Работает в два потока: o Поток 1: сервер API для обработки вердиктов и отправки в stdout o Поток 2: цикл для чтения stdin • Преобразует письмо к каноничному eml* • Разбирает команду и отправляет по REST на Gateway: o Запрос один: загружается файл, в качестве ответа получает id файла в БД Gateway o Запрос два: отправляет UID запроса (RUID) и id в БД • Получает от gateway ответ по REST(Поток 1) и отправляет в stdout для общения с Comunigate

Gateway

• Получает по REST Файл и UID запроса от коннектора • Кладет полученную информацию в БД (SQLite) • По таймауту (раз в 10 секунд) отправляет задачи на сканирование в SB, и получает ответ (отдельный поток запускается по таймеру), записывает вердикт в БД • По таймауту (раз в 10 секунд ) запрашивает неотправленные результаты из БД, отправляет результаты сканирования по REST в коннектор, после успешной отправки удаляет сведения из БД

Требования к настройкам на стороне CommuniGate

• Настроен помощник фильтрации данных Установки -> Общее -> Помощники → Фильтрация данных • Строка для запуска /usr/local/bin/python -u /var/CommuniGate/PTConnector/connector/connector.py (ключ -u для отключения буферизации как требования протокола) • Настроено правило обработки почты: *CommunniGate использует msg (не формат microsoft, просто расширение, по сути eml с кастомными заголовками) в eml, в SnadBox письмо распознается корректно. Схема взаимодействия компонентов:

Использованные технологии:

В качестве сервера API используется uvicorn В качестве API используется FastAPI В качестве БД используется SQLite3 Переменные для настроек вынесены в .env файлы Для сервиса Gateway в текущей реализации используется Docker

Требования к окружению:

Python >= 3.8 fastapi>=0.112.2 pydantic>=2.8.2 python-dotenv>=1.0.1 Requests>=2.32.3 uvicorn>=0.30.6

Автор
LightRazor
Продукт
PT Sandbox
Категория
Интеграции

Другие расширения для PT Sandbox