Freeradius crash with two radclient
fulvio fabiani
fabiani.fulvio at gmail.com
Wed Mar 21 21:04:39 CET 2012
Hi all,
we did some additional test by setting multithread debug on FreeRadius and
executing freeradius process tracing on server
Follow the server tracing output (each crash the same output):
*select(11, [4 6 7 8 9 10], NULL, NULL, {0, 302488}) = 1 (in [8], left {0,
302488})*
*recvfrom(8, "\4y\0\251", 4, MSG_PEEK, {sa_family=AF_INET,
sin_port=htons(38662), sin_addr=inet_addr("192.168.88.151")}, [16]) = 4*
*getsockname(8, {sa_family=AF_INET, sin_port=htons(2648),
sin_addr=inet_addr("192.168.88.132")}, [549755813904]) = 0*
*recvfrom(8, "\4y\0\251", 4, MSG_PEEK, {sa_family=AF_INET,
sin_port=htons(38662), sin_addr=inet_addr("192.168.88.151")}, [16]) = 4*
*recvfrom(8, "\4y\0\251@\247#\33364\371I2\346Zd\305F\215A\1\0340208451346"...,
169, 0, {sa_family=AF_INET, sin_port=htons(38662),
sin_addr=inet_addr("192.168.88.151")}, [16]) = 169*
*futex(0x641998, FUTEX_WAKE_PRIVATE, 1) = 1*
*select(11, [4 6 7 8 9 10], NULL, NULL, {0, 301738} <unfinished ...>*
Freeradius output:
FreeRADIUS Version 2.1.11, for host x86_64-unknown-linux-gnu, built on Sep
22 2011 at 16:18:07
Copyright (C) 1999-2009 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 v2.
Starting - reading configuration files ...
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/radiusd.conf
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/proxy.conf
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/clients.conf
including files in directory
/product/freeradius-server-2.1.11/etc/raddb/modules/
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/files
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/counter
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/dynamic_clients
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/echo
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/logintime
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/always
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/sradutmp
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/mac2vlan
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/linelog
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/ippool
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/soh
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/detail.example.com
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/ntlm_auth
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/expiration
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/etc_group
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/wimax
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/chap
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/detail
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/acct_unique
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/detail.sc.de
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/expr
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/digest
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/realm
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/krb5
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/perl
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/redis
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/policy
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/detail.log
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/opendirectory
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/radutmp
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/pam
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/smbpasswd
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/checkval
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/ldap
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/preprocess
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/sql_log
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/passwd
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/inner-eap
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/smsotp
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/attr_rewrite
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/exec
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/mac2ip
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/sqlcounter_expire_on_login
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/rediswho
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/pap
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/attr_filter
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/otp
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/unix
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/mschap
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/replicate
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/modules/cui
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/eap.conf
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/policy.conf
including files in directory
/product/freeradius-server-2.1.11/etc/raddb/sites-enabled/
including configuration file
/product/freeradius-server-2.1.11/etc/raddb/sites-enabled/default
including dictionary file
/product/freeradius-server-2.1.11/etc/raddb/dictionary
main {
name = "radiusd"
prefix = "/product/freeradius-server-2.1.11"
localstatedir = "/product/freeradius-server-2.1.11/var"
sbindir = "/product/freeradius-server-2.1.11/sbin"
logdir = "/product/logs/freeradius/"
run_dir = "/product/freeradius-server-2.1.11/var/run/radiusd"
libdir = "/product/freeradius-server-2.1.11/lib"
radacctdir = "/product/logs/freeradius//radacct"
hostname_lookups = no
max_request_time = 30
cleanup_delay = 5
max_requests = 1024
pidfile =
"/product/freeradius-server-2.1.11/var/run/radiusd/radiusd.pid"
checkrad = "/product/freeradius-server-2.1.11/sbin/checkrad"
debug_level = 0
proxy_requests = yes
log {
stripped_names = no
auth = yes
auth_badpass = no
auth_goodpass = no
}
security {
max_attributes = 200
reject_delay = 0
status_server = no
}
}
radiusd: #### Loading Realms and Home Servers ####
proxy server {
retry_delay = 5
retry_count = 3
default_fallback = no
dead_time = 120
wake_all_if_all_dead = no
}
home_server home.sc.de {
ipaddr = localhost IP address [127.0.0.1]
port = 8888
type = "acct"
secret = "wonderland"
response_window = 6
max_outstanding = 65536
zombie_period = 40
status_check = "none"
ping_interval = 30
check_interval = 30
num_answers_to_alive = 3
num_pings_to_alive = 3
revive_interval = 300
status_check_timeout = 4
username = "test_user_status_check"
}
home_server_pool acct_pool.sc.de {
type = load-balance
virtual_server = home.sc.de
home_server = home.sc.de
}
realm acct_realm.sc.de {
acct_pool = acct_pool.sc.de
}
radiusd: #### Loading Clients ####
client localhost {
ipaddr = sctgeradiusservice IP address [192.168.88.132]
require_message_authenticator = no
secret = "testing123"
nastype = "other"
}
client balancer {
ipaddr = sctgeradiusbalancer IP address [192.168.88.150]
require_message_authenticator = no
secret = "testing123"
nastype = "other"
}
client external {
ipaddr = 192.168.88.0
netmask = 24
require_message_authenticator = no
secret = "testing123"
nastype = "other"
}
client old_client {
ipaddr = 192.168.20.0
netmask = 24
require_message_authenticator = no
secret = "grinsekatze"
nastype = "other"
}
radiusd: #### Instantiating modules ####
instantiate {
Module: Linked to module rlm_exec
Module: Instantiating module "exec" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/exec
exec {
wait = no
input_pairs = "request"
shell_escape = yes
}
Module: Linked to module rlm_expr
Module: Instantiating module "expr" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/expr
Module: Linked to module rlm_expiration
Module: Instantiating module "expiration" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/expiration
expiration {
reply-message = "Password Has Expired "
}
Module: Linked to module rlm_logintime
Module: Instantiating module "logintime" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/logintime
logintime {
reply-message = "You are calling outside your allowed timespan "
minimum-timeout = 60
}
}
radiusd: #### Loading Virtual Servers ####
server { # from file
/product/freeradius-server-2.1.11/etc/raddb/radiusd.conf
modules {
Module: Checking authenticate {...} for more modules to load
Module: Linked to module rlm_always
Module: Instantiating module "ok" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/always
always ok {
rcode = "ok"
simulcount = 0
mpp = no
}
Module: Linked to module rlm_perl
Module: Instantiating module "perl" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/perl
perl {
module = "/product/freeradius-server-2.1.11/etc/raddb/policy.pl"
func_authorize = "authorize"
func_authenticate = "authenticate"
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_post_auth = "post_auth"
func_recv_coa = "recv_coa"
func_send_coa = "send_coa"
}
Module: Checking authorize {...} for more modules to load
Module: Linked to module rlm_preprocess
Module: Instantiating module "preprocess" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/preprocess
preprocess {
huntgroups = "/product/freeradius-server-2.1.11/etc/raddb/huntgroups"
hints = "/product/freeradius-server-2.1.11/etc/raddb/hints"
with_ascend_hack = no
ascend_channels_per_line = 23
with_ntdomain_hack = no
with_specialix_jetstream_hack = no
with_cisco_vsa_hack = no
with_alvarion_vsa_hack = no
}
Module: Linked to module rlm_files
Module: Instantiating module "files" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/files
files {
usersfile = "/product/freeradius-server-2.1.11/etc/raddb/users"
acctusersfile = "/product/freeradius-server-2.1.11/etc/raddb/acct_users"
preproxy_usersfile =
"/product/freeradius-server-2.1.11/etc/raddb/preproxy_users"
compat = "no"
}
Module: Checking preacct {...} for more modules to load
Module: Checking accounting {...} for more modules to load
Module: Linked to module rlm_detail
Module: Instantiating module "detail.sc.de" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/detail.sc.de
detail detail.sc.de {
detailfile = "/product/logs/freeradius//radacct/
detail.sc.de/detail-%Y%m%d:%H"
header = "%t"
detailperm = 384
dirperm = 493
locking = no
log_packet_header = no
}
Module: Checking pre-proxy {...} for more modules to load
Module: Checking post-proxy {...} for more modules to load
Module: Checking post-auth {...} for more modules to load
} # modules
} # server
server home.sc.de { # from file
/product/freeradius-server-2.1.11/etc/raddb/proxy.conf
modules {
Module: Checking preacct {...} for more modules to load
Module: Checking accounting {...} for more modules to load
Module: Linked to module rlm_replicate
Module: Instantiating module "replicate" from file
/product/freeradius-server-2.1.11/etc/raddb/modules/replicate
Module: Checking pre-proxy {...} for more modules to load
Module: Checking post-proxy {...} for more modules to load
} # modules
} # server
thread pool {
start_servers = 5
max_servers = 32
min_spare_servers = 3
max_spare_servers = 10
max_requests_per_server = 0
cleanup_delay = 5
max_queue_size = 65536
}
Thread spawned new child 1. Total threads in pool: 1
Thread spawned new child 2. Total threads in pool: 2
Thread spawned new child 3. Total threads in pool: 3
Thread spawned new child 4. Total threads in pool: 4
Thread spawned new child 5. Total threads in pool: 5
Thread pool initialized
radiusd: #### Opening IP addresses and Ports ####
listen {
type = "auth"
ipaddr = sctgeradiusservice IP address [192.168.88.132]
port = 1647
Thread 1 waiting to be assigned a request
Thread 2 waiting to be assigned a request
Thread 3 waiting to be assigned a request
Thread 4 waiting to be assigned a request
Thread 5 waiting to be assigned a request
Re-wait 5
Re-wait 4
Re-wait 3
Re-wait 2
Re-wait 1
}
listen {
type = "acct"
ipaddr = sctgeradiusservice IP address [192.168.88.132]
port = 1648
Re-wait 5
Re-wait 4
Re-wait 3
Re-wait 2
Re-wait 1
}
Re-wait 5
Re-wait 4
Re-wait 3
Re-wait 2
Re-wait 1
Re-wait 5
Re-wait 4
Re-wait 3
Re-wait 2
Re-wait 1
... adding new socket proxy address * port 43423
Listening on authentication address 192.168.88.132 port 1647
Listening on accounting address 192.168.88.132 port 1648 as server
home.sc.de
Listening on proxy address 192.168.88.132 port 1649
Ready to process requests.
Threads: total/active/spare threads = 5/0/5
Waking up in 0.9 seconds.
Thread 5 got semaphore
.....
....
Used library:
/product/freeradius-server-2.1.11/sbin/radiusd
/product/freeradius-server-2.1.11/sbin/radiusd
[heap]
/lib64/ld-2.5.so
/lib64/ld-2.5.so
/lib64/ld-2.5.so
/lib64/libc-2.5.so
/lib64/libc-2.5.so
/lib64/libc-2.5.so
/lib64/libc-2.5.so
/lib64/libdl-2.5.so
/lib64/libdl-2.5.so
/lib64/libdl-2.5.so
/lib64/libdl-2.5.so
/lib64/libm-2.5.so
/lib64/libm-2.5.so
/lib64/libm-2.5.so
/lib64/libm-2.5.so
/lib64/libpthread-2.5.so
/lib64/libpthread-2.5.so
/lib64/libpthread-2.5.so
/lib64/libpthread-2.5.so
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
/lib64/libnsl-2.5.so
/lib64/libnsl-2.5.so
/lib64/libnsl-2.5.so
/lib64/libnsl-2.5.so
/lib64/libresolv-2.5.so
/lib64/libresolv-2.5.so
/lib64/libresolv-2.5.so
/lib64/libresolv-2.5.so
/lib64/libutil-2.5.so
/lib64/libutil-2.5.so
/lib64/libutil-2.5.so
/lib64/libutil-2.5.so
/lib64/libgcc_s-4.1.2-20080825.so.1
/lib64/libgcc_s-4.1.2-20080825.so.1
/lib64/libgcc_s-4.1.2-20080825.so.1
/lib64/libcrypt-2.5.so
/lib64/libcrypt-2.5.so
/lib64/libcrypt-2.5.so
/lib64/libcrypt-2.5.so
/usr/lib64/libstdc++.so.6.0.8
/usr/lib64/libstdc++.so.6.0.8
/usr/lib64/libstdc++.so.6.0.8
/usr/lib64/libstdc++.so.6.0.8
/product/freeradius-server-2.1.11/lib/libfreeradius-radius-2.1.11.so
/product/freeradius-server-2.1.11/lib/libfreeradius-radius-2.1.11.so
/product/freeradius-server-2.1.11/lib/libfreeradius-radius-2.1.11.so
/product/freeradius-server-2.1.11/lib/libltdl.so.3.1.4
/product/freeradius-server-2.1.11/lib/libltdl.so.3.1.4
/product/freeradius-server-2.1.11/lib/libltdl.so.3.1.4
/lib64/libnss_files-2.5.so
/lib64/libnss_files-2.5.so
/lib64/libnss_files-2.5.so
/lib64/libnss_files-2.5.so
/product/freeradius-server-2.1.11/lib/rlm_exec-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_exec-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_exec-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_expr-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_expr-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_expr-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_expiration-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_expiration-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_expiration-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_logintime-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_logintime-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_logintime-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_always-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_always-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_always-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_perl-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_perl-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_perl-2.1.11.so
/usr/lib/locale/locale-archive
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/DBI/DBI.so
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/DBI/DBI.so
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/DBI/DBI.so
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/List/Util/Util.so
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/List/Util/Util.so
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/List/Util/Util.so
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/Oracle/Oracle.so
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/Oracle/Oracle.so
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/Oracle/Oracle.so
/usr/lib/oracle/11.2/client64/lib/libocci.so.11.1
/usr/lib/oracle/11.2/client64/lib/libocci.so.11.1
/usr/lib/oracle/11.2/client64/lib/libocci.so.11.1
/usr/lib/oracle/11.2/client64/lib/libclntsh.so.11.1
/usr/lib/oracle/11.2/client64/lib/libclntsh.so.11.1
/usr/lib/oracle/11.2/client64/lib/libclntsh.so.11.1
/usr/lib64/gconv/gconv-modules.cache
/usr/lib/oracle/11.2/client64/lib/libnnz11.so
/usr/lib/oracle/11.2/client64/lib/libnnz11.so
/usr/lib/oracle/11.2/client64/lib/libnnz11.so
/usr/lib64/libaio.so.1.0.1
/usr/lib64/libaio.so.1.0.1
/usr/lib64/libaio.so.1.0.1
/product/freeradius-server-2.1.11/lib/rlm_preprocess-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_preprocess-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_preprocess-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_files-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_files-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_files-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_detail-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_detail-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_detail-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_replicate-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_replicate-2.1.11.so
/product/freeradius-server-2.1.11/lib/rlm_replicate-2.1.11.so
[stack]
[vdso]
[vsyscall]
2012/3/21 Alan DeKok <aland at deployingradius.com>
> fulvio fabiani wrote:
> > Hi Alan,
> > We did same test with freeRadius version 2.1.12, unfortunately same
> > result: as we start second radClient, Freeradius instance crash.
> > Answering previous questions, no we don't use rlm_sql, we use perl
> > module, that via oracle perl driver, executes query on the database.
>
> See doc/bugs
>
> It describes how to debug problems with the server.
>
> This is documented.
>
> You might also want to try the "v2.1.x" branch from git. It has some
> fixes to the Perl module which may help.
>
> Alan DeKok.
> -
> List info/subscribe/unsubscribe? See
> http://www.freeradius.org/list/users.html
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20120321/588bf406/attachment-0001.html>
More information about the Freeradius-Users
mailing list