Ошибка handshake failed при подключении к WireGuard серверу как исправить
Рейтинг: 81.5% · 80 голосов
Войдите, чтобы голосовать
Голосовать «За» и «Против» могут только авторизованные пользователи. Войдите в свой аккаунт — или зарегистрируйтесь, это займёт минуту.
Нет аккаунта? Зарегистрироваться
- devbyte8767
- Сообщения: 13
- Зарегистрирован: Пн май 11, 2026 6:54 am
Ошибка handshake failed при подключении к WireGuard серверу как исправить
Поднял WireGuard на VPS (Debian 12), на клиенте Windows 10 конфиг добавил, нажимаю подключиться — статус показывает «Handshake: Never» и интернет через туннель не идёт. Firewall на VPS вроде настроил, порт открыл. Логи клиента особо ничего не говорят. Что проверить в первую очередь?
✔ Лучший ответ выбран автором темы — fedor526
У меня была точно такая же ситуация — оказалось что хостер блокирует нестандартные UDP порты на своей стороне, и это не отображается в iptables сервера. Решил переключением на порт 53 (DNS) или 443 — их обычно не трогают. В конфиге сервера меняешь `ListenPort`, в конфиге клиента меняешь порт в `Endpoint`, не забудь пересоздать правило файрвола для нового порта.
✔ Лучший ответ сформирован автоматически — rodion_cache15
Это классика, разберём по шагам. Первое и самое частое — неправильные ключи. Убедись что в конфиге сервера в секции [Peer] стоит ПУБЛИЧНЫЙ ключ клиента, и наоборот — в конфиге клиента в [Peer] стоит публичный ключ сервера, не приватный. Звучит банально, но половина проблем именно отсюда. Публичный ключ генерится из приватного командой `wg pubkey < privatekey`.
- rodion_cache15
- Сообщения: 2
- Зарегистрирован: Пт май 15, 2026 1:31 am
Re: Ошибка handshake failed при подключении к WireGuard серверу как исправить
✔ Лучший ответ — сформирован автоматически
Это классика, разберём по шагам. Первое и самое частое — неправильные ключи. Убедись что в конфиге сервера в секции [Peer] стоит ПУБЛИЧНЫЙ ключ клиента, и наоборот — в конфиге клиента в [Peer] стоит публичный ключ сервера, не приватный. Звучит банально, но половина проблем именно отсюда. Публичный ключ генерится из приватного командой `wg pubkey < privatekey`.
Re: Ошибка handshake failed при подключении к WireGuard серверу как исправить
Второе — UDP-порт. WireGuard работает только на UDP. Проверь: `ss -ulnp | grep 51820` на сервере (или какой порт у тебя). Если пусто — демон не запущен или слушает на другом порту. Потом проверь файрвол: `iptables -L -n | grep 51820` или `ufw status`. Для ufw: `ufw allow 51820/udp`. Для iptables: `iptables -A INPUT -p udp --dport 51820 -j ACCEPT`.
- mllinux3113
- Сообщения: 2
- Зарегистрирован: Пн май 11, 2026 2:32 pm
Re: Ошибка handshake failed при подключении к WireGuard серверу как исправить
Третья распространённая причина — IP-форвардинг не включён на сервере. Проверь: `sysctl net.ipv4.ip_forward` — должно быть 1. Если 0, то: `sysctl -w net.ipv4.ip_forward=1` для текущей сессии и добавь `net.ipv4.ip_forward=1` в /etc/sysctl.conf для постоянного эффекта. Без этого клиент подключится, но трафик в интернет не пойдёт.
Re: Ошибка handshake failed при подключении к WireGuard серверу как исправить
Ещё момент: если VPS находится за NAT (у некоторых хостеров бывает), в конфиге сервера в секции [Interface] адрес должен быть внутренним IP машины, а не внешним. Внешний IP прописывается в конфиге клиента в Endpoint. Проверить внешний IP: `curl ifconfig.me`. Сетевой интерфейс сервера: `ip addr show`.
- ruslan_ml61
- Сообщения: 33
- Зарегистрирован: Вс май 10, 2026 8:57 pm
Re: Ошибка handshake failed при подключении к WireGuard серверу как исправить
Для диагностики в реальном времени: на сервере запусти `wg show` — покажет все пиры и когда был последний handshake. Если время handshake не обновляется после попыток подключения — пакеты вообще не доходят до сервера (проблема с файрволом или сетью). Если обновляется но трафик не идёт — проблема с маршрутизацией или форвардингом.
Re: Ошибка handshake failed при подключении к WireGuard серверу как исправить
✔ Лучший ответ — выбран автором
У меня была точно такая же ситуация — оказалось что хостер блокирует нестандартные UDP порты на своей стороне, и это не отображается в iptables сервера. Решил переключением на порт 53 (DNS) или 443 — их обычно не трогают. В конфиге сервера меняешь `ListenPort`, в конфиге клиента меняешь порт в `Endpoint`, не забудь пересоздать правило файрвола для нового порта.
Поделиться темой:
✈ Telegram
VK
- Похожие темы
-
- WireGuard режут DPI за минуту, перешёл на VLESS+Reality — делюсь граблями
16 ответов · 744 просмотров
-
- TypeScript ошибка Type string is not assignable to type never как исправить
6 ответов · 19 просмотров
-
-
- WireGuard хранит IP на сервере — это реально проблема приватности или хайп?
6 ответов · 16 просмотров
-
-
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость