wg-bootstrap/README-ru.md
2023-07-22 21:29:41 +09:00

114 lines
5.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# wg-bootstrap
```sh
█░█░█ █▀▀ ▄▄ █▀ ▀█▀ ▄▀█ █▀█ ▀█▀
▀▄▀▄▀ █▄█ ░░ ▄█ ░█░ █▀█ █▀▄ ░█░
```
# Утилита обертка для wg-quick
Предоставляет удобный интерфейс командной строки для быстрого создания
конфигурационного файла интерфейса WireGuard без необходимости вручную
редактировать его текстовым редактором. А так же можно использовать для
создания интерфейса и его удаления
## Возможности
- Автоматическая проверка прав пользователя на запуск команд
- Создание конфигурационного файла интерфейса в интерактивном режиме
- Изменение AllowedIPs на лету
- Добавление AllowedIPs к уже созданным
- Автоматическое размещение конфигурационного файла в /etc/wireguard
- Чтение информации в конфигурационном файле
- Инициализация разных конфигурационных файлов и их запуск по имени
- Удаление конфигурационного файла
- Включение и отключение интерфейса с теми же ключами что и wg-quick
## Установка и обновление
### Зависимости
- GNU/Linux
- python3, желательно ^3.8.1
- wireguard или wireguard-tools
- wget для загрузки исполняемого файла
### Установка
- Загрузите последнюю версию из ветки main в локальную директорию на пути $PATH
```sh
sudo wget https://git.isptech.ru/ISPsystem/QuickAccess/raw/branch/main/wg_bootstrap/wg_start.py -O /usr/local/bin/wg-start && sudo chmod 775 /usr/local/bin/wg-start
```
> Не используйте sudo если пользователь является владельцем локальной директории например ~/.local/bin
>
> При необходимости измените стандартный путь /usr/local/bin/wg-start в двух местах команды выше на тот который нужен именно вам.
>
> Команда выше добавит флаг исполнения к команде wg-start автоматически
### Обновление
- Выполните загрузку повторно
> Ссылка всегда ведет на последнюю стабильную версию.
>
> После тега 0.1.0 ветка main содержит только стабильный релиз
## Использование
### Справка
```sh
usage: wg-start [-h] [-v] {init,cat,rm,add,replace,up,down} interface [allowedIPs]
CRUD WireGuard config file or UP/DOWN wg-interface
positional arguments:
{init,cat,rm,add,replace,up,down}
Action with interface
interface WG interface name (wg0, wg1, wgName etc...)
allowedIPs Set AllowedIPs must be a string
options:
-h, --help show this help message and exit
-v, --version show program's version number and exit
```
### Примеры
- Инициализация конфигурационного файла нового интерфейса wg0:
```sh
wg-start init wg0
```
- Инициализация (включение) интерфейса wg0
```sh
wg-start up wg0
```
- Удаление (отключение) интерфейса wg0
```sh
wg-start up wg0
```
- Прочитать конфигурационный файл интерфейса wg0
```sh
wg-start cat wg0
```
- Удалить конфигурационный файл интерфейса wg0
```sh
wg-start rm wg0
```
- Заменить AllowedIPS на 0.0.0.0/24 в конфигурационном файле интерфейса wg0
```sh
wg-start replace wg0 0.0.0.0/24
```
- Добавить к AllowedIPS 172.10.10.0/24 в конфигурационном файле интерфейса wg0
```sh
wg-start add wg0 172.10.10.0/24
```
- Добавить к AllowedIPS несколько IP в конфигурационном файле интерфейса wg0
```sh
wg-start add wg0 "172.10.11.0/24, 10.10.10.1/24, 192.168.1.1"
```
> Имя интерфейса может быть любым wg0 это просто пример, можно дать интерфейсу осмысленное название
>
> Можно добавлять любое количество интерфейсов, если такой интерфейс уже присутствовал он будет перезаписан!
### Приятного использования, друг и спасибо что дочитал до конца
## License
GNU GPL 3.0