wireguard是大约2年前出来的最新的VPN技术,与其他vpn技术不同的是,该技术已经进入了最近的linux内核,也就是说该技术可以直接通过内核调用执行,性能上远超其他VPN技术,在传输层,该技术采用的udp协议传输,对于nat后的vpn有着较好的支持。小沃最近研究了下该技术,发现配置难度远低于上一篇介绍的IKEv2,并且由于客户端可以指定端口,对端口封锁也可以很好的应对。
下面就介绍下该VPN技术的具体安装以及使用方法。
下面小沃以目前用到的openwrt作为服务器端,debian作为客户端来讲解。
服务端:
一、安装
opkg update opkg install wireguard-tools luci-app-wireguard
安装完后最好重启下openwrt。
二、配置服务器端
openwrt菜单栏->network->interfaces
三、创建wireguard协议的接口
四、配置服务器端的私钥,监听端口以及ip。
五、配置客户端的公钥以及ip
六、保存,重启接口
客户端:
一、安装
对于内核版本高于5.6的linux系统
apt-get install wireguard
对于内核版本高于4.0但是低于5.6的linux系统
apt-get install wireguard wireguard-tools wireguard-dkms
二、创建密钥
wg genkey | tee client.key | wg pubkey > client.csr cat client.key cat client.csr
其中client.key为私钥,client.csr为公钥。公钥的内容需要填到服务端的第五步去,私钥找个地方保存,如/etc/wireguard/wg-private.key。
三、创建端口
创建端口中三条是常规的ip命令。
ip link add wg0 type wireguard
ip addr add 192.168.23.85/24 dev wg0
wg set wg0 private-key /etc/wireguard/wg-private.key
wg set wg0 peer HgGXMe5dSkeNk2s8viSaWZI7si8= allowed-ips 192.168.23.0/24,192.168.87.0/24 endpoint serveraddress:53232
ip link set wg0 up
其中192.168.23.85为当前地址,192.168.87.0为设备连接着的另一端的网段,HgGXMe5dSkeNk2s8viSaWZI7si8=为服务端公钥,53232为服务端的端口。
剩下的根据自己的需求设置路由即可,可查看小沃的其他文章关于配置静态路由这节。
文章作者:沃航科技