Навчальний заклад: Одеський ліцей «Маріїнський»
Автор: Лакаров Анатолій Андрійович
Відділення: Інформаційні технології
Секція: Кібербезпека
Область: Одеська
Опис:
РrotoFlex — це десктоп-додаток на Go, призначений для управління та маршрутизації з’єднань через бажані vpn та проксі протоколи в linux-системах. Додаток підтримує протокол wireguard і дозволяє гнучко підключати інші протоколи. Основна ідея полягає в тому, щоб кожне з’єднання до vpn або проксі протоколу запускалось у власному network namespace, що забезпечує ізоляцію трафіку і дозволяє точно контролювати маршрутизацію. Користувач може додавати сервери, створювати для них тунелі, переглядати активні з’єднання, а також призначати протоколи для кожного з’єднання. Додаток автоматично створює необхідну мережеву інфраструктуру, зокрема network namespace, veth пари, налаштовує iptables та dns для кожного namespace. Всі дані про сервери, тунелі та активні підключення зберігаються у локальній базі даних sqlite. Інтерфейс програми реалізований з використанням бібліотеки fyne, також у проекті використовується gin для web-сайту, testify/suite для тестування. Архітектура додатку побудована за принципами clean architecture та domain-driven design, що дозволяє чітко розділити бізнес-логіку, роботу з базою даних та інтерфейс користувача.