WireGuard `wg-quick up` 掛在 `ip link add $profile typewireguard` 上

WireGuard `wg-quick up` 掛在 `ip link add $profile typewireguard` 上

多年來我一直是 WireGuard 的快樂用戶,從未遇到任何問題。今天,似乎沒有任何原因,我開始遇到問題。

wg-quick up $profile以 root 身份運行,並且該終端會話被鎖定(ctrl+c/d 等不會殺死它)。唯一的輸出是[#] ip link add $profile type wireguard.

這是我的配置:

PrivateKey = $privatekey
Address = 10.19.49.3/24,fd9d:bc11:4021::3/48
DNS =  172.16.0.1 

[Peer]
PublicKey = $publickey
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = $ipaddress:$port
PersistentKeepalive = 25

(明顯填寫了 $variables)

我查了一下,dmesg但其中一次都沒有提到wireguard/ 。wg

我應該如何進行?我沒有看到--verbose上的選項wg-quick。調試這個的好方法是什麼?


這是進程列表:

root      432947  0.0  0.0  17000  7772 pts/5    S+   10:17   0:00 sudo wg-quick up $profile
root      432948  0.0  0.0   8060  4244 pts/5    S+   10:17   0:00 /bin/bash /usr/bin/wg-quick up $profile
root      925699  0.0  0.0      0     0 pts/5    Z+   10:58   0:00 [wg-quick] <defunct>

附加到sudo wg-quick $profile up進程(432947):

[#0] 0x7f96c084b34f → ppoll()
[#1] 0x7f96c099d169 → sudo_ev_loop_v1()
[#2] 0x563081408861 → add eax, 0x1
[#3] 0x56308140261c → xor r8d, r8d
[#4] 0x5630813eeb38 → mov ebx, eax
[#5] 0x7f96c0772310 → __libc_start_call_main()
[#6] 0x7f96c07723c1 → __libc_start_main_impl()
[#7] 0x5630813eeda5 → hlt 

附於[wg-quick] <defunct>(925699):

warning: process 925699 is a zombie - the process has already terminated
ptrace: Operation not permitted.

注意:我丟失了伺服器的 SSH 金鑰,因此無法從該端進行調試,但 SSH pubkey 被拒絕訊息確認伺服器確實仍在運行。

編輯:我剛剛測試過,如果我在手機上使用相同的 WireGuard 配置,伺服器就可以工作。我該如何調試這個客戶端?

答案1

首先,Table = off在 下方新增選項[Interface]。由於您的allowips 為0.0.0.0/0,因此預設閘道可能會變更為wireguard 伺服器,這會導致您的情況失去ssh 控制。

使用Table = off選項,您可能可以在啟動 wg-quick 後重新獲得 shell 提示字元。然後你可以試試ping、traceroute等網路工具看看問題出在哪裡。

相關內容