CentOS7编译OpenVPN2.5.10

尝试编译2.6.11(失败)

  1. 从官网下载源码https://github.com/OpenVPN/openvpn/releases/download/v2.6.11/openvpn-2.6.11.tar.gz
  2. 解压tar zxvf openvpn-2.6.11.tar.gz
  3. cd openvpn-2.6.11
  4. autoreconf -i -v -f
  5. ./configure
  6. 出现报错,要求libnl版本在3.4以上,但镜像源中的libnl最高版本只有3.2
  7. 下载3.4版本rpm包wget https://yum.oracle.com/repo/OracleLinux/OL8/baseos/latest/x86_64/getPackage/libnl3-3.4.0-4.el8.x86_64.rpm
  8. 安装rpm -ivh libnl3-3.4.0-4.el8.x86_64.rpm
  9. 发现文件冲突,卸载旧版后再次安装
rpm -e --nodeps libnl3-3.2.28-4.el7.x86_64
rpm -ivh libnl3-3.4.0-4.el8.x86_64.rpm
  1. 查询包配置路径pkg-config --variable pc_path pkg-config
  2. 找到配置文件libnl-3.0.pclibnl-genl-3.0.pc用vim打开版本号修改为3.4
  3. 再次运行./configure报错libcap-ng package not found
  4. yum install libcap-ng-devel
  5. 再次运行./configure报错No compatible LZ4 compression library found
  6. yum install lz4-devel lz4
  7. ./configure
  8. make报错,因为有未定义的宏,和dco有关,推测可能是因为centos7支持的libnl最高版本只有3.2.28,虽然下载了3.4.0但是系统不支持,放弃

编译2.5.10

  1. 把之前装的libnl卸掉重装,让版本退回去
yum remove libnl3
yum install libnl3
yum install libnl3-devel
  1. 验证版本pkg-config --modversion libnl-genl-3.0
  2. 拉2.5.10源码解压缩,配置
wget https://github.com/OpenVPN/openvpn/releases/download/v2.5.10/openvpn-2.5.10.tar.gz
tar zxvf openvpn-2.5.10.tar.gz
cd openvpn-2.5.10
./configure
  1. make && make install
  2. 验证版本openvpn --version
  3. cd ~/
  4. mkdir ovpn-server-config
  5. 环境配置看这篇文章,因为我已经配过了,就不赘述了。
  6. 生成证书和密钥
cd ovpn-server-config
/usr/share/easy-rsa/3.0.8/easyrsa init-pki
/usr/share/easy-rsa/3.0.8/easyrsa gen-req server nopass
/usr/share/easy-rsa/3.0.8/easyrsa sign server server
/usr/share/easy-rsa/3.0.8/easyrsa gen-dh
/usr/share/easy-rsa/3.0.8/easyrsa gen-req client nopass
/usr/share/easy-rsa/3.0.8/easyrsa sign client client
  1. vim server.conf之后写入服务端配置,不加赘述
  2. 运行客户端,尝试连接,成功。

遗留问题

  1. 2.5.10依然不支持tls1.3版本,新特性用不上
  2. udp方式连接校验有问题,尚未解决
  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值