Скриптинг

Отчет по подключениям VPN

И так, предположим, что у нас есть OpenVPN и система, которая снимает отчеты. Наша задача, получив внешний ip-адрес клиента произвести его соответствие стране. Грубо говоря, берем каждый ip-адрес из отчета и проверяем его.

Конечно же мы будем использовать Python со следующими библиотеками:

  • pysyge – Python библиотека для доступа к базе Sypex Geo IP.
  • openpyxl – Python библиотека для работы (чтение/запись) с документами формата xlsx/xlsm/xltx/xltm.
  • pyTelegramBotAPI – Python библиотека для создания бота.

Так выглядит наш отчет о подключениях, из которого мы будем брать ip адрес и проверять его по базе – SxGeoCityMax.dat.

И так сам скрипт:

IP-адрес сверяется с базой и если адрес не относится к России, то производится отправка сообщения с указанием кто и откуда подключался.

Обратите внимание на задержку – time.sleep(1.5) Данная задержка нужна самому Telegram из-за высокой скорости отправки сообщений.

В данном примере нужна будет база данных Sypex Geo IP, которую можно приобрести у правообладателя или поискать старую на GitHub. В обоих случаях пример будет рабочим, поэтому не стоит расстраиваться. 🙂

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Нажимая кнопку Отправить комментарий Я даю согласие на обработку персональных данных.