Bolik_Stav 0 Posted 2007-07-19 05:34:33 Share Posted 2007-07-19 05:34:33 Внимание с данного дня пошёл месяц на сбор новых фишек. Прошу рассмотреть возможность добавления mschapv2. Без нее плохо. ((( я тоже прошу. Обращение к разработчикам VPN модуля : ПОЖАЛУЙСТО!! сделайте описание модуля - и что он может, а что нет! Как сделал Alferov с STG-WEB. Я намучался - мне хватило, так зачем что бы остальные мучались. Link to post Share on other sites
Alferov 0 Posted 2007-07-19 08:52:51 Share Posted 2007-07-19 08:52:51 сделайте описание модуля - и что он может, а что нет! А чего там описывать то? Это ж стандартный радиус. Почитай RFC. Link to post Share on other sites
Bolik_Stav 0 Posted 2007-07-19 09:44:34 Share Posted 2007-07-19 09:44:34 сделайте описание модуля - и что он может, а что нет! А чего там описывать то? Это ж стандартный радиус. Почитай RFC. :argh: а что он может , а что нет! где было написанно что он ещё не держит mschapv2 ???? Link to post Share on other sites
Max 0 Posted 2007-07-19 16:48:00 Author Share Posted 2007-07-19 16:48:00 Сначала благодарность разработчикам, за прекрасный модуль.Потом, обида на них, за отсутствие какой либо помощи ( думал что за спонсорство этого модуля поможет, разработчики - хоть как то будут помогать - но ошибся !!! ). а теперь вопрос - в логах статистики светится всего лишь 0.0.0.0 - это правильно? или это я ещё не докопался до истины. странно... Я же в асе написал, вам всё, для понимания работы необходимо читать RFC радиуса! Мне не понятно что за обиды на нас? Что именно из того что обещали мы не выполнили? Тот путь первый бросит в меня камень! Link to post Share on other sites
Max 0 Posted 2007-07-19 16:49:09 Author Share Posted 2007-07-19 16:49:09 Внимание с данного дня пошёл месяц на сбор новых фишек. Прошу рассмотреть возможность добавления mschapv2. Без нее плохо. ((( ок! сделаем! Link to post Share on other sites
Max 0 Posted 2007-07-19 16:50:54 Author Share Posted 2007-07-19 16:50:54 сделайте описание модуля - и что он может, а что нет! А чего там описывать то? Это ж стандартный радиус. Почитай RFC. ага! я ему в асю тоже написал.... :rrr: Вообще правильный подход должен подразумевать хотя бы беглое ознакомление с технологией с которой собираетесь работать, а не услышать ВПН и разу бросаться на него. Если бы вы ознакомились должным образом с технологией, то задавали бы уточняющие вопросы на которые я отчечу без проблем, а не фундаментальные, на котрые отвечать нет не сил, ни времени, ни желания! Link to post Share on other sites
Max 0 Posted 2007-07-19 16:55:35 Author Share Posted 2007-07-19 16:55:35 сделайте описание модуля - и что он может, а что нет! А чего там описывать то? Это ж стандартный радиус. Почитай RFC. :argh: а что он может , а что нет! где было написанно что он ещё не держит mschapv2 ???? а где написано в RFC что он должен это уметь? http://www.unix.org.ua/rfc/rfc2058.html самый низ, видим PAP и CHAP, по желаниям трудящихся сделали EAP. Link to post Share on other sites
Max 0 Posted 2007-07-19 16:56:58 Author Share Posted 2007-07-19 16:56:58 и вообще читайте внимательней данный топик, и обязательно сначала! Для тех кто в танке: http://local.com.ua/forum/index.php?showtopic=8241&st=0 читать до просветления Link to post Share on other sites
Max 0 Posted 2007-07-19 17:03:03 Author Share Posted 2007-07-19 17:03:03 а теперь вопрос - в логах статистики светится всего лишь 0.0.0.0 - это правильно? или это я ещё не докопался до истины. На сколько я помню сегодня я вам в асе ответил по данному вопросу, но для тех кто в танке, а так же для тех кто не всё ещё не догадался прочитать RFC (RADIUS), повторю: ВПН сервер отдаёт стату о трафике радиус-серверу по протокул радиус, в виде общего количества байт переданных за сессию, и только. Это означает что данные о dst и src стг не передаются. Вопросы есть? Link to post Share on other sites
Bolik_Stav 0 Posted 2007-07-19 17:47:45 Share Posted 2007-07-19 17:47:45 Уважаемые ВСЕ! я с вас смеюсь!!! Вы что специально прикидываитеся??? только не нежно делать вид что вы не поняли мои вопросы. Что вы блин за люди, пытаетесь всё усложнить. Отсылать доку может и правильно, но я от куда знаю на сколько доделан модуль - может он только может быть модулем и всё т.е просто загружаться и нечего не делать. Повторяю ещё раз - спасибо большое за разработки. Честь и хвала вам! Если вы считаете ч вопрос глупым - не отвечайте, но люди будут продолжать мучатся. Обиды не на вас - а на положение всей системы и мануала к ней - есть система, а вот как ей пользоваться - ХЗ. MAX: Прежде чем на меня наежать - сверьте время вопроса форума - и начало разговора в аси ( ну представил что разговор это 5 сообщений в 5 минут ). Link to post Share on other sites
Alferov 0 Posted 2007-07-19 18:10:13 Share Posted 2007-07-19 18:10:13 странно как то видеть сначала это: а теперь вопрос - в логах статистики светится всего лишь 0.0.0.0 - это правильно? или это я ещё не докопался до истины. потом рекомендацию почитать стандарт, где все(!!!) написано а потом опять вопрос: Отсылать доку может и правильно, но я от куда знаю на сколько доделан модуль - может он только может быть модулем и всё т.е просто загружаться и нечего не делать. Если нет понимания как работает радиус, то зачем вообще заморачиваться этим? В Вашем случае вариантов ровно два. 1. почитать таки RFC. 2. ничего не делать. В любом случае считаю необоснованными любые обиды по причине "отсутствия мануала". Документации в инете полно. Как в первозданном виде, так и переводы RFC. Обижаться надо на себя - за лень! С чего Вы решили, что кто то будет Вам читать лекции по радиусу? Я так понимаю, мы тут биллинг обсуждаем, а не ликбезом занимаемся. ИМХО. RTFM. Link to post Share on other sites
Bolik_Stav 0 Posted 2007-07-19 19:17:55 Share Posted 2007-07-19 19:17:55 а теперь вопрос - в логах статистики светится всего лишь 0.0.0.0 - это правильно? или это я ещё не докопался до истины. потом рекомендацию почитать стандарт, где все(!!!) написано а где там будет написано, что можно использовать другой модуль STG для захвата трафика ??? даже на оффсайте этого нету!! не где этого нету ! Ладно, мы так и не поняли друг друга. Я не просил не от кого лекций. Я в первый раз работаю с Linux , чего-то ещё не понял - а время поджимает. Попросил помощи - у тех кто на этом пингвина съел, но зря – услышал только насмешки, и так не получил её. Перебрать всю доку за короткие сроки сильно сложно. Да и какая тут может быть лень??? я за эти дни чуть с ума не сошёл от избытка инфы !!! Жду релиза модуля. =) Link to post Share on other sites
Alferov 0 Posted 2007-07-20 04:13:35 Share Posted 2007-07-20 04:13:35 А при чем тут linux? Вроде о радиусе речь идет? Это абсолютно разные вещи, живущие отдельно друг от друга. Link to post Share on other sites
Bolik_Stav 0 Posted 2007-07-20 05:26:53 Share Posted 2007-07-20 05:26:53 А при чем тут linux?Вроде о радиусе речь идет? Это абсолютно разные вещи, живущие отдельно друг от друга. ладно довайте закроем этот разгвор т.к мы не одни на этом форуме. Так спорить можно много и долго. Link to post Share on other sites
Cell 7 Posted 2007-07-21 20:25:52 Share Posted 2007-07-21 20:25:52 Не, я вот считаю, что хотябы легкую доку надо бы сварганить для этого дела, ну хотя бы в режиме: настраиваем pppd+pptp и называем все это NAS, настраиваем radius и так его и называем..... прикручиваем к radius модуль stg и никак его не называем.... бла бла бла - бо ну не понятно пока нифига как это работает. Непонятно что будет с детальной статистикой, непонятно как это отразится на модуле mysql Вобщем дока нужна.... я понимаю что автор не обязан тут распинаться если ему это не хочется, но может найдется доброволец, которому будет не в западло объяснить хоть что-то.... ведь не все здесь родились с клавой в руках и многие учатся на своих ошибках, хотя можно было бы учиться на чужих. Спасибо если дочитали до конца. Link to post Share on other sites
Alferov 0 Posted 2007-07-22 05:11:13 Share Posted 2007-07-22 05:11:13 Не будет там детальной статистики. Потому как НАС просто считает пакеты, прошедшие через него и отдает этот счетчик в радиус (биллинг). Все это написано в RFC. Link to post Share on other sites
Cell 7 Posted 2007-07-22 06:02:57 Share Posted 2007-07-22 06:02:57 Не будет там детальной статистики. Потому как НАС просто считает пакеты, прошедшие через него и отдает этот счетчик в радиус (биллинг).Все это написано в RFC. Я где-то как-то догадался ) т.к. чуть-чуть читаю всетаки. Но неудовлетворенность осталась. Link to post Share on other sites
Max 0 Posted 2007-07-22 07:22:27 Author Share Posted 2007-07-22 07:22:27 непонятно какую доку вам нада? Просто схем работы радиуса много! И с ВПН, и со свитчами (dot1x), и с цысками умеющими радиус, да хоть с модемными пулами... всё расписывать устанет рука (темболее что идёт привязка к производителю)! В инете полно доков по настройке данных связок. И если после их прочтения останутся вопросы - ответим. Важно понимать что модуль радиуса для наса выступает полноценным радиус сервером. И уже плесать нада от этого! А доки пишутся на коммерческие продукты, данный модуль изначально не коммерческий. Link to post Share on other sites
Cell 7 Posted 2007-07-22 15:23:20 Share Posted 2007-07-22 15:23:20 Важно понимать что модуль радиуса для наса выступает полноценным радиус сервером. И уже плесать нада от этого! Собственно это все что от вас требовалось!!!!!!! а какого рода доку - я описал см. выше... Link to post Share on other sites
bigkit 0 Posted 2007-08-23 14:24:36 Share Posted 2007-08-23 14:24:36 Пара вопросов. 1) Можно ли использовать модуль только для авторизации (без аккаунтинга), а траф считать как обычно ? 2) В каком состоянии модуль ? Набрана ли нужная сумма или нужно ещё помочь ? Спасибо. Link to post Share on other sites
Max 0 Posted 2007-08-23 15:57:57 Author Share Posted 2007-08-23 15:57:57 Пара вопросов. 1) Можно ли использовать модуль только для авторизации (без аккаунтинга), а траф считать как обычно ? 2) В каком состоянии модуль ? Набрана ли нужная сумма или нужно ещё помочь ? Спасибо. 1) да можно, всё решается опциями конфига 2) На данный момент жалоб от тестеров не поступало если не ошибаюсь гдето месяца 2, значит можно назвать стабле Сумма нужна всегда, минимум 10 баксов, максимум не ограничиваем Link to post Share on other sites
zacar 2 Posted 2007-08-23 18:24:27 Share Posted 2007-08-23 18:24:27 Привет Всем. Народ всетаки сложностей в настройке модуля ВПН нет. Того что описали в плане настройки модуля мне хватило для того чтоб настроить модуль, я чесно говоря толком пока не вникал как работает сам протокол radius но все получилось практически с первого пинка. Оговорюсь сразу модуль использую совместно с TotalControl NetServer (это готовый диал-ап сервер от US-Robotics). Link to post Share on other sites
Genius 0 Posted 2007-08-24 09:45:51 Share Posted 2007-08-24 09:45:51 Решил написать небольшой патч для привязки аккаунтов к CallingStationID. Используется поле UserData0 (можно поменять на любое другое), добавлять новое поле не стал, так как надо менять конфигуратор тогда. В поле можно вписывать любые значения через запятую или пробел (для pppoe передается MAC для pptp IP) при наличии полного соответствия доступ разрешается, если оставить поле пустым проверка не производится. --- radius_ia.cpp.proto 2007-04-10 22:21:51.000000000 +0400 +++ radius_ia.cpp 2007-08-24 13:39:06.000000000 +0400 @@ -108,7 +108,7 @@ //---------------------------------------------------------------- const string RADIUS_IA::GetVersion() const{ - return "Radius modul version 0.72alpha"; + return "Radius authorizator&accounter version 0.82alpha with CallingStationID check"; }; //---------------------------------------------------------------- void RADIUS_IA::SetUsers(USERS * u){ @@ -337,6 +336,34 @@ return 0; }; + //Calling station ID check (MAC or IP) + if(ui->property.userdata0.Get().size()) + { + if(RequestPacket.FindAttribute(CallingStationId)) + { + string station_id=RequestPacket.GetStringField(CallingStationId).c_str(); + printfd(__FILE__,"CallingStationId: %s\n",station_id.c_str()); + + char * str = new char[ui->property.userdata0.Get().size() + 1]; + strcpy(str,ui->property.userdata0.Get().c_str()); + char * pstr = str; + char * c_id; + + while ((c_id = strtok(pstr, ", "))) + { + pstr = NULL; + if(c_id==station_id) + break; + } + + if (!c_id) + SendReject(RequestPacket,"Invalid CallingStationID",cliaddr); + delete[] str; + } + else + SendReject(RequestPacket,"NOT found CallingStationID attr",cliaddr); + } + //PAP if (RequestPacket.FindAttribute(UserPassword)) { printfd(__FILE__,"Find PAP password!!! attr\n"); П.С. По хорошему надо юзать уже сделанную автором систему USER_IPS но для патча на коленках сойдет, если идея заинтересует разработчиков модуля то ее можно переписать красиво с добавлением новых полей и созданием нормальной функции проверки. Link to post Share on other sites
Max 0 Posted 2007-08-24 12:13:32 Author Share Posted 2007-08-24 12:13:32 нада подумать, ваш патч отдам на анализ нашим людям... Link to post Share on other sites
Genius 0 Posted 2007-08-24 13:24:23 Share Posted 2007-08-24 13:24:23 Тогда лучше отдайте вот этот, тут еще добавлена проверка NASIPAddress чтобы клиент авторизовался именно на том NAS который указан у него в конфиге, без такой проверки довольно легко нарушить работу системы с несколькими НАСами и скриптами OnConnect/OnDisconnect --- radius_ia.cpp.proto 2007-04-10 22:21:51.000000000 +0400 +++ radius_ia.cpp 2007-08-24 17:20:37.000000000 +0400 @@ -108,7 +108,7 @@ //---------------------------------------------------------------- const string RADIUS_IA::GetVersion() const{ - return "Radius modul version 0.72alpha"; + return "Radius authorizator&accounter version 0.81beta with CallingStationID&NASIP check"; }; //---------------------------------------------------------------- void RADIUS_IA::SetUsers(USERS * u){ @@ -337,6 +336,64 @@ return 0; }; + //NAS IP check + + if(ui->property.nas.Get().size()) + { + if(RequestPacket.FindAttribute(NASIPAddress)) + { + unsigned int nas_ip=RequestPacket.GetIntField(NASIPAddress); + + printfd(__FILE__,"NASIPAddress: %u\n",nas_ip); + + if(htonl(nas_ip)!=inet_addr(ui->property.nas.Get().c_str())) + { + SendReject(RequestPacket,"Request from invalid NAS",cliaddr); + printfd(__FILE__,"Request from invalid NAS\n"); + } + } + else + { + SendReject(RequestPacket,"NOT found NASIPAddress attr",cliaddr); + printfd(__FILE__,"NOT found NASIPAddress attr\n"); + } + } + + //Calling station ID check (MAC or IP) + if(ui->property.userdata0.Get().size()) + { + if(RequestPacket.FindAttribute(CallingStationId)) + { + string station_id=RequestPacket.GetStringField(CallingStationId).c_str(); + printfd(__FILE__,"CallingStationId: %s\n",station_id.c_str()); + + char * str = new char[ui->property.userdata0.Get().size() + 1]; + strcpy(str,ui->property.userdata0.Get().c_str()); + char * pstr = str; + char * c_id; + + while ((c_id = strtok(pstr, ", "))) + { + pstr = NULL; + if(c_id==station_id) + break; + } + + if (!c_id) + { + SendReject(RequestPacket,"Invalid CallingStationID",cliaddr); + printfd(__FILE__,"Invalid CallingStationID: %s\n",station_id.c_str()); + } + + delete[] str; + } + else + { + SendReject(RequestPacket,"NOT found CallingStationID attr",cliaddr); + printfd(__FILE__,"NOT found CallingStationID attr\n"); + } + } + //PAP if (RequestPacket.FindAttribute(UserPassword)) { printfd(__FILE__,"Find PAP password!!! attr\n"); Патчи тестились и написаны под последнюю бету выложенную автором и модуль радиуса 0.81бета. Link to post Share on other sites
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now