背景
现在家庭局域网网络设备越来越多了,如何安全并且实时访问家里的局域网设备成了亟待解决的问题。目前一般访问家庭局域网有3种方式:
服务器中转。使用公网自建服务器或者免费服务器连入家庭内部网络,管理内部设备。俗称内网穿透,实现方式很多,N2N,ZeroTier 等等, 都属于这一类范畴。
远程桌面。利用向日葵,Teamviwer,ToDesk等等远程桌面进入内网,一般要求内网有一个常年在线的主机。
网络运营商外网IP。一般向你的运营商提出要求或者通过管理员设置你家的光猫能够获取外网IP地址,一般只要不重启路由器,IP地址是不会更改的。也可以使用DDNS技术绑定域名,解决重启路由后IP地址改变的问题。如何获取外网IP地址,方式很多,不同的运营商也有不同的处理办法,大家可以自行搜索解决办法,一但能够获取外网IP地址,你家的网络会有更多的玩法,还是非常值得的。
本次教程使用第三种方式。默认你家已经获取了外网IP,通过搭建wireguard VPN ,随时随地安全的访问家里的局域网。
说明
WireGuard是一个非常简单,快速和现代的虚拟专用网络,它利用了最先进的密码学。旨在比 IPsec更快,更简单,更精简。它比 OpenVPN 的性能要高得多,而且简单很多。WireGuard 被设计为一个通用虚拟专用网络,用于在嵌入式接口和超级计算机上运行,适用于许多不同的情况。它最初是为 Linux 内核发布的,现在是跨平台(Windows,macOS,BSD,iOS,Android)并且可以广泛部署。它目前正在进行大量开发,但它已经被认为是业内最安全,最易于使用和最简单的虚拟专用网络解决方案。现在WireGuard已经并入了Linux5.6及以后的内核。WireGuard的综合性能约是OpenVpn的4-5倍。
配置的时候一定要时刻记住这一句话:公钥要互换,私钥自己留。也就是openwrt的公钥一定要告诉客户端,客户端的公钥一定要告诉openwrt,openwrt的私钥和客户端的私钥不要告诉对方,同时好好保存千万不要泄露。记住这句话后面的配置你就会更清晰,不会晕。
WireGuard下载地址:https://www.123pan.com/s/M6RKVv-JNNad提取码:Wz9Z
配置
A.新增接口
登录openwrt
找到 网络-接口
3.点击添加新接口
新接口的名称输入一个名字,新接口的协议选择WireGuard VPN
点击提交
B.一般配置
提交后会自动进入接口一般配置界面,我们准备为其生成私钥
在windows开始菜单上右键-windows powershell,打开shell窗口(注意不是cmd窗口)
ssh命令连接你的路由器命令行
了解wg命令,WireGuard自带了密钥生成工具wg 使用wg+命令 即可获取密钥
我们会使用的命令是:
wg genkey:生成一个新的私钥并输出到标准输出(控制台)
wg pubkey:从标准输入(控制台)读取私钥并输出公钥到标准输出(控制台)
wg genpsk:生成一个共享key并输出到标准输出(控制台)。不过我们这个教程不用它。
使用wg命令生成私钥
复制生成的私钥,粘贴到一般设置中
设置监听端口为你的openwrt没有被占用的端口,我这里使用2001
设置IP地址为你局域网中没有使用过的网段的IP地址,我打算为WireGuard 使用192.168.40.0/24网段,所以我这里使用192.168.40.1/24 。
回到openwrt 接口wg0中,找到一般设置-防火墙设置 选择lan
点击保存并应用按钮
至此,openwrt的wg0接口已经设置完成了,同时wireguard服务端基本设置也已经配置完成了。
来源地址:https://blog.csdn.net/corosync/article/details/129056804