problem with perl...

Tyller D tyllerd at gmail.com
Thu Aug 25 11:21:45 CEST 2011


> Hi
>
> Im trying to run freeradius, using rlm_perl, and centos 6.
>
> after installing ( yum install freeradius freeradius-mysql freeradius-perl
> freeradius-utils ). when I and start free radius I fails with this error
>
> Can't load '/usr/local/lib64/perl5/auto/DBI/DBI.so' for module DBI:
> /usr/local/lib64/perl5/auto/DBI/DBI.so: undefined symbol: PL_memory_wrap at
> /usr/lib64/perl5/DynaLoader.pm line 200.
>  at /usr/local/lib64/perl5/DBI.pm line 268
> BEGIN failed--compilation aborted at /usr/local/lib64/perl5/DBI.pm line
> 268.
> Compilation failed in require at /etc/raddb/perl3.pl line 6.
> BEGIN failed--compilation aborted at /etc/raddb/perl3.pl line 6.
>
>
> here is the output of radius -X
>
>
> [root at crystaltowers raddb]# radiusd -X
> FreeRADIUS Version 2.1.9, for host x86_64-unknown-linux-gnu, built on Nov
> 12 2010 at 09:55:25
> 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 /etc/raddb/radiusd.conf
> including configuration file /etc/raddb/proxy.conf
> including configuration file /etc/raddb/clients.conf
> including configuration file /etc/raddb/sites-available/dynamic-clients
> including files in directory /etc/raddb/modules/
> including configuration file /etc/raddb/modules/detail.log
> including configuration file /etc/raddb/modules/realm
> including configuration file /etc/raddb/modules/passwd
> including configuration file /etc/raddb/modules/inner-eap
> including configuration file /etc/raddb/modules/detail
> including configuration file /etc/raddb/modules/acct_unique
> including configuration file /etc/raddb/modules/attr_filter
> including configuration file /etc/raddb/modules/expiration
> including configuration file /etc/raddb/modules/detail.example.com
> including configuration file /etc/raddb/modules/etc_group
> including configuration file /etc/raddb/modules/otp
> including configuration file /etc/raddb/modules/digest
> including configuration file /etc/raddb/modules/smbpasswd
> including configuration file /etc/raddb/modules/ippool
> including configuration file /etc/raddb/modules/exec
> including configuration file /etc/raddb/modules/wimax
> including configuration file /etc/raddb/modules/smsotp
> including configuration file /etc/raddb/modules/sqlcounter_expire_on_login
> including configuration file /etc/raddb/modules/mac2vlan
> including configuration file /etc/raddb/modules/echo
> including configuration file /etc/raddb/modules/attr_rewrite
> including configuration file /etc/raddb/modules/policy
> including configuration file /etc/raddb/modules/pam
> including configuration file /etc/raddb/modules/mschap
> including configuration file /etc/raddb/modules/radutmp
> including configuration file /etc/raddb/modules/perl
> including configuration file /etc/raddb/modules/files
> including configuration file /etc/raddb/modules/ldap
> including configuration file /etc/raddb/modules/counter
> including configuration file /etc/raddb/modules/preprocess
> including configuration file /etc/raddb/modules/checkval
> including configuration file /etc/raddb/modules/always
> including configuration file /etc/raddb/modules/ntlm_auth
> including configuration file /etc/raddb/modules/linelog
> including configuration file /etc/raddb/modules/pap
> including configuration file /etc/raddb/modules/logintime
> including configuration file /etc/raddb/modules/expr
> including configuration file /etc/raddb/modules/chap
> including configuration file /etc/raddb/modules/sql_log
> including configuration file /etc/raddb/modules/cui
> including configuration file /etc/raddb/modules/mac2ip
> including configuration file /etc/raddb/modules/krb5
> including configuration file /etc/raddb/modules/sradutmp
> including configuration file /etc/raddb/modules/unix
> including configuration file /etc/raddb/eap.conf
> including configuration file /etc/raddb/sql.conf
> including configuration file /etc/raddb/sql/mysql/dialup.conf
> including configuration file /etc/raddb/sql/mysql/counter.conf
> including configuration file /etc/raddb/policy.conf
> including files in directory /etc/raddb/sites-enabled/
> including configuration file /etc/raddb/sites-enabled/inner-tunnel
> including configuration file /etc/raddb/sites-enabled/default
> including configuration file /etc/raddb/sites-enabled/control-socket
> main {
>     user = "radiusd"
>     group = "radiusd"
>     allow_core_dumps = no
> }
> including dictionary file /etc/raddb/dictionary
> main {
>     prefix = "/usr"
>     localstatedir = "/var"
>     logdir = "/var/log/radius"
>     libdir = "/usr/lib/freeradius"
>     radacctdir = "/var/log/radius/radacct"
>     hostname_lookups = no
>     max_request_time = 30
>     cleanup_delay = 5
>     max_requests = 1650065408
>     pidfile = "/var/run/radiusd/radiusd.pid"
>     checkrad = "/usr/sbin/checkrad"
>     debug_level = 0
>     proxy_requests = yes
>  log {
>     stripped_names = no
>     auth = yes
>     auth_badpass = yes
>     auth_goodpass = yes
>  }
>  security {
>     max_attributes = 200
>     reject_delay = 1
>     status_server = yes
>  }
> }
> 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 localhost {
>     ipaddr = 127.0.0.1
>     port = 1812
>     type = "auth"
>     secret = "testing123"
>     response_window = 20
>     max_outstanding = 65536
>     require_message_authenticator = no
>     zombie_period = 40
>     status_check = "status-server"
>     ping_interval = 30
>     check_interval = 30
>     num_answers_to_alive = 3
>     num_pings_to_alive = 3
>     revive_interval = 120
>     status_check_timeout = 4
>     irt = 2
>     mrt = 16
>     mrc = 5
>     mrd = 30
>  }
>  home_server_pool my_auth_failover {
>     type = fail-over
>     home_server = localhost
>  }
>  realm example.com {
>     auth_pool = my_auth_failover
>  }
>  realm LOCAL {
>  }
> radiusd: #### Loading Clients ####
>  client localhost {
>     ipaddr = 127.0.0.1
>     require_message_authenticator = no
>     secret = "testing123"
>     nastype = "other"
>  }
>  client dynamic {
>     ipaddr = 192.168.0.0
>     netmask = 16
>     require_message_authenticator = no
>     dynamic_clients = "dynamic_client_server"
>     lifetime = 86400
>  }
> radiusd: #### Instantiating modules ####
>  instantiate {
>  Module: Linked to module rlm_exec
>  Module: Instantiating exec
>   exec {
>     wait = no
>     input_pairs = "request"
>     shell_escape = yes
>   }
>  Module: Linked to module rlm_expr
>  Module: Instantiating expr
>  Module: Linked to module rlm_expiration
>  Module: Instantiating expiration
>   expiration {
>     reply-message = "Password Has Expired  "
>   }
>  Module: Linked to module rlm_logintime
>  Module: Instantiating logintime
>   logintime {
>     reply-message = "You are calling outside your allowed timespan  "
>     minimum-timeout = 60
>   }
>  }
> radiusd: #### Loading Virtual Servers ####
> server dynamic_client_server {
>  modules {
>  Module: Checking authorize {...} for more modules to load
>  Module: Linked to module rlm_always
>  Module: Instantiating ok
>   always ok {
>     rcode = "ok"
>     simulcount = 0
>     mpp = no
>   }
>  } # modules
> } # server
> server inner-tunnel {
>  modules {
>  Module: Checking authenticate {...} for more modules to load
>  Module: Linked to module rlm_pap
>  Module: Instantiating pap
>   pap {
>     encryption_scheme = "auto"
>     auto_header = no
>   }
>  Module: Linked to module rlm_chap
>  Module: Instantiating chap
>  Module: Linked to module rlm_mschap
>  Module: Instantiating mschap
>   mschap {
>     use_mppe = yes
>     require_encryption = no
>     require_strong = no
>     with_ntdomain_hack = no
>   }
>  Module: Linked to module rlm_unix
>  Module: Instantiating unix
>   unix {
>     radwtmp = "/var/log/radius/radwtmp"
>   }
>  Module: Linked to module rlm_eap
>  Module: Instantiating eap
>   eap {
>     default_eap_type = "md5"
>     timer_expire = 60
>     ignore_unknown_eap_types = no
>     cisco_accounting_username_bug = no
>     max_sessions = 4096
>   }
>  Module: Linked to sub-module rlm_eap_md5
>  Module: Instantiating eap-md5
>  Module: Linked to sub-module rlm_eap_leap
>  Module: Instantiating eap-leap
>  Module: Linked to sub-module rlm_eap_gtc
>  Module: Instantiating eap-gtc
>    gtc {
>     challenge = "Password: "
>     auth_type = "PAP"
>    }
>  Module: Linked to sub-module rlm_eap_tls
>  Module: Instantiating eap-tls
>    tls {
>     rsa_key_exchange = no
>     dh_key_exchange = yes
>     rsa_key_length = 512
>     dh_key_length = 512
>     verify_depth = 0
>     pem_file_type = yes
>     private_key_file = "/etc/raddb/certs/server.pem"
>     certificate_file = "/etc/raddb/certs/server.pem"
>     CA_file = "/etc/raddb/certs/ca.pem"
>     private_key_password = "whatever"
>     dh_file = "/etc/raddb/certs/dh"
>     random_file = "/etc/raddb/certs/random"
>     fragment_size = 1024
>     include_length = yes
>     check_crl = no
>     cipher_list = "DEFAULT"
>     cache {
>     enable = no
>     lifetime = 24
>     max_entries = 255
>     }
>    }
>  Module: Linked to sub-module rlm_eap_ttls
>  Module: Instantiating eap-ttls
>    ttls {
>     default_eap_type = "md5"
>     copy_request_to_tunnel = no
>     use_tunneled_reply = no
>     virtual_server = "inner-tunnel"
>     include_length = yes
>    }
>  Module: Linked to sub-module rlm_eap_peap
>  Module: Instantiating eap-peap
>    peap {
>     default_eap_type = "mschapv2"
>     copy_request_to_tunnel = no
>     use_tunneled_reply = no
>     proxy_tunneled_request_as_eap = yes
>     virtual_server = "inner-tunnel"
>    }
>  Module: Linked to sub-module rlm_eap_mschapv2
>  Module: Instantiating eap-mschapv2
>    mschapv2 {
>     with_ntdomain_hack = no
>    }
>  Module: Checking authorize {...} for more modules to load
>  Module: Linked to module rlm_realm
>  Module: Instantiating suffix
>   realm suffix {
>     format = "suffix"
>     delimiter = "@"
>     ignore_default = no
>     ignore_null = no
>   }
>  Module: Linked to module rlm_files
>  Module: Instantiating files
>   files {
>     usersfile = "/etc/raddb/users"
>     acctusersfile = "/etc/raddb/acct_users"
>     preproxy_usersfile = "/etc/raddb/preproxy_users"
>     compat = "no"
>   }
>  Module: Checking session {...} for more modules to load
>  Module: Linked to module rlm_radutmp
>  Module: Instantiating radutmp
>   radutmp {
>     filename = "/var/log/radius/radutmp"
>     username = "%{User-Name}"
>     case_sensitive = yes
>     check_with_nas = yes
>     perm = 384
>     callerid = yes
>   }
>  Module: Checking post-proxy {...} for more modules to load
>  Module: Checking post-auth {...} for more modules to load
>  Module: Linked to module rlm_attr_filter
>  Module: Instantiating attr_filter.access_reject
>   attr_filter attr_filter.access_reject {
>     attrsfile = "/etc/raddb/attrs.access_reject"
>     key = "%{User-Name}"
>   }
>  } # modules
> } # server
> server {
>  modules {
>  Module: Checking authenticate {...} for more modules to load
>  Module: Linked to module rlm_perl
>  Module: Instantiating perl
>   perl {
>     module = "/etc/raddb/perl3.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"
>   }
> Can't load '/usr/local/lib64/perl5/auto/DBI/DBI.so' for module DBI:
> /usr/local/lib64/perl5/auto/DBI/DBI.so: undefined symbol: PL_memory_wrap at
> /usr/lib64/perl5/DynaLoader.pm line 200.
>  at /usr/local/lib64/perl5/DBI.pm line 268
> BEGIN failed--compilation aborted at /usr/local/lib64/perl5/DBI.pm line
> 268.
> Compilation failed in require at /etc/raddb/perl3.pl line 6.
> BEGIN failed--compilation aborted at /etc/raddb/perl3.pl line 6.
> rlm_perl: perl_parse failed: /etc/raddb/perl3.pl not found or has syntax
> errors.
> /etc/raddb/modules/perl[7]: Instantiation failed for module "perl"
> /etc/raddb/sites-enabled/default[247]: Failed to load module "perl".
> /etc/raddb/sites-enabled/default[247]: Failed to parse "perl" entry.
>
>
> What could cause this? I have perl-DBD and perl-DBI installed and running
> the script manually works fine.
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20110825/5439a632/attachment.html>


More information about the Freeradius-Users mailing list