• XSS.stack #1 – первый литературный журнал от юзеров форума

Статья Если не работает WireGuard "Получено 92 Б", решение на windows и kali linux

ERRORx1x

HDD-drive
Пользователь
Регистрация
28.09.2024
Сообщения
29
Реакции
5
Очень маленькая статья по поводу того, как починить WireGuard, если конфиг не коннектится и в "Получено" статично висит "92 Б".
Для того, чтобы это исправить, необходимо сначала отправить udp-пакет.
На всех осях:
в конфиге WG необходимо добавить строчку ListenPort и вписать туда любой не занятый порт
Код:
[Interface]
PrivateKey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ListenPort = 54123
Address = XXXXXXXXXXX
DNS = XXXXXXXXXX

[Peer]
PublicKey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
PresharedKey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
AllowedIPs = XXXXXXXXXXXXX
Endpoint = 123.123.123:55555
PersistentKeepalive = XXXXXXXXX

Я взял для примера рандомный 54123

После этого, на Windows:
нужно написать скрипт (можно в блокноте):
Код:
$wgListenPort = 54123
$wgIP = "ВАШ_IP_ENDPOINT"
$wgPORT = ВАШ_ПОРТ_ENDPOINT

$EndPoints = New-Object System.Net.IPEndPoint([System.Net.IPAddress]::Parse([System.Net.Dns]::GetHostAddresses($wgIP)), $wgPORT)
$Socket = New-Object System.Net.Sockets.UDPClient $wgListenPort
$SendMessage = $Socket.Send([Text.Encoding]::ASCII.GetBytes(":)"), 2, $EndPoints)
$Socket.Close()

должно получиться так:
Код:
$wgListenPort = 54123
$wgIP = "123.123.123"
$wgPORT = 55555

$EndPoints = New-Object System.Net.IPEndPoint([System.Net.IPAddress]::Parse([System.Net.Dns]::GetHostAddresses($wgIP)), $wgPORT)
$Socket = New-Object System.Net.Sockets.UDPClient $wgListenPort
$SendMessage = $Socket.Send([Text.Encoding]::ASCII.GetBytes(":)"), 2, $EndPoints)
$Socket.Close()

Далее перед тем как включать конфиг на WG, нужно вставлять этот скрипт в Windows PowerShell и только после этого включать конфиг, либо написать исполняемый или макрос или что вашей душе угодно)

На Kali linux:

устанавливаете ncat, после чего почти то же самое, как на винде, создаете txt файл, в него прописываете:
Код:
#!/bin/bash

wgListenPort=54123
wgIP="ВАШ_IP_ENDPOINT"
wgPort=ВАШ_ПОРТ_ENDPOINT

echo ":)" | ncat -u $wgIP $wgPort -p $wgListenPort

получается так:

Код:
#!/bin/bash

wgListenPort=54123
wgIP="123.123.123"
wgPort=55555

echo ":)" | ncat -u $wgIP $wgPort -p $wgListenPort

После этого сохраняете файл и переименовываете как вам удобно, но с расширением .sh, например sendudp.sh
Далее залетаете в консольку, прописываете chmod +x sendudp.sh
После выполняете скрипт командой ./sendudp.sh
После этого можете запускать конфиг ВГ sudo wg-quick up имяконфига
Готово!
Для больмень шарящих всё очевидно и понятно, но простым смертным может помочь.

Известные проблемы:
Если вы пытались подрубиться через порт без скрипта или произошла какая-либо ошибка, подождите 5-10 минут, пока разлочится порт.
Пока работает, как долго будет работать сказать не могу :\
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Это блок wireguard ркном.
Советую использовать AmneziaVPN с Xray + DNS в современном мире, простой wg уже давно устарел)
 
У меня интересная ситуация с одним хостом, ставлю вручную AM, понятно, что входы по сертам и паролям на хост, но если через userfriendly интерфейс коннектится - вываливается софтина amnezia с ошибкой 300 ssh, что очень странно. Хост доступен, но он не может законнектится. таймауты выставил и 20 секунд на коннект на хосте, абсолютно не влияет. Такое только на одном и вообще впервые.
Куда копать? Уже теория заговора на уме блокировка со стороны хостера отпечатка софтины. Не знаю. Буду рад, если кто-то подскажет решение. спасибо
Это блок wireguard ркном.
Советую использовать AmneziaVPN с Xray + DNS в современном мире, простой wg уже давно устарел)
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх