LinuxForum.Fans
Тема

PPTPD авторизация под одним логином

Автор: McPetrovich 9 сообщений 3459 просмотров
#83001

Доброго времени суток.
Есть следующая проблема, которую необходимо разрешить как можно быстрее.
Существует VPN сервер под дебианом. Настроен pptpd. В chap-secrets пока вбит один пользователь
test pptpd test 192.168.2.3

С клиентских машин под жтим логино авторизация проходит на ура. Но... авторизоваться под этм логином и паролем можно хоть с 10 машин одновременно. При этом все присваивается вышеобозначенный IP. И они все спокойно работают. Вариант поднимать freeradius сейчас не предоставляется возможным - время. Погуглив, не нашел ничего, чем бы можно было сделать проверку на уникальность.... может плохо гулгил. Колллеги, есть ли какие-нибудь соображения по этому поводу?

#83079

Если в /etc/ppp/options вставить строку

text
nomp

не поможет?

Пётр.

#83084

Не помогает.... уже радиус прикручиваю.... куды деваться....

#83098

Дожили.... накатил радиус и мускуль... забил одного пользователя.... и один фиг с двух разных компов по одному логину можно подключаться.... при этом и айпишники выдаются одинаковые ШО ЗА......

#83101

А можно посмотреть весь /etc/ppp/options?
Есть ещё опции lock, nodetach, но не знаю, работает ли в вашем случае lock

Пётр.

#83105

name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
require-mppe

proxyarp


nodefaultroute



lock

nobsdcomp.
nomp
lcp-echo-failure 10
lcp-echo-interval 2

plugin /usr/lib/pppd/2.4.4/radius.so
plugin /usr/lib/pppd/2.4.4/radattr.so

#83107

Вон че нашел.... на мой взгляд - химия...


Allow Only One Connection per User

By default, a user can make multiple connections to the pptpd server. To restrict one connection per user, create two script files in the /etc/ppp directory. When the same user logs in twice, the first connection will be disconnected. This is actually done on the ppp level, not with the pptpd.

The first file is /etc/ppp/auth-up

#!/bin/sh
# get the username/ppp line number from the parameters
PPPLINE=$1
USER=$2
# create the directory to keep pid files per user
mkdir -p /var/run/pptpd-users
# if there is a session already for this user, terminate the old one
if [ -f /var/run/pptpd-users/$USER ]; then
kill -HUP `cat /var/run/pptpd-users/$USER`
rm /var/run/pptpd-users/$USER
fi
# write down the username in the ppp line file
echo $USER > /var/run/pptpd-users/$PPPLINE.new

The second file is /etc/ppp/ip-up.local

#!/bin/sh
REALDEVICE=$1
# Get the username from the ppp line record file
USER=`cat /var/run/pptpd-users/$REALDEVICE.new`
# Copy the ppp line pid
cp "/var/run/$REALDEVICE.pid" /var/run/pptpd-users/$USER
# remove the ppp line record file
rm "/var/run/pptpd-users/$REALDEVICE.new"

#83109

Если ни nomp, ни lock не помогают, то действительно надо использовать
скрипты для проверки, только странно, что в найдённом варианте
разрывается 1-е соединение, вместо того, чтобы отвергнуть 2-е.
Когда я когда-то настраивал соединение по GPRS, то у меня было два
скрипта, но для другой цели.

Пётр.

#83210

И так скриптов этих понаписал тучу.... не хотелось бы и к стандартным демонам их применять... сегодня буду в радиус буду дальше рыть.

Войдите или зарегистрируйтесь, чтобы ответить.