100 lines
7.6 KiB
Markdown
100 lines
7.6 KiB
Markdown
# Второе VPN-подключение (US) на Keenetic без смены маршрутов
|
||
|
||
Оба туннеля используют один и тот же адрес клиента **10.8.1.2**. Маршруты на роутере указывают на шлюз 10.8.1.2 — переключение DE/US делается включением/выключением нужного подключения в веб-интерфейсе.
|
||
|
||
---
|
||
|
||
## Что уже сделано
|
||
|
||
- На **US VPS** (147.45.124.117) в AmneziaWG добавлен peer с **AllowedIPs = 10.8.1.2/32** и публичным ключом роутера (тот же, что для DE). Контейнер перезапущен, peer активен.
|
||
|
||
---
|
||
|
||
## Параметры US-сервера (для конфига роутера)
|
||
|
||
| Параметр | Значение |
|
||
|----------|----------|
|
||
| Endpoint | 147.45.124.117:37135 |
|
||
| PublicKey сервера | SDjcBREvIXfuCOCISj4hk3gvYaM188IZcZNnWAuOclc= |
|
||
| PresharedKey | 8C4rE3PVqyi3FQD+zDjGzQ4W5Dju8T2uGhGF9yor1zc= |
|
||
| Адрес клиента | 10.8.1.2/32 (как у DE) |
|
||
|
||
**Параметры обфускации (asc)** на US-сервере сделаны **такими же, как на DE** — один набор для обоих подключений, вручную вводить один раз:
|
||
|
||
- Jc = 6, Jmin = 10, Jmax = 50
|
||
- S1 = 90, S2 = 62
|
||
- H1 = 1455064900, H2 = 852483043, H3 = 2078090415, H4 = 1981181588
|
||
|
||
---
|
||
|
||
## Конфиг клиента для роутера (шаблон)
|
||
|
||
Нужно подставить **PrivateKey** из текущего подключения **netcraze_amnezia** на роутере (тот же ключ, что и для DE — тогда публичный ключ совпадает и peer 10.8.1.2 на US уже привязан к нему).
|
||
|
||
Сохраните как `amnezia-us-router.conf` и загрузите в роутер через **Интернет → Другие подключения → Wireguard → Загрузить из файла**.
|
||
|
||
```ini
|
||
[Interface]
|
||
PrivateKey = ВСТАВЬТЕ_ПРИВАТНЫЙ_КЛЮЧ_ИЗ_netcraze_amnezia
|
||
Address = 10.8.1.2/32
|
||
Jc = 6
|
||
Jmin = 10
|
||
Jmax = 50
|
||
S1 = 90
|
||
S2 = 62
|
||
H1 = 1455064900
|
||
H2 = 852483043
|
||
H3 = 2078090415
|
||
H4 = 1981181588
|
||
|
||
[Peer]
|
||
PublicKey = SDjcBREvIXfuCOCISj4hk3gvYaM188IZcZNnWAuOclc=
|
||
PresharedKey = 8C4rE3PVqyi3FQD+zDjGzQ4W5Dju8T2uGhGF9yor1zc=
|
||
Endpoint = 147.45.124.117:37135
|
||
AllowedIPs = 0.0.0.0/0, ::/0
|
||
```
|
||
|
||
**Откуда взять PrivateKey:** в приложении AmneziaVPN он не показывается (только «Частный ключ установлен»). Варианты: (1) В веб-интерфейсе Keenetic откройте **Интернет → Другие подключения → Wireguard**, нажмите на строку **netcraze_amnezia** и проверьте, есть ли там поле приватного ключа или экспорт конфига. (2) После настройки доступа по SSH-ключу в Amnezia создайте на US-сервере нового пользователя, скачайте конфиг — в нём будет новая пара ключей; тогда на US-сервере нужно заменить peer 10.8.1.2 на новый публичный ключ из этого конфига и в конфиге прописать Address 10.8.1.2/32 — этот конфиг и загружать в роутер.
|
||
|
||
---
|
||
|
||
## Если при загрузке конфига ошибка про обфускацию
|
||
|
||
1. **Версия KeeneticOS** смотрится в **Управление → Обзор системы** («Об системе»), а не в версии компонента MDNS. Нужна именно строка вида **KeeneticOS 4.3.x** (или 4.2.x).
|
||
2. В **KeeneticOS 4.3.4+** параметры asc должны подхватываться из файла. Если ошибка всё равно есть — возможно, формат S3/S4 или H не поддерживается; тогда добавьте подключение **без** asc в файле и задайте asc вручную через CLI (см. ниже).
|
||
3. Для **KeeneticOS 4.3.3 и ниже** по [инструкции Amnezia](https://docs.amnezia.org/documentation/instructions/keenetic-os-awg/) после импорта конфига нужно вручную прописать asc в веб-CLI:
|
||
- **Управление → шестерёнка → Командная строка**
|
||
- `show interface` — найти имя интерфейса нового подключения (например Wireguard1).
|
||
- Выполнить (подставив имя интерфейса и значения asc из блока выше):
|
||
```text
|
||
interface Wireguard1 wireguard asc 6 10 50 90 62 1455064900 852483043 2078090415 1981181588
|
||
```
|
||
(Один набор asc для обоих подключений: Jc Jmin Jmax S1 S2 H1 H2 H3 H4.)
|
||
- `system configuration save`
|
||
|
||
---
|
||
|
||
## После добавления второго подключения
|
||
|
||
- В **Приоритеты подключений** можно добавить вторую политику с новым подключением (US) или оставить одну политику и переключать только активное подключение в ней.
|
||
- **Маршруты не менять**: все пользовательские маршруты по-прежнему с шлюзом **10.8.1.2**.
|
||
- **Включать только одно подключение**: либо **netcraze_amnezia** (DE), либо новое (US). Включённое подключение даёт интерфейс с адресом 10.8.1.2 — трафик по маршрутам пойдёт через него.
|
||
- Переключение: в **Другие подключения → Wireguard** выключить одно подключение и включить другое.
|
||
|
||
---
|
||
|
||
## Сводка по серверам
|
||
|
||
| Сервер | IP | Порт | Роутер (peer) |
|
||
|--------|-----|------|----------------|
|
||
| DE (текущий) | 185.103.253.99 | 33118 | 10.8.1.2, ключ HSgydyy... |
|
||
| US (новый) | 147.45.124.117 | 37135 | 10.8.1.2, тот же ключ |
|
||
|
||
При обновлении конфига Amnezia через приложение на US-сервере вручную добавленный peer 10.8.1.2 может пропасть; тогда его нужно снова добавить в `awg0.conf` в контейнере и перезапустить контейнер (или восстановить конфиг из бэкапа).
|
||
|
||
---
|
||
|
||
## Ошибка 300 (SshRequestDeniedError) в AmneziaVPN
|
||
|
||
Если на сервере отключён вход по паролю, приложение не сможет подключаться к серверу (создавать пользователей, менять настройки) и выдаст ошибку 300. **Решение:** в настройках сервера в AmneziaVPN указать аутентификацию по **SSH-ключу**: выбрать «Подключение по ключу» и указать ваш приватный SSH-ключ (тот же, которым заходите с Mac в `ssh root@...`). После сохранения создание пользователей и выдача конфигов снова работают. [Подробнее в документации Amnezia](https://m-docs-3w5hsuiikq-ez.a.run.app/troubleshooting/error-codes/#error-300-sshrequestdeniederror).
|