我想为用户提供一定数量的流量。假设用户A
获得 1 GB 和用户B
获得 5 GB。
我有一个很棒的脚本,可以记录所有这些信息,但是当用户断开连接时会调用这个脚本(client-disconnect
)。
现在,我的问题如下:如果用户A
用完了 1 GB 的数据并且从不断开连接怎么办?他将能够使用数千 GB。有没有办法在 OpenVPN 中定期运行特定脚本(因此没有crontab
,因为 OpenVPN 传递了环境变量)。
答案1
我认为你应该启用管理界面在您的 OpenVPN 服务器上。
management 127.0.0.1 6001
然后编写一个程序,定期从 cron 或其他程序运行。该脚本将连接到管理端口,发出命令status
,解析数据并将其存储在某个地方,以便其他脚本使用,从而断开客户端或阻止访问。您还可以通过管理端口发出断开连接命令。