WireGuard是新一代VPN协议,目前已经支持Linux, macOS, Android, iOS以及OpenWrt平台。使用了最先进的加密技术(利用Curve25519进行密钥交换,ChaCha20和Poly1305用于数据认证,BLAKE2用于散列),安全性毋庸置疑。WireGuard使用UDP协议传输数据。这里推荐一键安装方式建立服务器端,过程非常简单。
以Debian10.1系统为例,先用Bitvise SSH Client登入远端主机,打开终端。然后输入下面命令下载安装脚本:
curl -O https://raw.githubusercontent.com/vpn69/vpn/main/wireguard-install.sh
赋予执行权限:
chmod +x wireguard-install.sh
执行脚本安装WireGuard:
./wireguard-install.sh
按任意键继续安装:
如上图,安装到这里时,提示输入客户端名称,示例为vpn1,回车。
如上图,出现客户端配置文件二维码,手机扫描后保存备用。
如上图,安装过程完成。查看VPN状态:
systemctl status wg-quick@wg0
如上图,已经启动了VPN。如果显示的不是绿色的 “active”,而是红色的 “failed” , 是没有成功启动,那么需要重启一下系统:
reboot ///回车
系统重启后Bitvise SSH Client远端连接会断开,再从新连接到远端并查看VPN状态,确认是否已成功启动了VPN。
下面是几个相关命令 (备用):
systemctl start wg-quick@wg0 # 启动VPN
systemctl stop wg-quick@wg0 # 停止VPN
systemctl restart wg-quick@wg0 # 重启VPN
wg # 查看wg0接口设置 (尤其是查看端口listening port是多少)
ip a show wg0 # 查看wg0接口的IP地址
配置文件 wg0-client-vpn1.conf (所在的路径:/root) 可以下载下来:
防火墙设置:安装过程中会自动生成一个服务器端口,前面示例中是65323(你自己安装的要用 wg 命令查看是多少),所以要在防火墙中打开这个端口。用下面命令编辑设置:
nano /etc/iptables/rules.v4
加入一行设置:
-A INPUT -p udp -m udp --dport 65323 -j ACCEPT
Ctrl+X保存修改和退出。用下面命令载入规则:
/etc/init.d/netfilter-persistent reload
客户端下载安装请看: WireGuard客户端