Если VPN-соединение перестало работать или не устанавливается: проверьте статус сервиса, доступность порта, маршруты и логи. Ниже приведён универсальный алгоритм диагностики для WireGuard и OpenVPN.
Применимо к:
✔ VPS
✔ Выделенные серверы
✔ WireGuard, OpenVPN
systemctl status wg-quick@wg0
Если сервис не запущен:
systemctl start wg-quick@wg0
systemctl status openvpn@server
Если сервис не запущен:
systemctl start openvpn@server
Убедитесь, что VPN-сервер слушает нужный порт:
ss -ulnp | grep 51820
Для OpenVPN (по умолчанию UDP 1194):
ss -ulnp | grep 1194
Если порт не отображается, сервис не запущен или использует другой порт. Проверьте конфигурацию.
Порт VPN должен быть открыт в firewall:
iptables -L -n | grep 51820
Если правила нет, добавьте:
iptables -A INPUT -p udp --dport 51820 -j ACCEPT
Для UFW:
ufw allow 51820/udp
Убедитесь, что IP-forwarding включён:
sysctl net.ipv4.ip_forward
Ожидаемый результат: net.ipv4.ip_forward = 1
Если значение 0, включите:
sysctl -w net.ipv4.ip_forward=1
Для сохранения после перезагрузки добавьте в /etc/sysctl.conf:
net.ipv4.ip_forward = 1
Без NAT клиенты VPN не получат доступ в интернет:
iptables -t nat -L POSTROUTING -v
Должно быть правило MASQUERADE для VPN-подсети. Если нет:
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE
Замените 10.0.0.0/24 на вашу VPN-подсеть, eth0 на основной сетевой интерфейс.
dmesg | grep wireguard
Для более подробного логирования:
echo module wireguard +p > /sys/kernel/debug/dynamic_debug/control
tail -50 /var/log/openvpn/openvpn.log
Или через journalctl:
journalctl -u openvpn@server --no-pager -n 50
Убедитесь, что клиент использует правильный IP-адрес и порт сервера.
Проверьте доступность порта с клиентской машины:
nc -zvu IP_СЕРВЕРА 51820
Если порт недоступен, проблема на уровне сети или firewall.
Проверьте статус пиров:
wg show
Если в поле latest handshake нет значения, клиент не может связаться с сервером. Проверьте:
После устранения проблемы проверьте подключение:
ping -c 4 10.0.0.1
Где 10.0.0.1 — адрес VPN-сервера в туннеле.
Проверьте, что трафик идёт через VPN:
curl ifconfig.me
IP-адрес должен соответствовать серверу VPN.
Если после всех проверок VPN не работает, откройте тикет в техническую поддержку. Укажите:
- тип VPN (WireGuard/OpenVPN)
- вывод команды systemctl status
- вывод ss -ulnp
- последние 50 строк логов