madf 279 Опубліковано: 2011-01-12 15:44:00 Share Опубліковано: 2011-01-12 15:44:00 ... core файл могу выложить если нужно Можешь упаковать core-файл вместе со всеми бинарями и конфигом в архив? Хотя и так уже кое-что видно, но лишним не будет. Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-01-12 15:49:10 Share Опубліковано: 2011-01-12 15:49:10 ... core файл могу выложить если нужно Можешь упаковать core-файл вместе со всеми бинарями и конфигом в архив? Хотя и так уже кое-что видно, но лишним не будет. Уже нашел ошибку. В плагине для мускула не проверяется вариант когда запрос не вернул ни одной строки. Считается что запрошенный логин всегда существует. Патч приведу позже. Может быть завтра. Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-01-13 12:10:13 Share Опубліковано: 2011-01-13 12:10:13 ... core файл могу выложить если нужно Можешь упаковать core-файл вместе со всеми бинарями и конфигом в архив? Хотя и так уже кое-что видно, но лишним не будет. выложил http://skyprox.net.ru/upload/stg_debug.tar.gz кстати вопрос, модули и библиотеки которые при make install помещаются в /usr/lib отличаются по размеру от тех собираются при сборке стг, это нормально? Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-01-14 08:35:36 Share Опубліковано: 2011-01-14 08:35:36 ... core файл могу выложить если нужно Можешь упаковать core-файл вместе со всеми бинарями и конфигом в архив? Хотя и так уже кое-что видно, но лишним не будет. выложил http://skyprox.net.ru/upload/stg_debug.tar.gz кстати вопрос, модули и библиотеки которые при make install помещаются в /usr/lib отличаются по размеру от тех собираются при сборке стг, это нормально? Конечно отличаются. Во первых это отладочная сборка - они содержат в себе отладочную информацию. Во вторых при make install-bin копирование происходит средствами утилиты install которая делает strip всем бинарникам "вычищая" лишнюю информацию из них. Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-01-14 08:49:27 Share Опубліковано: 2011-01-14 08:49:27 Конечно отличаются. Во первых это отладочная сборка - они содержат в себе отладочную информацию. Во вторых при make install-bin копирование происходит средствами утилиты install которая делает strip всем бинарникам "вычищая" лишнюю информацию из них. спасибо за информацию патч приблизительно когда будет готов? PS. напомню, авторизуется даже при отрицательном балансе Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-01-14 10:45:04 Share Опубліковано: 2011-01-14 10:45:04 Конечно отличаются. Во первых это отладочная сборка - они содержат в себе отладочную информацию. Во вторых при make install-bin копирование происходит средствами утилиты install которая делает strip всем бинарникам "вычищая" лишнюю информацию из них. спасибо за информацию патч приблизительно когда будет готов? PS. напомню, авторизуется даже при отрицательном балансе quick&dirty: diff --git a/projects/stargazer/plugins/store/mysql/mysql_store.cpp b/projects/stargazer/plugins/store/mysql/mysql_store.cpp index fefadd5..f62a846 100644 --- a/projects/stargazer/plugins/store/mysql/mysql_store.cpp +++ b/projects/stargazer/plugins/store/mysql/mysql_store.cpp @@ -711,6 +711,13 @@ if (!(res=mysql_store_result(sock))) return -1; } +if (mysql_num_rows(res) != 1) +{ + errorStr = "User not found"; + mysql_close(sock); + return -1; +} + row = mysql_fetch_row(res); string param; Решает проблему с падением. По поводу авторизации при отрицательном балансе баг пока висит в треккере. Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-01-14 11:50:17 Share Опубліковано: 2011-01-14 11:50:17 quick&dirty: diff --git a/projects/stargazer/plugins/store/mysql/mysql_store.cpp b/projects/stargazer/plugins/store/mysql/mysql_store.cpp index fefadd5..f62a846 100644 --- a/projects/stargazer/plugins/store/mysql/mysql_store.cpp +++ b/projects/stargazer/plugins/store/mysql/mysql_store.cpp @@ -711,6 +711,13 @@ if (!(res=mysql_store_result(sock))) return -1; } +if (mysql_num_rows(res) != 1) +{ + errorStr = "User not found"; + mysql_close(sock); + return -1; +} + row = mysql_fetch_row(res); string param; Решает проблему с падением. По поводу авторизации при отрицательном балансе баг пока висит в треккере. получилось пропатчить, только немного поправил патч вот так для того чтобы корректно создать патч в nano --- projects/stargazer/plugins/store/mysql/mysql_store.cpp +++ projects/stargazer/plugins/store/mysql/mysql_store.cpp @@ -711,6 +711,13 @@ if (!(res=mysql_store_result(sock))) return -1; } +if (mysql_num_rows(res) != 1) +{ + errorStr = "User not found"; + mysql_close(sock); + return -1; +} + row = mysql_fetch_row(res); string param; madf, большое спасибо! всё отлично! осталось дело за малым Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2011-01-14 12:36:22 Share Опубліковано: 2011-01-14 12:36:22 .....По поводу авторизации при отрицательном балансе баг пока висит в треккере. А как же с Accounting быть??? И как быть, если в дистре только 1й радиус? Можно патчи отдельно сделать, что бы паралельно под две ветки радиуса были плагины??? Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-01-14 12:45:07 Share Опубліковано: 2011-01-14 12:45:07 .....По поводу авторизации при отрицательном балансе баг пока висит в треккере. А как же с Accounting быть??? И как быть, если в дистре только 1й радиус? Можно патчи отдельно сделать, что бы паралельно под две ветки радиуса были плагины??? да мы тут как бы с первым радиусом боремся под второй никаких манов и примеров конфига нет пока Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-01-14 15:00:15 Share Опубліковано: 2011-01-14 15:00:15 .....По поводу авторизации при отрицательном балансе баг пока висит в треккере. А как же с Accounting быть??? И как быть, если в дистре только 1й радиус? Можно патчи отдельно сделать, что бы паралельно под две ветки радиуса были плагины??? Пока никак. Это что за такой дистр необновляемый? Сейчас 2-й уже везде впихнули. Патч был на модуль для работы с MySQL. Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2011-01-15 03:16:33 Share Опубліковано: 2011-01-15 03:16:33 Пока никак. Это что за такой дистр необновляемый? Сейчас 2-й уже везде впихнули. Патч был на модуль для работы с MySQL. жаль(( я бы поучаствовал. дистр: CentOS 5 [root@stg ~]# cat /etc/redhat-release CentOS release 5.5 (Final) [root@stg ~]# rpm -q freeradius freeradius-1.1.3-1.6.el5 на чем есть, на том и работаем... ну патчем то понятно) ps хотя вопрос сниматся, как дурацкий: [root@stg ~]# yum list freeradius2 freeradius2.x86_64 2.1.7-7.el5 base Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-01-17 18:06:06 Share Опубліковано: 2011-01-17 18:06:06 ещё хотелось бы чтобы авторизовать можно было только столько сессий сколько ip адресов прописано в конфигурации учётной записи юзера Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-01-18 08:59:37 Share Опубліковано: 2011-01-18 08:59:37 ещё хотелось бы чтобы авторизовать можно было только столько сессий сколько ip адресов прописано в конфигурации учётной записи юзера Никак нельзя. Stargazer умеет работать только с одним IP-адресом для одной учетки. Даже если их там прописано много - авторизован будет только один. Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-01-18 10:14:00 Share Опубліковано: 2011-01-18 10:14:00 Никак нельзя. Stargazer умеет работать только с одним IP-адресом для одной учетки. Даже если их там прописано много - авторизован будет только один. авторизуюсь с 2 разных машин под одним логином и паролем, на обоих работает Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-01-18 11:49:08 Share Опубліковано: 2011-01-18 11:49:08 Никак нельзя. Stargazer умеет работать только с одним IP-адресом для одной учетки. Даже если их там прописано много - авторизован будет только один. авторизуюсь с 2 разных машин под одним логином и паролем, на обоих работает Одновременно?! Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-01-19 06:43:35 Share Опубліковано: 2011-01-19 06:43:35 Одновременно?! ошибся, авторизуется с обоих машин и в момент авторизации на второй пропадает интернет и на первой Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-01-19 08:47:49 Share Опубліковано: 2011-01-19 08:47:49 Одновременно?! ошибся, авторизуется с обоих машин и в момент авторизации на второй пропадает интернет и на первой Нет, даже такого быть не может. Оно при попытке авторизации с другого IP скажет что "Ваш логин уже испольуется" и не авторизует. Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2011-01-21 12:35:35 Share Опубліковано: 2011-01-21 12:35:35 Никак нельзя. Stargazer умеет работать только с одним IP-адресом для одной учетки. Даже если их там прописано много - авторизован будет только один. Присоединяюсь к пожеланию. Может в todo? Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-01-24 09:37:11 Share Опубліковано: 2011-01-24 09:37:11 Никак нельзя. Stargazer умеет работать только с одним IP-адресом для одной учетки. Даже если их там прописано много - авторизован будет только один. Присоединяюсь к пожеланию. Может в todo? Для реализации этого придется перелопатить половину кода Stargazer'а. Так что точно не в 2.407. Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2011-01-25 12:49:17 Share Опубліковано: 2011-01-25 12:49:17 жаль... Хотя бы Accounting починить бы. Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-02-03 11:39:08 Share Опубліковано: 2011-02-03 11:39:08 Заметил, что у стандартного rlm_stg фича(бага): когда у юзера "минус", или отключен или заморожен - он все равно авторизует логин на ВПН-сервере. Это так и должно быть? Странно. Я бы сказал что такого не может быть. Для определения того, авторизовывать пользователя или нет, используется вызов USER::IsInetable, который как раз и обрабатывает disabled, passive, freeMb, credit и cash. Прошу еще раз внимательно это проверить. уважаемый madf, всё таки это действительно баг или что-то настроено не так? Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-02-03 11:59:17 Share Опубліковано: 2011-02-03 11:59:17 Заметил, что у стандартного rlm_stg фича(бага): когда у юзера "минус", или отключен или заморожен - он все равно авторизует логин на ВПН-сервере. Это так и должно быть? Странно. Я бы сказал что такого не может быть. Для определения того, авторизовывать пользователя или нет, используется вызов USER::IsInetable, который как раз и обрабатывает disabled, passive, freeMb, credit и cash. Прошу еще раз внимательно это проверить. уважаемый madf, всё таки это действительно баг или что-то настроено не так? Если это действительно так то это баг. Но подтвердить пока не смог. Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-02-03 13:59:46 Share Опубліковано: 2011-02-03 13:59:46 Если это действительно так то это баг. Но подтвердить пока не смог. готов помочь и по содействовать, можно по асе 153908318 Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-02-04 10:58:39 Share Опубліковано: 2011-02-04 10:58:39 или может быть исправить баг в rlm_stg от последней сборки rc2? ip-test:~# /sbin/radiusd -X Starting - reading configuration files ... reread_config: reading radiusd.conf Config: including file: /etc/raddb/proxy.conf Config: including file: /etc/raddb/clients.conf Config: including file: /etc/raddb/snmp.conf Config: including file: /etc/raddb/eap.conf main: prefix = "/" main: localstatedir = "/var" main: logdir = "/var/log/freeradius" main: libdir = "/lib/" main: radacctdir = "/var/log/freeradius/radacct" main: hostname_lookups = no main: max_request_time = 30 main: cleanup_delay = 5 main: max_requests = 1024 main: delete_blocked_requests = 0 main: port = 0 main: allow_core_dumps = no main: log_stripped_names = no main: log_file = "/var/log/freeradius/radius.log" main: log_auth = no main: log_auth_badpass = no main: log_auth_goodpass = no main: pidfile = "/var/run/freeradius.pid" main: user = "root" main: group = "root" main: usercollide = no main: lower_user = "no" main: lower_pass = "no" main: nospace_user = "no" main: nospace_pass = "no" main: checkrad = "//sbin/checkrad" main: proxy_requests = yes proxy: retry_delay = 5 proxy: retry_count = 3 proxy: synchronous = no proxy: default_fallback = yes proxy: dead_time = 120 proxy: post_proxy_authorize = no proxy: wake_all_if_all_dead = no security: max_attributes = 200 security: reject_delay = 1 security: status_server = no main: debug_level = 0 read_config_files: reading dictionary read_config_files: reading naslist Using deprecated naslist file. Support for this will go away soon. read_config_files: reading clients read_config_files: reading realms radiusd: entering modules setup Module: Library search path is /lib Ошибка сегментирования ip-test:~# сейчас работает от rc1 Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2012-10-17 11:33:52 Share Опубліковано: 2012-10-17 11:33:52 доброго времени суток, пытаюсь заставить работать связку: accel-ppp+rlm_stg+stargazer на centos6 x64 в момент авторизации получаю: Debug: rlm_stg: stg_authorize() Ошибка сегментирования в исходниках в этом месте: DEBUG("rlm_stg: stg_authorize()"); uname = pairfind(request->packet->vps, PW_USER_NAME); if (uname) { DEBUG("rlm_stg: stg_authorize() user name defined as '%s'", uname->vp_strvalue); } else { DEBUG("rlm_stg: stg_authorize() user name undefined"); return RLM_MODULE_FAIL; } т.е. что-то не так с uname, кто силен в кодинге? Хелп... Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас