Русский
Русский
English
Статистика
Реклама

Представляем ovpn-admin веб-интерфейс для управления пользователями OpenVPN

Обслуживая большое количество проектов, мы пришли к необходимости простого управления OpenVPN (сертификатами и маршрутами для пользователей), подразумевая под этим веб-интерфейс вместо того, чтобы ходить по серверам/контейнерам и выполнять в них вручную команды. Поскольку существующие для этого решения (вроде Pritunl и OpenVPN AS) коммерческие, несколько лет назад мы создали (и используем по сей день) свой интерфейс.

Недавно мы его переписали с Python на Go и обновили внешний вид*, что и навело на мысль поделиться разработкой с более широким сообществом. Итак, встречайте ovpn-admin!

* За первоначальный вариант на Python благодарю коллегу @vitaliy-sn, а за нескучные обои обновлённый интерфейс erste.

Возможности и интерфейс

Ovpn-admin это Open Source-проект, реализующий веб-интерфейс для управления OpenVPN. В настоящий момент утилита поддерживает только Linux и умеет:

  • добавлять пользователей (генерировать сертификаты для них);

  • отзывать/восстанавливать сертификаты пользователей;

  • выдавать готовый файл конфига;

  • отдавать метрики для Prometheus: срок действия сертификатов, количество пользователей (всего/подключенных), информация о подключенных пользователях;

  • (опционально) прописывать CCD (client-config-dir) для каждого пользователя;

  • (опционально) работать в режиме master/slave (синхронизация сертификатов и CCD с другим сервером);

  • (опционально) задавать/менять пароль для дополнительной авторизации в OpenVPN.

Вот как выглядит интерфейс ovpn-admin:

Список пользователей и возможные действия с нимиСписок пользователей и возможные действия с нимиОкно добавления кастомных маршрутов для пользователяОкно добавления кастомных маршрутов для пользователяПример панели на основе метрик, полученных от ovpn-adminПример панели на основе метрик, полученных от ovpn-admin

Как попробовать

Ovpn-admin можно установить в систему или запускать в Docker-контейнере. Инструкции описаны в README проекта.

Исходный код проекта распространяется на условиях свободной лицензии (Apache License 2.0). Будем рады новым фичам, а также, конечно, ожидаем ваши issues и просто обсуждения на GitHub или в комментариях к этому посту.

Планы по развитию

Что бы хотелось улучшить в проекте? На данный момент у нас такой список доделок:

  • добавить возможность дополнительной авторизации через OTP;

  • добавить Helm-чарт как вариант установки;

  • добавить группы пользователей;

  • уйти от вызова утилиты easyrsa для генерации сертификатов;

  • уйти от вызова bash.

P.S.

Читайте также в нашем блоге:

Источник: habr.com
К списку статей
Опубликовано: 17.03.2021 16:04:48
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Блог компании флант

Open source

Системное администрирование

Сетевые технологии

Openvpn

Флант

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru