71 lines
4.5 KiB
Markdown
71 lines
4.5 KiB
Markdown
|
|
# Подготовка
|
||
|
|
|
||
|
|
На рабочей станции, которая используется для запуска Profiler должны быть установлены пакеты:
|
||
|
|
|
||
|
|
- sshpass (для подключения к RouterOS)
|
||
|
|
- qrencode (для создания QR с настройкой клиента)
|
||
|
|
- jq (для корректной работы с JSON)
|
||
|
|
- wg (для создания ключей и не только)
|
||
|
|
|
||
|
|
## Если profiler используется для создания пользователей на RouterOS
|
||
|
|
|
||
|
|
1. Создать интерфейс WireGuard средствами MikroTik RouterOS
|
||
|
|
2. Скопировать имя интерфейса в файл конфигурации (config)
|
||
|
|
3. Скопировать информацию о ключах в файл конфигурации (config)
|
||
|
|
4. Убедиться, что имя WG интерфейса в файле конфигурации соответствует имени WG интерфейса в RouterOS
|
||
|
|
|
||
|
|
# Запуск
|
||
|
|
|
||
|
|
> Предполагается, что файл конфигурации полностью заполнен.
|
||
|
|
|
||
|
|
```bash
|
||
|
|
- create <name> <option> # Создать нового клиента
|
||
|
|
|
||
|
|
ВАЖНО: используйте --apply_ros для настройки нового WG Peer в RouterOS
|
||
|
|
|
||
|
|
- delete <id> # Удалить клиента передав его ID
|
||
|
|
- disable <id> # Отключить клиента передав его ID
|
||
|
|
- enable <id> # Активировать клиента передав его ID
|
||
|
|
- list # Отобразить список клиентов
|
||
|
|
- test # Проверяем, что подключение RouterOS выполняется
|
||
|
|
```
|
||
|
|
|
||
|
|
Команда для создания нового пользователя, включая настройку WG Peer в RouterOS:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
./profiler create demo --apply_ros
|
||
|
|
```
|
||
|
|
|
||
|
|
**ВАЖНО!** В процессе создания клиента появляются 3 файла:
|
||
|
|
|
||
|
|
- файл конфигурации для импорта на устройство клиента
|
||
|
|
- файл автоматической настройки через QR-код
|
||
|
|
- файл сценария RouterOS для создания пользователя
|
||
|
|
|
||
|
|
# Проверка
|
||
|
|
|
||
|
|
Успешное выполнение сценария приводт к тому, что:
|
||
|
|
|
||
|
|
- все файлы настроек созданы
|
||
|
|
- конфигурация нового пользователя применена к RouterOS
|
||
|
|
- создан файл реестра (JSON) в котором хранится информация о пользователе
|
||
|
|
- команда `list` содержит ID и IPv4 адрес созданного пользователя
|
||
|
|
|
||
|
|
# Глобальный файл настройки
|
||
|
|
|
||
|
|
> Ниже приводится полное описание всех мараметров конфигурационного файла
|
||
|
|
|
||
|
|
- `SERVER_INTERFACE` - позволяет передать имя интерфейса WireGuard, которое будет использоваться для управления конфигурацией (это может быть имя на уровне Linux Server или MikroTik RouterOS)
|
||
|
|
- `SERVER_PRIVATE_KEY` - приватный ключ сервера
|
||
|
|
- `SERVER_PUBLIC_KEY` - публичный ключ сервера
|
||
|
|
- `SERVER_PUBLIC_IP` - публичный IPv4 адрес сервера на котором WG слушает подключения
|
||
|
|
- `SERVER_PUBLIC_PORT` - порт на котором WG слушает подключения
|
||
|
|
- `SERVER_NETWORK` - CIDR подсети, из которой будут выделяться адреса клиентам WG, например 10.0.0.0/24
|
||
|
|
- `SERVER_ADDRESS` - IPv4 адрес интерфейса в нотации CIDR, например 10.0.0.1/24
|
||
|
|
- `DNS_SERVER` - IPv4 адрес DNS сервера, к которому будут обращаться клиенты
|
||
|
|
- `SERVER_MTU` - MTU интерфейса WG, который будет использован и на клиенте и на сервере
|
||
|
|
- `SERVER_CONFIG_PATH` - путь к рабочему файлу конфигурации демона WG в Linux, например: /etc/wireguard/wg1.conf
|
||
|
|
- `MT_HOST` - IPv4 адрес на котором RouterOS ожидает SSH подключение
|
||
|
|
- `MT_USER` - имя пользователя RouterOS
|
||
|
|
- `MT_PASSW` - пароль пользователя RouterOS
|