Рассмотрим возможность логирования подключений и отключений пользователей на VPN-сервере ocserv.
Предполагается, что у вас уже установлен и настроен ocserv для работы в качестве VPN-сервера.
1. Создадим файл `/etc/ocserv/connect.sh`, который будет выполнять логирование подключений VPN-пользователей со следующим содержимым:
#!/bin/bash
echo "$(date) [info] User ${USERNAME} Connected - Server: ${IP_REAL_LOCAL} VPN IP: ${IP_REMOTE} Remote IP: ${IP_REAL} Device: ${DEVICE}" >> /var/log/ocserv/users.log
2. Создадим файл `/etc/ocserv/disconnect.sh`, который будет выполнять логирование отключений VPN-пользователей со следующим содержимым:
#!/bin/bash
echo "$(date) [info] User ${USERNAME} Disconnected - Bytes In: ${STATS_BYTES_IN} Bytes Out: ${STATS_BYTES_OUT} Duration: ${STATS_DURATION}" >> /var/log/ocserv/users.log
3. Создадим директорию для логов и сделаем скрипты исполняемыми:
mkdir /var/log/ocserv
chmod +x /etc/ocserv/connect.sh
chmod +x /etc/ocserv/disconnect.sh
4. Подключаем скрипты в основной конфигурационный файл `/etc/ocserv/ocserv.conf`:
connect-script = /etc/ocserv/connect.sh
disconnect-script = /etc/ocserv/disconnect.sh
5. После внесения изменений проверим конфиг на наличие ошибок, а затем перезапустим службу:
ocserv -t
systemctl restart ocserv