Перейти до

MOD_RADIUS for Stargazer


Рекомендованные сообщения

Собсно сабж. Где найти толковый мануал по данному модулю?

Что я хочу сделать: есть три микротиковских роутера (NAS-server-ы), на которых юзера авторизуются по пппое, должны авторизоваться через старгейзер.

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

С радиусом стыкаюсь первый раз в жизни, не пинайте сильно. Спасибо!

Ссылка на сообщение
Поделиться на других сайтах
  • Відповіді 131
  • Створено
  • Остання відповідь

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Меня не настораживает. Все правильно. Текущий адрес перед отключением сбрасывается в 0.     По сравнению с 2.406 добавилась отложенная реакция на некоторые события. Надо бы собрать с дебагом и пос

Уже нашел ошибку. В плагине для мускула не проверяется вариант когда запрос не вернул ни одной строки. Считается что запрошенный логин всегда существует. Патч приведу позже. Может быть завтра.

Конечно отличаются. Во первых это отладочная сборка - они содержат в себе отладочную информацию. Во вторых при make install-bin копирование происходит средствами утилиты install которая делает strip в

Собсно сабж. Где найти толковый мануал по данному модулю?

Что я хочу сделать: есть три микротиковских роутера (NAS-server-ы), на которых юзера авторизуются по пппое, должны авторизоваться через старгейзер.

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

С радиусом стыкаюсь первый раз в жизни, не пинайте сильно. Спасибо!

Если имеется в виду модуль который идет в составе stg то его описание есть в доке к stg. Но он отвечает только за взаимодействие с FreeRADIUS для авторизации. Скорость и прочая чепуха передается непосредственно из FreeRADIUS другими средствами. Скриптами, например. Документация на FreeRADIUS есть на сайте самого FreeRADIUS.

Ссылка на сообщение
Поделиться на других сайтах

Хм... Я че-то думал, что мод_радиус это и есть радиус сервер. по крайней мере, прочитал из написанного. Что получается, только сервер доступа, и стг сервер.

Ссылка на сообщение
Поделиться на других сайтах

Хм... Я че-то думал, что мод_радиус это и есть радиус сервер. по крайней мере, прочитал из написанного. Что получается, только сервер доступа, и стг сервер.

Возможно ты перепутал с mod_radius который когда-то предоставил Max (или Alferov, не помню точно). Там модуль действительно выполнял функции RADIUS-сервера.

Ссылка на сообщение
Поделиться на других сайтах

Та в основном про связку с FreeRADIUS. Тему с mod_radius так никто и не раскрыл.

Кроме того у меня есть большие сомнения в том что тот mod_radius соберется с современными версиями stg.

Ссылка на сообщение
Поделиться на других сайтах

От блин возьму и лично попытаюсь собрать при помощи молотка, зубила и еще какой-то матери.

Как-то назревает нехорошая тенденция терминировать рррое в ближайшее время - писать очередной костыль для ppp.secrets как-то не тянет.

Ссылка на сообщение
Поделиться на других сайтах

От блин возьму и лично попытаюсь собрать при помощи молотка, зубила и еще какой-то матери.

Как-то назревает нехорошая тенденция терминировать рррое в ближайшее время - писать очередной костыль для ppp.secrets как-то не тянет.

А зачем? Есть как минимум 2 альтернативных гарантированно рабочих решения. Настроить FreeRADIUS для работы с базой Stargazer'а (в случае использования MySQL или PostgreSQL) или настроить FreeRADIUS для работы с самим Stargazer'ом (через rlm_stg).

Ссылка на сообщение
Поделиться на других сайтах
  • 4 weeks later...

Вот нашел тот модуль:

Модуль для авторизации и аккуантинга по протоколу RADIUS.
Это бета версия, по этому в ней может чего-то  работать не так как надо.

Установка:
1)Скопировать папку radius в projects/stargazer/plugins/authorization
2)Собрать stargazer как обычно командой build
3)Зайти в каталог  projects/stargazer/plugins/authorization/radius и дать команду gmake
4)Скопировать файл mod_radius_ia.so в /usr/lib/stg
5)Добавить в файл /etc/stargazer/stargazer.conf

   <Module radius_ia>
      Secret=dgthre    #общий секрет

# NasIP - IP NAS`а. Параметр может быть записан несколько раз, с
       # разными IP.  Он может быть 0.0.0.0 - приём с любого IP, но тогда 
       # он должен быть  записан один раз,
      NasIP=127.0.0.1  #IP NAS-а
      NasIP=192.168.2.1
      NasIP=172.20.0.1

      AuthPort=1812   #Номер порта Авторизаци
      AcctPort=1813   #Номер порта Аккоутнинга 
      # Если эти параметры отсутсвуют, то используются значения по умолчанию 1812 и 1813

      # Направление, куда будет относиться весь траффик информация, о котором
      # принята по протоколу RADIUS
      # В детальной статистике адрес с которго/на который была переданно
      # информация будет 0.0.0.0 
      # В случае отсутствия этого параметра информация о траффике не будет
      # учитываться.
      TrafficDir=1 

      # UpdateInterval - аттрибут, посылаемый NAS`у. Это рекомендуемый
      # промежуток времени(сек), через который NAS полжен посылать информацию о
      # траффике. В некоторых случаях NAS может игнорировать этот атрибут.
      # Если значение равно 0, то этот атрибут не передаётся.
      # Значение по умолчанию - 0. 

      UpdateInterval=30 # Значение в секундах


    </Module>

