roma33rus Опубликовано 20 июня, 2019 · Жалоба 18 минут назад, NewUse сказал: попробуйте теперь пересобрать радиус с новым perl Ага. я и радиус вчера сразу пересобрал. 18 минут назад, NewUse сказал: а в чём смысл? да, ничего толкового не получилось. Пол часа назад попробовал. 20 минут назад, NewUse сказал: а где Вы вычитали, что треды поддерживаются в rlm_perl ну и проверяйте конфиг, если поддерживаются. Да собственно на форуме разработчиков нашего биллинга и прочитал: http://abills.net.ua/forum/viewtopic.php?t=6982 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
NewUse Опубликовано 20 июня, 2019 · Жалоба 29 минут назад, roma33rus сказал: Да собственно на форуме разработчиков нашего биллинга и прочитал: http://abills.net.ua/forum/viewtopic.php?t=6982 тогда целесообразно, наверное там же спрашивать при конфигурации freeradius точно подхватил нужный perl с нужными хедерами? запустите freeradius в режиме дебага (-X), ничего дополнительно не даёт? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roma33rus Опубликовано 21 июня, 2019 · Жалоба 21 час назад, NewUse сказал: тогда целесообразно, наверное там же спрашивать Да я уже обратился к ним. 21 час назад, NewUse сказал: при конфигурации freeradius точно подхватил нужный perl с нужными хедерами? запустите freeradius в режиме дебага (-X), ничего дополнительно не даёт? в дебаге ничего нового совсем. Скрытый текст FreeRADIUS Version 3.0.19 Copyright (C) 1999-2019 The FreeRADIUS server project and contributors There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE You may redistribute copies of FreeRADIUS under the terms of the GNU General Public License For more information about these matters, see the file named COPYRIGHT Starting - reading configuration files ... including dictionary file /usr/local/share/freeradius/dictionary including dictionary file /usr/local/share/freeradius/dictionary.dhcp including dictionary file /usr/local/share/freeradius/dictionary.vqp including dictionary file /usr/local/etc/raddb/dictionary including configuration file /usr/local/etc/raddb/radiusd.conf including files in directory /usr/local/etc/raddb/mods-enabled/ including configuration file /usr/local/etc/raddb/mods-enabled/always including configuration file /usr/local/etc/raddb/mods-enabled/perl including files in directory /usr/local/etc/raddb/policy.d/ including configuration file /usr/local/etc/raddb/policy.d/control including configuration file /usr/local/etc/raddb/policy.d/dhcp including configuration file /usr/local/etc/raddb/policy.d/eap including configuration file /usr/local/etc/raddb/policy.d/cui including configuration file /usr/local/etc/raddb/policy.d/debug including configuration file /usr/local/etc/raddb/policy.d/accounting including configuration file /usr/local/etc/raddb/policy.d/moonshot-targeted-ids including configuration file /usr/local/etc/raddb/policy.d/abfab-tr including configuration file /usr/local/etc/raddb/policy.d/rfc7542 including configuration file /usr/local/etc/raddb/policy.d/operator-name including configuration file /usr/local/etc/raddb/policy.d/filter including configuration file /usr/local/etc/raddb/policy.d/canonicalization including files in directory /usr/local/etc/raddb/sites-enabled/ including configuration file /usr/local/etc/raddb/sites-enabled/dhcp main { security { user = "radius" group = "radius" allow_core_dumps = yes } name = "radiusd" prefix = "/usr/local" localstatedir = "/usr/local/var" logdir = "/var/log/radius" run_dir = "/var/run/radiusd" } Cannot update core dump limit: Operation not permitted Core dumps are enabled main { name = "radiusd" prefix = "/usr/local" localstatedir = "/usr/local/var" sbindir = "/usr/local/sbin" logdir = "/var/log/radius" run_dir = "/var/run/radiusd" libdir = "/usr/local/lib" radacctdir = "/var/log/radius/radacct" hostname_lookups = no max_request_time = 30 cleanup_delay = 5 max_requests = 10240000 pidfile = "/var/run/radiusd/radiusd.pid" checkrad = "/usr/local/sbin/checkrad" debug_level = 0 proxy_requests = no log { stripped_names = no auth = no auth_badpass = no auth_goodpass = no colourise = yes msg_denied = "You are already logged in - access denied" } resources { } security { max_attributes = 200 reject_delay = 2.000000 status_server = no allow_vulnerable_openssl = "yes" } } radiusd: #### Loading Realms and Home Servers #### radiusd: #### Loading Clients #### Debugger not attached radiusd: #### Instantiating modules #### modules { # Loaded module rlm_always # Loading module "reject" from file /usr/local/etc/raddb/mods-enabled/always always reject { rcode = "reject" simulcount = 0 mpp = no } # Loading module "fail" from file /usr/local/etc/raddb/mods-enabled/always always fail { rcode = "fail" simulcount = 0 mpp = no } # Loading module "ok" from file /usr/local/etc/raddb/mods-enabled/always always ok { rcode = "ok" simulcount = 0 mpp = no } # Loading module "handled" from file /usr/local/etc/raddb/mods-enabled/always always handled { rcode = "handled" simulcount = 0 mpp = no } # Loading module "invalid" from file /usr/local/etc/raddb/mods-enabled/always always invalid { rcode = "invalid" simulcount = 0 mpp = no } # Loading module "userlock" from file /usr/local/etc/raddb/mods-enabled/always always userlock { rcode = "userlock" simulcount = 0 mpp = no } # Loading module "notfound" from file /usr/local/etc/raddb/mods-enabled/always always notfound { rcode = "notfound" simulcount = 0 mpp = no } # Loading module "noop" from file /usr/local/etc/raddb/mods-enabled/always always noop { rcode = "noop" simulcount = 0 mpp = no } # Loading module "updated" from file /usr/local/etc/raddb/mods-enabled/always always updated { rcode = "updated" simulcount = 0 mpp = no } # Loaded module rlm_perl # Loading module "perl" from file /usr/local/etc/raddb/mods-enabled/perl perl { filename = "/usr/abills/libexec/rlm_perl.pl" func_authorize = "authorize" func_authenticate = "authenticate" func_post_auth = "post_auth" func_accounting = "accounting" func_preacct = "preacct" func_checksimul = "checksimul" func_detach = "detach" func_xlat = "xlat" func_pre_proxy = "pre_proxy" func_post_proxy = "post_proxy" func_recv_coa = "recv_coa" func_send_coa = "send_coa" } instantiate { } # Instantiating module "reject" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "fail" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "ok" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "handled" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "invalid" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "userlock" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "notfound" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "noop" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "updated" from file /usr/local/etc/raddb/mods-enabled/always # Instantiating module "perl" from file /usr/local/etc/raddb/mods-enabled/perl } # modules radiusd: #### Loading Virtual Servers #### server { # from file /usr/local/etc/raddb/radiusd.conf } # server server dhcp { # from file /usr/local/etc/raddb/sites-enabled/dhcp # Loading dhcp DHCP-Discover {...} # Loading dhcp DHCP-Request {...} # Loading dhcp DHCP-Inform {...} # Loading dhcp DHCP-Decline {...} # Loading dhcp {...} } # server dhcp radiusd: #### Opening IP addresses and Ports #### listen { type = "dhcp" ipaddr = 10.33.33.10 port = 67 No "interface" setting is defined. Only unicast DHCP will work } Listening on dhcp address 10.33.33.10 port 67 bound to server dhcp Ready to process requests Единственное, что это почему-то у меня perl 5.28.1 не собрался с threads, а 5.28.2 собрался и теперь на нем радиус крашится. Сейчас попробую 5.28.2 без threads собрать. Заметил, кстати, что радиус с perl threads стал кушать немного меньше памяти. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
NewUse Опубликовано 21 июня, 2019 · Жалоба 30 минут назад, roma33rus сказал: в дебаге ничего нового совсем. ну так креша надо дождаться... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roma33rus Опубликовано 21 июня, 2019 (изменено) · Жалоба 6 минут назад, NewUse сказал: ну так креша надо дождаться... А. Вы про это. Нет, так не пробовал. надо будет сделать. Запустил radiusd -X -xxx и увидел инфу, что радиус работает с thread. Сейчас оставлю его в дебаге и посмотрю чего скажет при креше radiusd -X -xxx Fri Jun 21 10:09:52 2019 : Debug: Server was built with: Fri Jun 21 10:09:52 2019 : Debug: accounting : yes Fri Jun 21 10:09:52 2019 : Debug: authentication : yes Fri Jun 21 10:09:52 2019 : Debug: ascend-binary-attributes : yes Fri Jun 21 10:09:52 2019 : Debug: coa : yes Fri Jun 21 10:09:52 2019 : Debug: control-socket : yes Fri Jun 21 10:09:52 2019 : Debug: detail : yes Fri Jun 21 10:09:52 2019 : Debug: dhcp : yes Fri Jun 21 10:09:52 2019 : Debug: dynamic-clients : yes Fri Jun 21 10:09:52 2019 : Debug: osfc2 : no Fri Jun 21 10:09:52 2019 : Debug: proxy : yes Fri Jun 21 10:09:52 2019 : Debug: regex-pcre : no Fri Jun 21 10:09:52 2019 : Debug: regex-posix : yes Fri Jun 21 10:09:52 2019 : Debug: regex-posix-extended : yes Fri Jun 21 10:09:52 2019 : Debug: session-management : yes Fri Jun 21 10:09:52 2019 : Debug: stats : yes Fri Jun 21 10:09:52 2019 : Debug: tcp : yes Fri Jun 21 10:09:52 2019 : Debug: threads : yes Fri Jun 21 10:09:52 2019 : Debug: tls : yes Fri Jun 21 10:09:52 2019 : Debug: unlang : yes Fri Jun 21 10:09:52 2019 : Debug: vmps : yes Fri Jun 21 10:09:52 2019 : Debug: developer : no Fri Jun 21 10:09:52 2019 : Debug: Server core libs: Fri Jun 21 10:09:52 2019 : Debug: freeradius-server : 3.0.19 Fri Jun 21 10:09:52 2019 : Debug: talloc : 2.0.* Fri Jun 21 10:09:52 2019 : Debug: ssl : 1.0.1e release Fri Jun 21 10:09:52 2019 : Debug: Endianness: Fri Jun 21 10:09:52 2019 : Debug: little Изменено 21 июня, 2019 пользователем roma33rus Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roma33rus Опубликовано 24 июня, 2019 · Жалоба Добрый день всем. Прям забавно получается. В дебаг режиме у меня радиус работает уже несколько дней. никаких ошибок и крешей. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roma33rus Опубликовано 27 июня, 2019 (изменено) · Жалоба Хочу поделиться результатами. 1. Изначально значит было взято Freeradius 3.0.19 из исходников и perl 5.28.1, тоже из исходников. При такой связке я получал ошибки как в первом моем сообщении и память кушал он изрядно: Скрытый текст Sun Jun 9 22:41:16 2019 : Error: 297 requests have been waiting in the processing queue for 38 seconds. Check that all databases are running properly! Sun Jun 9 22:41:16 2019 : Error: Unresponsive child for request 107175, in component post-auth module perl Sun Jun 9 22:41:16 2019 : WARNING: (106763) WARNING: Module rlm_perl became unblocked Sun Jun 9 22:41:16 2019 : Error: Unresponsive child for request 107183, in component post-auth module perl Sun Jun 9 22:41:17 2019 : WARNING: (106767) WARNING: Module rlm_perl became unblocked Sun Jun 9 22:41:17 2019 : Error: 299 requests have been waiting in the processing queue for 38 seconds. Check that all databases are running properly! Sun Jun 9 22:41:17 2019 : Error: Unresponsive child for request 107188, in component post-auth module perl Sun Jun 9 22:41:17 2019 : WARNING: (106774) WARNING: Module rlm_perl became unblocked Sun Jun 9 22:41:17 2019 : Error: Unresponsive child for request 107196, in component post-auth module perl Sun Jun 9 22:41:18 2019 : WARNING: (106779) WARNING: Module rlm_perl became unblocked Sun Jun 9 22:41:18 2019 : Error: 301 requests have been waiting in the processing queue for 38 seconds. Check that all databases are running properly! Sun Jun 9 22:41:18 2019 : Error: Unresponsive child for request 107202, in component post-auth module perl Sun Jun 9 22:41:19 2019 : WARNING: (106790) WARNING: Module rlm_perl became unblocked 2. Пересобираю Perl версии 5.28.2 с -Dusethreads. Тут ничего интересного не получилось, радиус начал падать с ошибкой: Скрытый текст radiusd[43025]: segfault at 7ff9ac917140 ip 00007ff9ac917140 sp 00007ff9af933638 error 14 in libfreeradius-dhcp.so[7ff9acd25000+7000] Далее путем чтения разных ресурсов в интернет было выяснено, что в радиусе была проблема утечки памяти. При этом советовали поставить радиус из репозитория, он там был пропатчен. При этом я не нашел никакого информации о том, сохранилась ли эта проблема до версии 3.0.19. 3. Идем дальше. Собираю perl 5.28.2 без поддержки threads и тут ситуация становится много лучше. Ошибок нет. Памяти кушает по божески. Работает стабильно несколько дней: Скрытый текст 4. Дальше ради эксперимента решил пересобрать радиус, отключив пару опций: ./configure --without-vmps --without-openssl. памяти стал кушать еще меньше. Тут я долго не стал смотреть как он работает: Скрытый текст 5. Ну и напоследок поставил я радиус версии 3.0.19 из репозитория по этой ссылки https://networkradius.com/freeradius-packages/. У меня кстати Centos 6. В этой ситуации опять же работает стабильно, ошибок нет, памяти кушает нормально: Скрытый текст При всех этих тестах через радиус работало 44 пользователя. Вопрос, на какую память обращать внимание стоит? Virtual Memory или Private Memory RSS? Изменено 27 июня, 2019 пользователем roma33rus Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
jffulcrum Опубликовано 27 июня, 2019 · Жалоба 4 часа назад, roma33rus сказал: Вопрос, на какую память обращать внимание стоит? Virtual Memory или Private Memory RSS? RSS. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roma33rus Опубликовано 27 июня, 2019 · Жалоба 1 час назад, jffulcrum сказал: RSS. Спасибо. Буду наблюдать тогда еще. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 27 июня, 2019 · Жалоба 14 часов назад, roma33rus сказал: 1. Изначально значит было взято Freeradius 3.0.19 из исходников и perl 5.28.1, тоже из исходников. При такой связке я получал ошибки как в первом моем сообщении и память кушал он изрядно: МАЗАХИСТ! http://netlab.dhis.org/wiki/ru:software:perl:dhcp_server Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...