Дано:
для доступа к внутренней сети с машин под Win поднят VPN-сервер на CentOS
используется pptp (pptpd) и l2tp (xl2tpd)
авторизация пользователей и присвоение им адресов при подключении сделаны через файл /etc/ppp/chap-secrets
который выглядит примерно так:
# client server secret IP addresses
user1 vpnserv aaaaa 192.168.100.8
user2 vpnserv bbbbb 192.168.100.9
user3 vpnserv ccccccc 192.168.100.10
все работает, с одним неприятным "но":
если с двух разных компьютеров установить VPN-подключение с одинаковым логином-паролем, то оно устаналивается с обоих.
после чего в системе заводится два интерфейса pppX с одинаковым IP-адресом.
неважно, оба подключаются по pptp, по l2tp или один так другой этак (сосбтвенно авторизация и назначение адресов производит уже pppd, как я понимаю)
при этмо ситуации такие реально встречаются и после этого, естественно, возникают проблемы.
вот так примерно это выглядит (смоделирована ситуация - с двух разных машин с адресами 192.168.11.169 и 192.168.23.199 по pptp подключились пользователи с одним и тем же логином user2 ):
процессы pppd
/usr/sbin/pppd local file /etc/ppp/options.pptpd 115200 ipparam 192.168.23.199 plugin /usr/lib/pptpd/pptpd-logwtmp.so pptpd-original-ip 192.168.23.199
/usr/sbin/pppd local file /etc/ppp/options.pptpd 115200 ipparam 192.168.11.169 plugin /usr/lib/pptpd/pptpd-logwtmp.so pptpd-original-ip 192.168.11.169
интерфейсы pppX:
ppp0 Link encap:Point-to-Point Protocol
inet addr:192.168.100.1 P-t-P:192.168.100.9 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1396 Metric:1
ppp1 Link encap:Point-to-Point Protocol
inet addr:192.168.100.1 P-t-P:192.168.100.9 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1396 Metric:1
Вопрос:
можно как-то этого избежать?
т.е. сделать так, чтобы когда один пользователь уже авторизовался с логином-паролем из chap-secrets - не давать этого сделать второму (ну или "убивать" первого при логине второго).
или это неустранимо?
при авторизации через внешний radius это делается, но задачка уж слишком простая (пустить пяток пользователей во внутреннюю сеть), не хочется ради нее radius отдельно поднимать-настраивать. Использование pptp/l2tp - достаточно приципиально (т.е. перейти на OpenVPN и т.п. - не предлагать)
все, что пришло в голову, уже перепробовал, маны читал, все назначение пользовательских адресов сделано через pppd (delegate в ppptp.conf и аналогично в xl2tpd.conf) ... не помогает.