Я хочу дать пользователям определенный объем трафика. Скажем, пользователь A
получает 1 ГБ и пользователя B
получите 5 ГБ.
У меня есть отличный скрипт, который регистрирует всю эту информацию, однако этот скрипт вызывается, когда пользователь отключается (client-disconnect
).
Теперь моя проблема в следующем: что, если пользователь A
использует 1 ГБ данных и просто никогда не отключается? Он сможет использовать тысячи ГБ. Есть ли способ периодически запускать определенный скрипт в OpenVPN (так что нет crontab
, поскольку OpenVPN передает переменные среды).
Я думаю, вам следует включить интерфейс управления на вашем сервере OpenVPN.
management 127.0.0.1 6001
Затем напишите программу, которую вы будете периодически запускать из cron или чего-то еще. Скрипт подключится к порту управления, выдаст status
, проанализируйте данные и сохраните их где-нибудь, чтобы вы могли использовать их в других сценариях, отключающих клиентов или предотвращающих доступ. Вы также можете выполнить отключение через порт управления.