Консольная программа, предназначеннная для обработки доступных OpenVPN серверов с различных сайтов, а также последующего подключения к OpenVPN серверам.
На текущий момент доступны OpenVPN сервера со следующих сайтов:
-
Клонировать проект командой:
$ git clone https://github.com/adsvkn/OpenVPNParser.git
-
Перейти в директорию OpenVPNParser
$ cd OpenVPNParser
-
Запустить программу
$ python3 ./src/vpnmgr.py --help usage: vpnmgr.py [-h] [--update] [--list] {connect} ... positional arguments: {connect} connect Connect to VPN server options: -h, --help show this help message and exit --update, -u Update the list of VPN servers --list, -l Print a list of vpn servers
-
Обновления списка OpenVPN серверов
$ python3 ./src/vpnmgr.py --update
-
Вывод списка доступных VPN серверов
$ python3 ./src/vpnmgr.py --list
-
Подключение к OpenVPN серверу
$ python3 ./src/vpnmgr.py connect --table vpngate -i 1
Для того, чтобы добавить новый сайт с OpenVPN серверами, необходимо выполнить 3 шага:
-
Создать py файл в директории src
-
В созданном ранее файле создать класс и унаследовать его от интерфейса AbcSite и переопределить три метода
from vpnabc import AbcSite class VPNExample(AbcSite): def __init__(self, workfolder: str) -> None: super().__init__(workfolder) def table(self) -> str: ... def update(self) -> None: ... def get_config(self, index: int) -> str: ...
-
Затем добавить созданный класс в список в файле vpnmgr.py
... class VPNManager: """ Менеджер, управляющий всеми парсерами """ # Список доступных сайтовс vpn серверами __vpn_parsers: Dict[str, AbcSite] = { 'vpngate': VPNGate(WORK_FOLDER), 'example': VPNExample(WORK_FOLDER) } ...