PPTP | linux PPTP VPN记录登陆信息
一、简介
pptpd的日志主要是在/var/log/messages,/var/log/pptpd.log等文件里面,但是仔细看了下并没有发现登陆信息,也就不清楚具体有哪些用户登陆上来了。
于是就看了一下pppd的man,里面发现了一些环境变量如:IPLOCAL, IPREMOTE等,经过测试发现 PEERNAME就是用户名,这样在/etc/ppp/ip-up和/etc/ppp/ip-down里面记录一下就可以了,另外没有发现用户的ip。后来发现pppd是spawn出一个子进程来控制pptpd连接的,子进程的命令行里面已经带有了用户的ip,经过多次试验,发现ip-up被调用的时候是有命令行参数的。
二、相关参数
PEERNAME: 用户名$1: 分配的ppp设备$4: VPN的IP$5: 分配的IP$6: 客户端IP
三、添加参数到ip-up和ip-down脚本
# vim /etc/ppp/ip-upecho "time: `date -d today +%F_%T` clientIP: $6 username: $PEERNAME device: $1 vpnIP: $4 assignIP: $5 status: connected" >> /var/log/pptpd1.log...# vim /etc/ppp/ip-downecho "time: `date -d today +%F_%T` clientIP: $6 username: $PEERNAME device: $1 vpnIP: $4 assignIP: $5 status: closed" >> /var/log/pptpd1.log
四、日志显示
# vim /var/log/pptpd1.logtime: 2014-04-15_13:44:53 clientIP: 10.20.104.39 username: clavinli device: ppp0 vpnIP: 10.14.36.46 assignIP: 192.168.1.10 status: connected