openvpn2.14.2安装
#1、安装依赖包
sudo dnf install python3-pip cyrus-sasl libpcap lz4 mariadb-connector-c net-tools python3-cffi python3-idna python3-lxml sqlite unzip zip xmlsec1 xmlsec1-openssl dmidecode
#2、安装rpm服务包
rpm -ivh openvpn-as-bundled-clients-32-1.noarch.rpm
rpm -ivh openvpn-as-2.14.2_40b190d8-1.el9.x86_64.rpm
#3、备份pyovpn-2.0-py3.9.egg服务包
cp /usr/local/openvpn_as/lib/python/pyovpn-2.0-py3.9.egg{,.bak}
#4、将pyovpn-2.0-py3.9.egg服务包拷贝到当前目录,当前目录尽量的是个空目录,没有其它文件
cp /usr/local/openvpn_as/lib/python/pyovpn-2.0-py3.9.egg .
#5、解压文件
unzip -q pyovpn-2.0-py3.9.egg
#6、返回下一级目录
cd ./pyovpn/lic/
#7、重命名该文件
mv uprop.pyc uprop2.pyc
#8、编辑该文件, 文件内容如下注意排版不要出错
vi uprop.py
from pyovpn.lic import uprop2
old_figure = None
def new_figure(self, licdict):
ret = old_figure(self, licdict)
ret[‘concurrent_connections’] = 204800
return ret
for x in dir(uprop2):
if x[:2] == ‘__’:
continue
if x == ‘UsageProperties’:
exec(‘old_figure = uprop2.UsageProperties.figure’)
exec(‘uprop2.UsageProperties.figure = new_figure’)
exec(‘%s = uprop2.%s’ % (x, x))
#10、先将 uprop.py 编译为 Python 字节码文件,然后将编译后的 .pyc 文件(位于 __pycache__ 目录中)移动或重命名为 uprop.pyc
python3 -O -m compileall uprop.py && mv __pycache__/uprop.*.pyc uprop.pyc
#11、返回到最开始的目录
cd ../../
#12、./pyovpn、./EGG-INFO 和 ./common 目录下的所有文件递归地打包成为 pyovpn-2.0-py3.9.egg
zip -rq pyovpn-2.0-py3.9.egg ./pyovpn ./EGG-INFO ./common
#13、将打包好的新文件覆盖原始目录文件
mv ./pyovpn-2.0-py3.9.egg /usr/local/openvpn_as/lib/python/pyovpn-2.0-py3.9.egg
#14、重启服务
systemctl restart openvpnas