跟踪 OpenVPN 用户登录

跟踪 OpenVPN 用户登录

情况是每个用户登录都记录在日志文件中。每次服务器启动日志文件都会被删除并创建新的。有没有办法将用户登录记录到另一个文件或其他地方,这样当服务器启动时就不会破坏记录?

答案1

您可以--client-connect在您的server.conf

此指令允许您指定在客户端刚刚通过身份验证时运行的脚本。此指令调用的脚本将检索 openvpn 服务器为经过身份验证的用户设置的一些环境变量,例如:通用名称($common_name)和 IP 地址($ifconfig_pool_remote_ip

你的指令看起来应该是这样的:

client-connect /path/to/your/script.sh

还有script.sh

#!/bin/sh

user=$common_name
remote_ip=$trusted_ip
local_ip=$ifconfig_pool_remote_ip

echo $(date) $user $remote_ip $local_ip >>/path/to/your/logfile.log

指令--client-disconnect也存在,以防您想要跟踪客户端断开连接的时间。

更多相关信息请参见此处: https://openvpn.net/index.php/open-source/documentation/manuals/65-openvpn-20x-manpage.html

答案2

当然。

  1. 在 OpenVPN 配置中启用执行脚本(script-level指令,IIRC)。
  2. 编写一个脚本,将经过身份验证的客户端出示的证书中的规范名称 (CN) 记录到文件中或将其发送到任何其他事件注册系统。

相关内容