Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
vopono — Запускайте приложения через VPN-туннели с временными сетевыми пространствами имён | Kitploit
Инструменты/GitHubGitHub/jamesmcm/vopono
Сетевая безопасностьКонфиденциальностьУтилиты и фреймворки
GitHubjamesmcm/vopono

vopono

Запускайте приложения через VPN-туннели с временными сетевыми пространствами имён

Репозиторий
1.2k734421 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
![Логотип vopono](https://assets.kitploit.com/production/public/readmes/5265/aa672d08e07533568bf45fd05ddd36de42d564de81fc76add6e50226ae4617e7.png)

vopono — это инструмент для запуска приложений через VPN-туннели с использованием временных
сетевых пространств имён. Это позволяет запускать лишь несколько
приложений через разные VPN одновременно, в то время как ваше основное подключение
остаётся без изменений.

vopono включает встроенные аварийные выключатели (killswitch) как для Wireguard, так и для OpenVPN.

В настоящее время напрямую поддерживаются Mullvad, AzireVPN, MozillaVPN, ProtonVPN, iVPN,
NordVPN, AirVPN и PrivateInternetAccess; также поддерживаются пользовательские
конфигурационные файлы с помощью аргумента `--custom`.
Cloudflare Warp также поддерживается.

Для пользовательских подключений также поддерживаются протоколы OpenConnect и OpenFortiVPN
(например, для корпоративных VPN). Подробнее см. в [Руководстве пользователя vopono](https://github.com/jamesmcm/vopono/blob/master/USERGUIDE.md).

## Скриншот

Скриншот, показывающий пример с firefox, google-chrome-stable и
lynx, работающими через разные VPN-подключения:

![Скриншот](https://assets.kitploit.com/production/public/readmes/5265/c4898ce83b031c07d44c6a1cef68d645871c949f5b8653173b18afd459662def.png)

## Поддерживаемые провайдеры

| Провайдер                   | Поддержка OpenVPN | Поддержка Wireguard |
| ----------------------------- | --------------- | ----------------- |
| Mullvad                       | ❌              | ✅                |
| AzireVPN                      | ❌              | ✅                |
| iVPN                          | ✅              | ✅                |
| PrivateInternetAccess         | ✅              | ✅\*              |
| ProtonVPN                     | ✅\*\*          | ✅\*\*\*          |
| MozillaVPN                    | ❌              | ✅                |
| NordVPN                       | ✅              | ❌                |
| AirVPN                        | ✅              | ✅                |
| Cloudflare Warp\*\*\*\*       | ❌              | ❌                |
| Свой хостинг (--custom)       | ✅              | ✅                |

\* Пересылка портов поддерживается с помощью опции `--port-forwarding` и `--port-forwarding-callback` для запуска команды при обновлении порта.

\*\* См. [Руководство пользователя](https://github.com/jamesmcm/vopono/blob/master/USERGUIDE.md) для получения инструкций по аутентификации для генерации файлов конфигурации OpenVPN с помощью `vopono sync`. Необходимо скопировать заголовок аутентификации вида `AUTH-xxx=yyy`, где `yyy` — значение заголовка `x-pm-uid` из того же запроса при входе в систему в вашем веб-браузере.

\*\*\* Для ProtonVPN вы можете сгенерировать и загрузить отдельные файлы конфигурации Wireguard
и использовать их в качестве пользовательской конфигурации провайдера. Подробности см. в [Руководстве пользователя](https://github.com/jamesmcm/vopono/blob/master/USERGUIDE.md).
[Пересылка портов](https://protonvpn.com/support/port-forwarding-manual-setup/) поддерживается с помощью аргумента `--port-forwarding` как для OpenVPN, так и для Wireguard.
При использовании пользовательской конфигурации с Wireguard реализацию пересылки портов следует указать с помощью `--custom-port-forwarding`
(т.е. `--provider custom --custom xxx.conf --protocol wireguard --custom-port-forwarding protonvpn`). Должен быть установлен `natpmpc`.
Для OpenVPN необходимо сгенерировать файлы конфигурации OpenVPN, добавив `+pmp` к вашему имени пользователя OpenVPN, и выбрать серверы, поддерживающие эту функцию
(например, на момент написания статьи серверы в Румынии поддерживают её). Назначенный порт затем выводится в терминал, где был запущен vopono, — его следует указать в приложениях, которым он требуется.
Порт также можно передать пользовательскому скрипту, который будет выполнен
внутри сетевого пространства имён, через аргумент `--port-forwarding-callback`.

\*\*\*\* Cloudflare Warp использует собственный протокол. Установите и провайдера, и
протокол в значение `warp`. Обратите внимание: сначала необходимо зарегистрироваться с помощью `sudo warp-cli registration new`, затем один раз запустить `sudo warp-svc`, `sudo warp-cli connect` и `sudo warp-cli debug connectivity-check disable` вне vopono — после чего завершить `sudo warp-svc` без выполнения `sudo warp-cli disconnect`, чтобы при запуске происходило автоматическое подключение.
Пожалуйста, сначала убедитесь, что это работает, прежде чем пробовать использовать vopono.

Пересылка портов AirVPN поддерживается как возможность провайдера, но пересылаемые
порты в настоящее время должны настраиваться в клиентской зоне AirVPN; vopono не
резервирует и не переключает порты учётной записи AirVPN автоматически.

## Использование

Настройте файлы конфигурации VPN-провайдера:

```bash
$ vopono sync
```

Обратите внимание: при создании и загрузке новых пар ключей Wireguard может быть небольшая задержка
до момента, когда они станут доступны для использования (например, около 30-60 секунд на Mullvad).

Запустите Firefox через подключение AzireVPN Wireguard к серверу в
Норвегии:

```bash
$ vopono exec --provider azirevpn --server norway firefox
```

Вам следует запускать vopono от имени вашего пользователя (не используя sudo), поскольку он
сам выполнит повышение привилегий, когда это необходимо. Дополнительные сведения о
запуске в качестве службы systemd и т.п. см. в [Руководстве пользователя](https://github.com/jamesmcm/vopono/blob/master/USERGUIDE.md).

### Режим демона

Для более удобной работы запустите привилегированный демон от root и продолжайте использовать `vopono` как обычный пользователь. CLI автоматически пересылает запросы `exec` демону, если он запущен.

- Запустите один раз при загрузке через systemd: `sudo systemctl enable --now vopono`
- Или запустите вручную от root: `sudo vopono daemon`
- Явный эквивалент: `sudo vopono daemon start`; просмотреть его состояние можно с помощью
  `vopono daemon status --json`.
- Затем используйте vopono как обычно от вашего пользователя: `vopono exec --provider mullvad --server se firefox`

Готовый к копированию юнит systemd см. в [USERGUIDE.md](https://github.com/jamesmcm/vopono/blob/master/USERGUIDE.md).

vopono может обрабатывать до 255 отдельных сетевых пространств имён (т.е. разных подключений
к VPN-серверам — если ваш VPN-провайдер это позволяет). Команды, запущенные с
одним и тем же префиксом сервера и VPN-провайдером, используют одно и то же сетевое
пространство имён.

Параметры конфигурации по умолчанию можно сохранить в файле `~/.config/vopono/config.toml`,
например:

```toml
firewall = "NfTables"
provider = "Mullvad"
protocol = "Wireguard"
server = "usa-us22"
```

Обратите внимание, что значения чувствительны к регистру.

Более подробные инструкции по использованию (включая работу с демонами и серверами) см. в [Руководстве пользователя vopono](https://github.com/jamesmcm/vopono/blob/master/USERGUIDE.md).

## Установка

### AUR (Arch Linux)

Установите пакет `vopono-git` с помощью вашего любимого AUR-хелпера.

```bash
$ paru -S vopono-git
$ vopono sync
```

В качестве альтернативы используйте пакет `vopono-bin`, если не хотите компилировать
из исходного кода.

### Raspberry Pi (Raspbian)

Загрузите и установите пакет `vopono_x.y.z_armhf.deb` со
страницы релизов:

```bash
$ sudo dpkg -i vopono_0.2.1_armhf.deb
```

Вам потребуется установить OpenVPN (доступен в репозиториях Raspbian):

```bash
$ sudo apt install openvpn
```

После этого вы можете использовать vopono, как описано выше (обратите внимание: бинарный файл Chromium — это
`chromium-browser`):

```bash
$ vopono sync --protocol openvpn protonvpn
$ vopono exec --provider protonvpn --server sweden chromium-browser
```

Скриншот vopono с OpenVPN, работающим на Raspbian:

![Скриншот Raspbian](https://assets.kitploit.com/production/public/readmes/5265/7c00ae9eb8b7dde91ddc3966dd2c98f93ef14ee47e7b702fbbe52aaf4c837fca.png)

Обратите внимание: Wireguard отсутствует в репозиториях Raspbian, поэтому его установка
нетривиальна. Вы можете попробовать следовать [этому руководству](https://www.sigmdel.ca/michel/ha/wireguard/wireguard_02_en.html), но учтите, что
вам нужно установить не только Wireguard и `wireguard-tools`, чтобы был доступен `wg`,
но также и `linux-headers`, чтобы всё работало корректно
(т.е. чтобы при попытке установить соединение вы не получали просто ошибки `Protocol not supported`).

Подробности о пересылке портов и использовании vopono с демонами и серверами см. в [Руководстве пользователя](https://github.com/jamesmcm/vopono/blob/master/USERGUIDE.md), если вы хотите использовать ваш
Raspberry Pi для запуска privoxy или transmission-daemon и т.п.

### Debian + Ubuntu

Установите deb-пакет, предоставленный на странице релизов.

### Fedora + OpenSUSE

Установите rpm-пакет, предоставленный на странице релиза (выберите правильную
версию).

### Gentoo Linux

Установите `vopono` из основного репозитория.

```bash
$ emerge -av net-vpn/vopono
```

### Другие Linux

Либо используйте скомпилированные бинарные файлы на странице релизов, либо установите из
исходного кода с помощью Cargo, как описано ниже.

### Из этого репозитория (с помощью Cargo)

Запустите предоставленный скрипт установки: `install.sh` — он выполнит `cargo install` для репозитория и скопирует файлы конфигурации в
`~/.config/vopono/`

Обратите внимание: минимальная поддерживаемая версия Rust — 1.85 (требуется для edition 2024).
Проверить свою версию можно с помощью:

```bash
$ rustc --version
```

## Известные проблемы

- При запуске нового приложения в существующем пространстве имён vopono любые
  изменения правил межсетевого экрана (т.е. пересылка и открытие
  портов) не будут применены (они используются только при создании
  пространства имён). То же самое касается пересылки портов.
- Учётные данные OpenVPN всегда хранятся в конфигурации в открытом виде — возможно, будет добавлена
  опция, позволяющая не хранить учётные данные, но, похоже, OpenVPN требует их
  предоставления в открытом виде.
- Не существует простого способа удалить устройства MozillaVPN (пары ключей
  Wireguard) — в отличие от Mullvad, это _нельзя_ сделать на веб-странице. Я рекомендую использовать [MozWire](https://github.com/NilsIrl/MozWire) для управления ими.
- `gnome-terminal` не будет работать в сетевом пространстве имён из-за
  модели «клиент-сервер» — см. вопрос [#48](https://github.com/jamesmcm/vopono/issues/48)
- Пересылка портов изнутри сетевого пространства имён на хост (например,
  для запуска `transmission-daemon`) не работает корректно, когда vopono
  запускается от root — см. вопрос [#84](https://github.com/jamesmcm/vopono/issues/84)

## Лицензия

vopono распространяется под лицензией GPL версии 3.0 (или выше); см. файл LICENSE
или https://www.gnu.org/licenses/gpl-3.0.en.html

## Этимология

vopono — это произношение букв VPN на эсперанто.

Se vi ankaŭ parolas Esperanton, bonvolu serĉi min en la kanalo de
Discord de Rust Programming Language Community.

## Вклад

Если вы явно не укажете иное, любой вклад, намеренно отправленный
вами для включения в работу, будет лицензирован на условиях GPLv3 (или
выше) без каких-либо дополнительных условий.

Огромное спасибо [MozWire](https://github.com/NilsIrl/MozWire) от NilsIrl
за исследование API MozillaVPN.
Скачать инструмент