差别
这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
digi:arm-embedded:linux:dey:pvpn [2024/01/16 09:38] – 创建 robin | digi:arm-embedded:linux:dey:pvpn [2024/01/23 11:21] (当前版本) – robin | ||
---|---|---|---|
行 1: | 行 1: | ||
====如何在DEY系统中使用pvpn==== | ====如何在DEY系统中使用pvpn==== | ||
- | peyoot/ | + | peyoot/ |
+ | |||
+ | 下面介绍如何编译pvpn支持的DEY系统固件: | ||
+ | |||
+ | 假定您的DEY-AIO安装在~/ | ||
+ | < | ||
+ | cd ~/ | ||
+ | mkdir mycc_pvpn | ||
+ | cd mycc_pvpn | ||
+ | source ../ | ||
+ | source ../ | ||
+ | bitbake < | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | 1. 开启内核配置选项TUN/ | ||
+ | |||
+ | 默认地,该内核选项是关闭状态,编译出的基础镜像并不带TUN/ | ||
+ | < | ||
+ | bitbake -c menuconfig virtual/ | ||
+ | </ | ||
+ | 在选项卡中,启用下面的选项,找到这个项Enable Device Drivers -> Network device support -> Universal TUN/TAP device driver support,用空格来选择,M表示编译成可加载的内核模块,*表示直接编译进内核。这里以编译成内核模块为例,保存并退出。然后执行: | ||
+ | < | ||
+ | bitbake virtual/ | ||
+ | </ | ||
+ | 编译结束后,可以检查~/ | ||
+ | 我们需要接着编译出镜像 | ||
+ | < | ||
+ | bitbake core-image-base 或是其它SOM所支持的镜像 | ||
+ | </ | ||
+ | |||
+ | 这样,就把支持TUN/ | ||
+ | |||
+ | 2. 编译pvpn所需的软件包 | ||
+ | 虽然我们已经编译出修改过内核配置的固件,但该固件并没有带有pvpn所需的相关软件包,我们还需要在conf/ | ||
+ | |||
+ | 默认地,DEY系统并没有安装好pvpn所需的相关依赖包,您可以在conf/ | ||
+ | |||
+ | IMAGE_INSTALL: | ||
+ | |||
+ | 这样,就生成了带有pvpn支持的DEY系统镜像。DEY-AIO项目整合了一个发布脚本,可以帮您迅速创建卡刷包,请到dey4.0目录下执行publish.sh脚本,根据提示选项项目,然后一路回车,卡刷包会在release目录内生成。 | ||
+ | |||
+ | 3. 用卡刷的方式来刷入固件 | ||
+ | 在uboot开始上电时,按任意键停在uboot界面,然后执行 | ||
+ | < | ||
+ | run install_linux_fw_sd | ||
+ | </ | ||
+ | < | ||
+ | |||
+ | 如果image-name没有设置,或是默认镜像和你编译的镜像名不一致,则可以设置image-name再进行卡刷: | ||
+ | < | ||
+ | setenv image-name core-image-base 或 setenv image-name dey-image-qt | ||
+ | saveenv | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | 刷好固件后,进入板子的linux,在/ | ||
+ | |||
+ | 4. 运行pvpn安装脚本 | ||
+ | pvpn的DEY版本支持目前仅支持openvpn客户端模式,仅管tun/ | ||
+ | |||
+ | PVPN需要一台有公网IP地址的云服务器作为服务端,请确保您已经在服务端运行pvpn的安装脚本安装好openvpn的服务端,开放8000和8443端口,然后在客户端的板子运行: | ||
+ | < | ||
+ | install_vpn.sh | ||
+ | </ | ||
+ | 根据提示输入服务端的IP地址,然后其它选项一路回车即可安装好。然后我们可以通过date或是timedatectl来检查是否已经更新为正确的时间。 | ||
+ | |||
+ | |||
+ | 5. 开启pvpn的openvpn服务 | ||
+ | < | ||
+ | systemctl start openvpn-client@client | ||
+ | </ | ||
+ | |||
+ | 6. 修改某个接口的DNS | ||
+ | |||
+ | 如果您已经使用pvpn, | ||
+ | |||
+ | 查询当前所有的DNS服务器: | ||
+ | < | ||
+ | systemd-resolve --status | ||
+ | </ | ||
+ | 设置某个接口的DNS,如wlan0 | ||
+ | < | ||
+ | systemd-resolve --interface=wlan0 --set-dns=8.8.8.8 | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
- | 默认地,peyoot/ | ||
- | wget https:// | ||