PDA

Просмотр полной версии : Настройка VPN Wireguard на СПК107 (Не соединяется)



f_rzh
30.12.2020, 12:28
Дорогие коллеги, вопрос. Дано:
1) Контроллер
2) VPS сервер с wireguard VPN сервером
3) файлы конфигураций VPN для контроллера и для локальной машины с ключами и настройками (2 разных файла).
4) Примерное содержание файла конфигурации для контроллера:


[Interface]
Address = 10.10.210.13/24
DNS = 1.1.1.1
PrivateKey = приватныйКлюч

[Peer]
PublicKey = публичныйКлюч
PresharedKey = предварительныйКлюч
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = ааа.ддд.ррр.еее:порт
PersistentKeepalive = 25

5) аналогичный файл конфигурации (с другим ключом и IP интерфейса) для ПК

Проблема:
Параметры введены через web-конфигуратор контроллера в соответствии с инструкцией "Краткое описание основных функций Web-интерфейса
управления контроллеров Руководство пользователя Редакция 2.2.0", пункт 7.1.2.3 "Протокол «WireGuard VPN»". Добавлен параметр "предварительный ключ", вставлен из файла конфигурации. Контроллер не подключается к серверу VPN. ПК (windows) с этими же ключами и с этим же файлом конфигурации к VPN подключается.
Что вижу: через CLI вижу (ifconfig), что создан порт, что ему назначен адрес в соответствии с тем, что я указал в настройках в web-конфигураторе, что пакеты отправляются, но не приходят назад. Пинг сервера с контроллера показывает, что все пакеты потеряны. С тем же конфигом на ПК сервер пингуется. На всякий случай вручную добавил маршрут в сеть VPN, но это ничего не изменило. Подскажите, где копать?

melky
30.12.2020, 12:53
Не подскажу по wireguard но похожая беда была на l2tp. Windows подключался, а Linux нет...
Вот что написано про Wireguard
"Когда сервер расшифровывает корректно аутентифицированный пакет, проверяется его src поле. Если оно соответствует с конфигурацией allowed-ips аутентифицированного пира, то пакет принимается интерфейсом WireGuard."

Возможно не хватает параметра, по которому идет проверка, кроме IP адреса.
У вас в данном случае стоят все нули, типа кто попало, а надо прописывать что-то определенное ?

melky
30.12.2020, 12:56
Далее, нужно создать серверный конфиг /etc/wireguard/wg0.conf со следующим содержанием:


[Interface]
Address = 10.9.0.1/24
PrivateKey = $SERVER_PRIVKEY
[Peer]
PublicKey = $CLIENT_PUBKEY
AllowedIPs = 10.9.0.2/32

заметьте, там нет нулей, как у вас, а вероятно указан внутренний IP vpn сервера для сверки.

Хотя тут нули...

На клиентской машине, создать конфиг /etc/wireguard/wg0.conf:

[Interface]
PrivateKey = $CLIENT_PRIVKEY
Address = 10.9.0.2/24
[Peer]
PublicKey = $SERVER_PUBKEY
AllowedIPs = 0.0.0.0/0
Endpoint = 1.2.3.4:51820 # Внешний IP сервера
PersistentKeepalive = 25

Думаю надо смотреть логи на сервере, есть ли попытка подключения, если есть, почему отбрасывается...

Евгений Кислов
30.12.2020, 16:27
Добрый день.

1. Уточните, пожалуйста, версию прошивки контроллера.
2. Выложите скриншоты всех вкладок настроек Wireguard и интерфейса Ethernet.
3. Уточните контакты, по которым с вами можно будет связаться после праздников для получения дополнительной информации (можно на почту из подписи).

f_rzh
31.12.2020, 11:55
/etc/wireguard/ - такого пути нет у овена. Там каким-то другим способом сохраняется конфигурация. Когда выполнил wg syncconf с файлом конфигурации из которого удалил информацию об IP в VPN, тоннель поднялся. Но после перезагрузки контроллера не переподключился.

f_rzh
31.12.2020, 12:01
Добрый день, Евгений!
Прошивка SPK1.xxm01 1.2.0803.1220
Скриншоты могу сделать уже только после праздников. Мы уже на праздниках. Контакты сейчас скину.
С наступающим Новым годом!

melky
31.12.2020, 12:40
потом еще раз сделайте запуск vpn без перезагрузки СПК, если туннель поднимется, а после перезагрузки опять пропадет, скорее всего не успевает основной интерфейс подниматься до туннельного...

f_rzh
11.01.2021, 11:55
Всё оказалось куда проще. Я ошибся в адресе впн-сервера. Тоннель отлично поднимается и настраивается через web-интерфейс.