6)Запустить старгейзер.

ChangeLog:

alpha0.1 - Начальная версия
alpha0.2 - Исправленны ошибки. Протестирована работа с mpd (FreeBSD 5.4) В режиме Авторизации и аккаунтинга. 
0.3alpha - Добавлена возможность задания портов из конфига. 
0.5beta  - Добавленна способность учитывать траффик по радиусу.
0.6alpha - Добавленна поддержка InterumUpdate, Поддержка Gigawords аттрибутов,
   позволяющих передавать информацю более чем о 4ГБ за сессию. Испрвленны некоторые
   потенциальные ошибки
0.7alpha - Добавленна тестовая поддержка EAP
0.72alpha -Исправленна ошибка с Identify в ответах Accept и  Reject , при EAP
          авторизации. Добавленно поле ServiceType.
0.8beta -  Исправлена ошибка с инициальзацией isRunning
0.81beta - Disconnect при остановке.

 

Ну, делал все по мануалу. Че-то при компиляции:

kwa# cd /usr/progz/stg-2.406/projects/stargazer/plugins/authorization/radius/
kwa# ls
Makefile        eap.cpp         radius.cpp      radius.o        radius_ia.h
deps            eap.h           radius.h        radius_ia.cpp
kwa# gmake
g++ -c radius_ia.cpp -g3 -Wall -fPIC  -Wno-non-virtual-dtor -I ../../../../../include -DFREE_BSD5
radius_ia.cpp: In member function 'BASE_PLUGIN* RADIUS_IA_CREATOR::GetPlugin()':
radius_ia.cpp:30: error: cannot allocate an object of abstract type 'RADIUS_IA'
radius_ia.h:58: note:   because the following virtual functions are pure within 'RADIUS_IA':
../../../../../include/base_plugin.h:60: note:  virtual int BASE_PLUGIN::Reload()
gmake: *** [radius_ia.o] Error 1

 

FreeBSD 8.1, Stargazer v. 2.406

Ссылка на сообщение
Поделиться на других сайтах

Так же по радиусу задам вопрос пробую rlm_stg при коннекте лог выдает такую каку...

 

Ready to process requests.

rad_recv: Access-Request packet from host 127.0.0.1:45172, id=135, length=148

Service-Type = Framed-User

Framed-Protocol = PPP

User-Name = "admin"

MS-CHAP-Challenge = 0xecb6b140aaf92af6181ddbb8b85e31f1

MS-CHAP2-Response = 0xf30028daecf6febcdb0d9e4018c4b25760dc0000000000000000c8be1b5ab011b1c0d5fa793269897e00554ffbd1998f971e

Calling-Station-Id = "192.168.0.213"

NAS-IP-Address = 192.168.0.97

NAS-Port = 0

Processing the authorize section of radiusd.conf

modcall: entering group authorize for request 0

rlm_stg: stg_authorize()

Segmentation fault

 

 

 

radiusd: FreeRADIUS Version 1.1.3 Stg v. 2.406

 

 

Конфиг радиуса

 

prefix = /usr

exec_prefix = /usr

sysconfdir = /usr/local/etc/raddb

localstatedir = /var

sbindir = ${exec_prefix}/sbin

logdir = /var/log/freeradius

raddbdir = /usr/local/etc/raddb

radacctdir = ${logdir}/radacct

confdir = ${raddbdir}

run_dir = ${localstatedir}/run/freeradius

log_file = ${logdir}/radius.log

libdir = /usr/lib/freeradius

pidfile = ${run_dir}/freeradius.pid

 

#user = freerad

#group = freerad

 

max_request_time = 30

delete_blocked_requests = no

cleanup_delay = 5

max_requests = 1024

bind_address = *

port = 0

 

hostname_lookups = no

allow_core_dumps = no

regular_expressions = yes

extended_expressions = yes

log_stripped_names = no

log_auth = no

log_auth_badpass = no

log_auth_goodpass = no

usercollide = no

lower_user = no

lower_pass = no

nospace_user = no

nospace_pass = no

 

checkrad = ${sbindir}/checkrad

 

security {

max_attributes = 200

reject_delay = 1

status_server = no

}

proxy_requests = yes

$INCLUDE ${confdir}/proxy.conf

 

$INCLUDE ${confdir}/clients.conf

 

snmp = no

$INCLUDE ${confdir}/snmp.conf

 

thread pool {

start_servers = 5

max_servers = 32

min_spare_servers = 3

max_spare_servers = 10

max_requests_per_server = 0

}

 

