本帖最后由 鲲翔 于 2019-11-4 20:29 编辑
WireGuard在国外很火,国内没什么人讨论。其它它的正经用途很多,比如下面我介绍的在外面访问家里资源的需求。具体的介绍自己搜索,下面来说说设置。
首先说明,本次实验基于你家里的宽带有公网IP的前提下。
先用putty登陆你的路由器,装好相应软件:
- opkg update
- opkg install kmod-wireguard luci-app-wireguard luci-proto-wireguard wireguard wireguard-tools
复制代码
装好之后在,先产生两对密钥。一对是给自己用的,一对是给客户端用的。当然你也可以只生产一对,在另一台路由上再产生一对。但是不管怎么样,公钥是要给对方,填在对方的peer里面,私钥填在自己的接口里面。刚接触的时候一定要注意这一点。
- mkdir -p /etc/wireguard
- wg genkey | tee /etc/wireguard/server-privatekey | wg pubkey > /etc/wireguard/server-publickey
- wg genkey | tee client0-privatekey | wg pubkey > client0-publickey
复制代码 创建好了之后,用winscp登陆路由。进入/etc/wireguard,将server-publickey等几个密钥打开。server-publickey是要传给需要连接你路由的人,填在他的设备上的peer端。
如果你需要多个设备连到你的路由,则创建多对客户端密钥。多运行几次这个命令就行,注意数字变化。
- wg genkey | tee client1-privatekey | wg pubkey > client1-publickey
复制代码
创建好密钥后,准备工作做完了,下面在luci界面下操作。
“网络--->接口”这里添加一个接口
这里是将本路由作为服务端,因为本路由有公网IP,所以可以直接作为服务端。如果你家的宽带没有公网IP,需要用一个云主机作为服务端中转。
服务端的调置比较简单,只是设置好wg接口的IP就行了,还有监听端口。私钥填刚才生成的server-privatekey,server-publickey你要传给客户端,填在客户端peer里的公钥栏。
下面添加一个peer,peer就是客户端。其实严格来说,这个是不存在服务端,客户端的。双方的关系是对等的。如果你不填端点主机就是服务端,填了就是客户端,可以作为客户端访问对端的资源。当然如果你两边都有公网IP的话,两点都可以填端点主机,互为客户端。这里路由器作为手机的客户端,填刚才生成的客户端的公钥client0-publickey
服务端和客户端的配置配完了,下面配置一下防火墙
新建一个区域wg
允许转发
打开监听端口
请不要胡乱输入以及粘贴、复制等方式灌水
请尊重作者、并共同维护网站的正常阅读,否则账户将会被限制发帖、回帖,站内短信以及阅读权限等都会受到影响,谢谢。
具体限制方式:https://www.right.com.cn/forum/thread-8307840-1-1.html
|