官网:https://github.com/znuh/frivpn
随着树莓派Pis,
ODROIDs和APUs 等便宜设备变得无处不在,他们经常被用做互联网的VPN网关。OpenVPN无法使用这些设备的全部流量,因为OpenVPN是单线程在运行,并且缺乏硬件加速的AES加密技术,所以经常会把一个CPU跑满。frivpn是一个多线程的、可以在多个(所有)CPU核心上运行的程序,从而实现了最大化的VPN带宽和吞吐量。
下表是一些设备上的数据对比:
Device
|
OpenVPN
|
frivpn
|
Comment
|
APU.1D
|
~30 Mbit/s
|
~60 Mbit/s
|
DualCore 1GHz AMD G series T40E
|
ODROID XU4
|
~24 Mbit/s
|
~80 Mbit/s
|
QuadCore 2GHz Cortex-A15
|
Raspberry Pi 3
|
~20 Mbit/s
|
~?? Mbit/s
|
QuadCore 1.2GHz Cortex-A53
|
Raspberry Pi 2
|
~15 Mbit/s
|
~?? Mbit/s
|
QuadCore 900MHz Cortex-A7
|
软件包安装
ArchLinux
# yaourt -S frivpn-git
源代码安装
安装依赖包
Debian (stretch)
# apt install build-essential cmake lua5.2 lua5.2-dev lua-posix lua-luaossl \
lua-cqueues lua-socket libssl-dev liblzo2-dev
Ubuntu 17.10 (artful)
# apt install build-essential cmake lua liblua5.2-dev lua-posix lua-luaossl \
lua-cqueues libssl-dev liblzo2-dev
ArchLinux
# yaourt -S cmake lua lua-posix lua-luaossl lua-cqueues openssl lzo
编译
$ git clone https://github.com/znuh/frivpn.git
$ mkdir frivpn/build
$ cd frivpn/build
$ cmake ..
$ make
运行
frivpn客户端需要一个配置文件作为第一个参数,有关配置参考configs目录的例子。
$ ./frivpn_client.lua configs/ipredatorTroubleshooting & Caveats
常见问题和注意事项
虽然frivpn通常与任何OpenVPN服务器都兼容,但它(当前)要求以下列方式配置服务器:
-
TCP协议(截至目前不支持UDP)
-
服务器证书,但没有客户端证书
-
用户名和密码验证
-
启用tls-auth
-
启用comp-lzo
-
密码AES-256-CBC
-
验证SHA1
如果你发现一个不支持frivpn的OpenVPN兼容服务?请在网站提交issue,让我们知道!
点击「
阅读原文
」直达官网
运维帮提供购买云主机大优惠
主流云厂商都已和运维帮达成战略合作,