pptpd开启日志记录功能

1 开启pptp日志记录选项

编辑文件 /etc/ppp/options.pptpd
找到nologfd(表示不记录日志),将其注释掉
然后,增加一行 logfile /var/log/pptpd.log,记录日志到文件

2 vpn登录/断开时,增加自定义日志记录

vpn登录和断开的时候,会自动执行/etc/ppp/ip-up/etc/ppp/ip-down两个脚本,查看这两个脚本,会发现有这样一行
This file should not be modified -- make local changes to /etc/ppp/ip-up.local instead
也就是说这两个脚本不要修改,如果要添加自定义的功能,修改ip-up.localip-down.local脚本。

另外需要注意的是,上面的脚本被调用时是有命令行参数的,具体如下:

$PEERNAME: 用户名
$1: 分配的ppp设备
$4: VPN服务器的IP
$5: 分配给客户端的内网IP
$6: 客户端真实公网IP

知道了这些,下面的日志文件就很清晰了。
查看/etc/ppp/下并没有ip-up.local文件,新建一个,写入如下内容记录上线信息

echo "---------------Login---------------" >> /var/log/pptpd.log
echo "time: `date -d today +%F_%T`" >> /var/log/pptpd.log
echo "clientIP: $6" >> /var/log/pptpd.log
echo "username: $PEERNAME" >> /var/log/pptpd.log
echo "device: $1" >> /var/log/pptpd.log
echo "vpnIP: $4" >> /var/log/pptpd.log
echo "assignIP: $5" >> /var/log/pptpd.log

echo "-----------------------------------" >> /var/log/pptpd.log

保存后,执行 chmod +x ip-up.local 添加可执行权限;

同样/etc/ppp/下新建一个ip-down.local,写入如下内容记录下线信息

echo "---------------Logout---------------" >> /var/log/pptpd.log
echo "time: `date -d today +%F_%T`" >> /var/log/pptpd.log
echo "clientIP: $6" >> /var/log/pptpd.log
echo "username: $PEERNAME" >> /var/log/pptpd.log
echo "device: $1" >> /var/log/pptpd.log
echo "vpnIP: $4" >> /var/log/pptpd.log
echo "assignIP: $5" >> /var/log/pptpd.log
echo "-----------------------------------" >> /var/log/pptpd.log

保存后,执行 chmod +x ip-down.local 添加可执行权限。

3 重启pptpd

执行 systemctl restart pptpd 重启pptpd 服务。

标签: pptpd, ppp, vpn, 日志

添加新评论