WireGuard Ubuntu 上安装

$ sudo add-apt-repository ppa:wireguard/wireguard (Ubuntu 1910 之后不需要运行)
$ sudo apt install wireguard
$ sudo modprobe wireguard
$ sudo wg show

# 创建 Key Pair 
$ sudo -s
# cd /etc/wireguard; umask 077; wg genkey | tee privatekey | wg pubkey > publickey

服务器端,创建 /etc/wireguard/wg0.conf

[Interface]
PrivateKey = 私钥文本内容
# 服务器端 VPN VLAN 的 IP 地址,带掩码
# 确保 iptable 里面的 eth0 和自己使用的 网卡界面名一致
Address = 10.0.0.1/24, fd86:ea04:1115::1/64
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
SaveConfig = true

用 ufw 管理防火墙 ,并打开包转发

$ sudo ufw allow 22/tcp
$ sudo ufw allow 51820/udp
$ sudo ufw enable
$ sudo ufw status verbose
$ sudo wg-quick up wg0
$ sudo systemctl enable wg-quick@wg0
$ sudo wg show
$ cat << EOF >> /etc/sysctl.conf
net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
EOF
$ sysctl -p

以上为服务器配置完成,下面为客户端(可以是 Windows/Mac/iOS/Android等)创建配置文件:

先安装 qrencode 软件包, apt -y install qrencode,生成 png 文件发送给客户端扫码即可配置。

Todo: 部署客户端脚本

作者: 甬洁网络

--移动互联网&物联网技术提供商