Wireguard
Alpine 上的 Wireguard:啟動後自動掛載 wg0
我在 Alpine 伺服器上安裝了一個wireguard。它正在工作,但是當我重新啟動伺服器時,我必須手動執行 wg-quick up wg0
wireguard:~# wg show wireguard:~# wg-quick up wg0 [#] [#] ip link add wg0 type wireguard [#] wg setconf wg0 /dev/fd/63 [#] ip -4 address add 10.6.6.1/24 dev wg0 [#] ip link set mtu 1420 up dev wg0 [#] ip -6 route add fd9f:6666::1/128 dev wg0 [#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE wireguard:~# wg show interface: wg0 public key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= private key: (hidden) listening port: 51820 peer: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= preshared key: (hidden) endpoint: xx.xx.xx.xx:49323 allowed ips: fd9f:6666::1/128, 10.6.6.2/32 latest handshake: 2 seconds ago transfer: 7.05 KiB received, 6.31 KiB sent wireguard:~#
wireguard:~# cat /etc/modules af_packet ipv6 wireguard wireguard:~# cat /etc/wireguard/wg0.conf # Updated: 2021-11-29 22:52:22.801259882 +0000 UTC / Created: 2021-11-29 19:52:59.17510794 +0000 UTC [Interface] Address = 10.6.6.1/24 ListenPort = 51820 PrivateKey = xxxxxxxxxxxxx= PreUp = PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE PreDown = PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE [Peer] ...
我的錯誤在哪裡?
感謝賈斯汀路德維希的回答。我沒有測試您的解決方案,因為我已經設法解決了我的問題,修改
/etc/network/interfaces
如下:auto wg0 iface wg0 inet static address 10.6.6.1 netmask 255.255.255.0 post-up wg-quick up /etc/wireguard/wg0.conf post-down wg-quick down /etc/wireguard/wg0.conf
沒有錯誤,你只需要為它設置一個OpenRC服務。在以下位置創建一個這樣的初始化腳本
/etc/init.d/wg-quick
:#!/sbin/openrc-run description="WireGuard Quick" depend() { need localmount need net } start() { wg-quick up wg0 } stop() { wg-quick down wg0 }
然後執行以下命令為預設執行級別啟用它:
rc-update add wg-quick default