Loading... > 本文的openwrt版本是,`HomeLede v2023.02.05 based on OpenWrt R23.2.14` > > 已经预装了Wireguard.(在状态tab里可以看到Wireguard状态,即为已经预装) ### 连接openwrt 使用SSH连接openwrt,或者直接在系统->TTYD终端login  ### 创建密钥 ```shell mkdir wg # 创建目录存放公钥私钥 cd wg # 进入文件夹 umask 077 # 配置创建密钥的权限 wg genpsk > sharekey # 创建预共享密钥 cat sharekey # 获取密钥复制保存 wg genkey | tee server_privatekey | wg pubkey > server_publickey # 创建服务端公钥和私钥 cat server_privatekey # 获取服务端私钥复制保存 cat server_publickey # 获取服务端公钥复制保存 wg genkey | tee ios_privatekey | wg pubkey > ios_publickey # 创建 IOS 客户端公钥和私钥 cat ios_privatekey # 获取 IOS 客户端私钥复制保存 cat ios_publickey # 获取 IOS 客户端公钥复制保存 ``` ### 配置openwrt上的Wireguard服务端 `登陆 OpenWRT - 网络 - 接口 - 添加新接口`  保存后编辑该接口 私钥为之前步骤的服务器私钥(`server_privatekey`) 端口是随意填的一个端口,填写该端口后需要去防火墙里进行端口转发,转发UDP即可 IP地址为:用于组网的地址,比如可以填`172.10.10.1/24``192.168.X.1/24`等等,这里以`192.168.2.1/24`为例,<div class="tip inlineBlock error"> 且注意不要和路由器的网段相同 </div>  防火墙:选择LAN即可  添加peer 点击添加,再选择预共享密钥,再点击右边的添加  公钥 - 填写上文获取的`IOS 客户端公钥` 预共享密钥 - 填写上文获取的`预共享密钥` 允许的 IP - 即表示为此 IcOS 客户端分配固定 IP , 本文示例为 `192.168.2.2/32` 勾选上路由允许的IP 持续 Keep-Alive - 填写 25 保存后返回接口处,点连接,重新连接一下  ### 创建客户端配置文件 创建后缀为`.conf`的配置文件,例如`wireguard.conf`,复制以下信息,并且修改对应的公私钥信息: ```shell [Interface] Address = 192.168.2.2/32 # 对应 IOS 客户段分配的 IP PrivateKey = XXXXX DNS = 192.168.100.1 # 本地的 DNS 服务器,比如你的路由器IP或者公有 DNS 服务器,例如: 8.8.8.8 [Peer] PublicKey = XXXXX AllowedIPs = 192.168.100.0/24, 192.168.2.0/24 # iPhone iPad 设置为 0.0.0.0/0 全局则模式. PresharedKey = XXX # 预共享密钥 Endpoint = xx.xxxxx.com:5555 # 你的DDNS域名和第一步开放的端口 PersistentKeepalive = 25 ``` 此时的配置文件是用于客户端的,所以`PrivateKey`则为 macOS 客户端的私钥,而`Peer`中的`PublicKey`则为 OpenWRT 的公钥. **请注意反向思考** ,`Endpoint`填写家中的 IP 或者 DDNS 域名和端口. AllowedIPs 值得注意的是`AllowedIPs`参数.针对不同场景和需求,此处可以配置不用的路由. 当此处为`0.0.0.0/0`时表示任意网络请求都经过 VPN 俗称全局 VPN , 由于 iPhone 同时只能有 1 个 VPN 软件在线,所以当 `WireGuard` 启动时,其他类似`Quanx`,`小火箭`等软件则无法使用,此时 iPhone 可以全局 VPN 使用家中的网络来访问一些外网. IOS app store搜索wireguard,把conf文件传到手机,导入即可连接 最后修改:2024 年 01 月 04 日 © 允许规范转载 打赏 赞赏作者 支付宝 赞 0 如果觉得我的文章对你有用,请随意赞赏