#modules {

# pap {

# encryption_scheme = crypt

# }

#

# chap {

# authtype = CHAP

# }

#

# pam {

# pam_auth = radiusd

# }

#

# unix {

# cache = no

# cache_reload = 600

# radwtmp = ${logdir}/radwtmp

# }

modules {

### STG

stg{

local_port = 6667

server = localhost

port = 6666

password = 123456

}

pap {

encryption_scheme = crypt

}

chap {

authtype = CHAP

}

mschap {

}

}

 

# Instantiation

instantiate {

stg

}

 

authorize {

stg

chap

mschap

}

 

# Authentication.

authenticate {

stg

Auth-Type PAP {

pap

}

Auth-Type CHAP {

chap

}

Auth-Type MS-CHAP {

mschap

}

}

 

accounting {

stg

}

 

session {

}

 

post-auth {

stg

}

Ссылка на сообщение
Поделиться на других сайтах

Вот нашел тот модуль:

Модуль для авторизации и аккуантинга по протоколу RADIUS.
Это бета версия, по этому в ней может чего-то  работать не так как надо.


 

Ну, делал все по мануалу. Че-то при компиляции:

kwa# cd /usr/progz/stg-2.406/projects/stargazer/plugins/authorization/radius/
kwa# ls
Makefile        eap.cpp         radius.cpp      radius.o        radius_ia.h
deps            eap.h           radius.h        radius_ia.cpp
kwa# gmake
g++ -c radius_ia.cpp -g3 -Wall -fPIC  -Wno-non-virtual-dtor -I ../../../../../include -DFREE_BSD5
radius_ia.cpp: In member function 'BASE_PLUGIN* RADIUS_IA_CREATOR::GetPlugin()':
radius_ia.cpp:30: error: cannot allocate an object of abstract type 'RADIUS_IA'
radius_ia.h:58: note:   because the following virtual functions are pure within 'RADIUS_IA':
../../../../../include/base_plugin.h:60: note:  virtual int BASE_PLUGIN::Reload()
gmake: *** [radius_ia.o] Error 1

 

FreeBSD 8.1, Stargazer v. 2.406

Ну естественно. Это модуль для 2.401, а у тебя 2.406.

Ссылка на сообщение
Поделиться на других сайтах

Так же по радиусу задам вопрос пробую rlm_stg при коннекте лог выдает такую каку...

 

Ready to process requests.

rad_recv: Access-Request packet from host 127.0.0.1:45172, id=135, length=148

Service-Type = Framed-User

Framed-Protocol = PPP

User-Name = "admin"

MS-CHAP-Challenge = 0xecb6b140aaf92af6181ddbb8b85e31f1

MS-CHAP2-Response = 0xf30028daecf6febcdb0d9e4018c4b25760dc0000000000000000c8be1b5ab011b1c0d5fa793269897e00554ffbd1998f971e

Calling-Station-Id = "192.168.0.213"

NAS-IP-Address = 192.168.0.97

NAS-Port = 0

Processing the authorize section of radiusd.conf

modcall: entering group authorize for request 0

rlm_stg: stg_authorize()

Segmentation fault

 

Падает, зараза. Смотреть надо. Собирать в отладочном режиме и ловить корку. Или запускать из-под gdb и смотреть бектрейс. Если готов на такие шаги - могу рассказать что делать.

Ссылка на сообщение
Поделиться на других сайтах

А че сделать, чтобы подошла к 406 версии?

В первую очередь рассмотреть альтернативные варианты.

А потом (если альтернативы все-таки не подходят) вооружиться текстовым редактором и компилятором и исправить все ошибки сборки.

Ссылка на сообщение
Поделиться на других сайтах

Альтернативные? Есть какой-то еще модуль радиуса в сборке в этой, только вот я не пойму, для чего он, и какие функции выполняет, мануала то нету.

Ссылка на сообщение
Поделиться на других сайтах

Альтернативные? Есть какой-то еще модуль радиуса в сборке в этой, только вот я не пойму, для чего он, и какие функции выполняет, мануала то нету.

Альтернативный подход - это не привязываться к авторизациям Stargazer а только работать с его базой. Тогда достаточно FreeRADIUS без всяких шаманств со стороны Stargazer.

Мануал по rlm_stg есть (в pdf-ке). И есть пример конфигурации Stargazer + FreeRADIUS + PPtP с Readme в каталоге scripts.

Ссылка на сообщение
Поделиться на других сайтах

Как-то такой подход не очень. МНе надо, чтобы старгейзер выступал в качестве радиус сервера. сервер будет находится в одном месте, а роутер для раздачи инета совсем в другом (на микротике).

Ссылка на сообщение
Поделиться на других сайтах

Как-то такой подход не очень. МНе надо, чтобы старгейзер выступал в качестве радиус сервера. сервер будет находится в одном месте, а роутер для раздачи инета совсем в другом (на микротике).

Зачем Stargazer'у быть RADIUS'ом?

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.


×
×
  • Створити нове...