Problem with rlm_perl

Волошин Вячеслав voloshin at maks.net
Tue Apr 7 12:27:52 CEST 2009


Hello.

Config:
perl auth_perl_pppoe {
    module = /var/www/radius/radius_auth.pl
    func_accounting = accounting
}

perl acc_perl_pppoe {
    module = /var/www/radius/radius_accounting.pl
    func_authenticate = authenticate
}

-----------------------------------------------------------------
authenticate {
        Auth-Type PPPOE_AUTH {
            auth_perl_pppoe
        }

}

#
#  Accounting.  Log the accounting data.
#
accounting {
        Acct-Type PPPOE_ACC {
            acc_perl_pppoe
        }
        detail
        unix
        radutmp
}


this error in radiusd -X:


rad_recv: Access-Request packet from host 93.95.41.141 port 53773, id=8,
length=146
        Service-Type = Framed-User
        Framed-Protocol = PPP
        NAS-Port = 100
        NAS-Port-Type = Ethernet
        User-Name = "pppoe_test"
        Calling-Station-Id = "00:13:77:60:60:CB"
        Called-Station-Id = "internet"
        NAS-Port-Id = "e2_v15"
        CHAP-Challenge = 0x3b30fc1959ca610275bdc66582b579cf
        CHAP-Password = 0x013e0573332525cd3ebc797dbe68f0969d
        NAS-Identifier = "ntk-hsgw"
        NAS-IP-Address = 93.95.41.141
+- entering group authorize {...}
++[preprocess] returns ok
[suffix] No '@' in User-Name = "pppoe_test", looking up realm NULL
[suffix] No such realm "NULL"
++[suffix] returns noop
++[mschap] returns noop
++[unix] returns notfound
[files] users: Matched entry DEFAULT at line 1
[files] users: Matched entry DEFAULT at line 7
[files] users: Matched entry DEFAULT at line 19
++[files] returns ok
++[logintime] returns noop
[pap] WARNING! No "known good" password found for the user.  Authentication
may fail because of this.
++[pap] returns noop
Found Auth-Type = PPPOE_AUTH
+- entering group PPPOE_AUTH {...}
GOT CLONE -1209066800 0x91011d8
rlm_perl: Added pair NAS-Port-Type = Ethernet
rlm_perl: Added pair CHAP-Password = 0x013e0573332525cd3ebc797dbe68f0969d
rlm_perl: Added pair Huntgroup-Name = ntk_pppoe
rlm_perl: Added pair Service-Type = Framed-User
rlm_perl: Added pair Called-Station-Id = internet
rlm_perl: Added pair Calling-Station-Id = 00:13:77:60:60:CB
rlm_perl: Added pair Framed-Protocol = PPP
rlm_perl: Added pair User-Name = pppoe_test
rlm_perl: Added pair CHAP-Challenge = 0x3b30fc1959ca610275bdc66582b579cf
rlm_perl: Added pair NAS-Identifier = ntk-hsgw
rlm_perl: Added pair NAS-IP-Address = 93.95.41.141
rlm_perl: Added pair NAS-Port = 100
rlm_perl: Added pair NAS-Port-Id = e2_v15
rlm_perl: Added pair Framed-Protocol = PPP
rlm_perl: Added pair Service-Type = Framed-User
rlm_perl: Added pair Class = dialup
rlm_perl: Added pair Mikrotik-Rate-Limit = 256k
rlm_perl: Added pair Framed-Compression = Van-Jacobson-TCP-IP
rlm_perl: Added pair Auth-Type = PPPOE_AUTH
++[auth_perl_pppoe] returns ok
Login OK: [pppoe_test] (from client ntk-hsgw port 100 cli 00:13:77:60:60:CB)
+- entering group post-auth {...}
++[exec] returns noop
Sending Access-Accept of id 8 to 93.95.41.141 port 53773
        Framed-Protocol = PPP
        Service-Type = Framed-User
        Class = 0x6469616c7570
        Mikrotik-Rate-Limit = "256k"
        Framed-Compression = Van-Jacobson-TCP-IP
Finished request 0.
Going to the next request
Waking up in 4.9 seconds.
rad_recv: Accounting-Request packet from host 93.95.41.141 port 57551, id=9,
length=157
        Service-Type = Framed-User
        Framed-Protocol = PPP
        NAS-Port = 100
        NAS-Port-Type = Ethernet
        User-Name = "pppoe_test"
        Calling-Station-Id = "00:13:77:60:60:CB"
        Called-Station-Id = "internet"
        NAS-Port-Id = "e2_v15"
        Class = 0x6469616c7570
        Acct-Session-Id = "8170005c"
        Framed-IP-Address = 93.95.42.63
        Acct-Authentic = RADIUS
        Event-Timestamp = "Apr  7 2009 17:07:22 MSD"
        Acct-Status-Type = Start
        NAS-Identifier = "ntk-hsgw"
        NAS-IP-Address = 93.95.41.141
        Acct-Delay-Time = 0
+- entering group preacct {...}
++[preprocess] returns ok
[acct_unique] Hashing 'NAS-Port = 100,Client-IP-Address =
93.95.41.141,NAS-IP-Address = 93.95.41.141,Acct-Session-Id =
"8170005c",User-Name = "pppoe_test"'
[acct_unique] Acct-Unique-Session-ID = "de65ab6044a69020".
++[acct_unique] returns ok
[files] acct_users: Matched entry DEFAULT at line 29
++[files] returns ok
  Found Acct-Type PPPOE_ACC
+- entering group PPPOE_ACC {...}
rlm_perl: perl_embed:: module = /var/www/radius/radius_accounting.pl , func
= accounting exit status= Undefined subroutine &main::accounting called.
Use of uninitialized value.
rlm_perl: Added pair NAS-Port-Type = Ethernet
rlm_perl: Added pair Acct-Session-Id = 8170005c
rlm_perl: Added pair Service-Type = Framed-User
rlm_perl: Added pair Acct-Unique-Session-Id = de65ab6044a69020
rlm_perl: Added pair Called-Station-Id = internet
rlm_perl: Added pair Acct-Authentic = RADIUS
rlm_perl: Added pair Acct-Status-Type = Start
rlm_perl: Added pair NAS-IP-Address = 93.95.41.141
rlm_perl: Added pair NAS-Port-Id = e2_v15
rlm_perl: Added pair Huntgroup-Name = ntk_pppoe
rlm_perl: Added pair Calling-Station-Id = 00:13:77:60:60:CB
rlm_perl: Added pair Framed-Protocol = PPP
rlm_perl: Added pair User-Name = pppoe_test
rlm_perl: Added pair Event-Timestamp = Apr  7 2009 17:07:22 MSD
rlm_perl: Added pair NAS-Identifier = ntk-hsgw
rlm_perl: Added pair Framed-IP-Address = 93.95.42.63
rlm_perl: Added pair Class = 0x6469616c7570
rlm_perl: Added pair NAS-Port = 100
rlm_perl: Added pair Acct-Delay-Time = 0
rlm_perl: Added pair Acct-Type = PPPOE_ACC
++[acc_perl_pppoe] returns reject
Finished request 1.
Cleaning up request 1 ID 9 with timestamp +8
Going to the next request
Waking up in 4.9 seconds.
rad_recv: Accounting-Request packet from host 93.95.41.141 port 57551, id=9,
length=157
        Service-Type = Framed-User
        Framed-Protocol = PPP
        NAS-Port = 100
        NAS-Port-Type = Ethernet
        User-Name = "pppoe_test"
        Calling-Station-Id = "00:13:77:60:60:CB"
        Called-Station-Id = "internet"
        NAS-Port-Id = "e2_v15"
        Class = 0x6469616c7570
        Acct-Session-Id = "8170005c"
        Framed-IP-Address = 93.95.42.63
        Acct-Authentic = RADIUS
        Event-Timestamp = "Apr  7 2009 17:07:22 MSD"
        Acct-Status-Type = Start
        NAS-Identifier = "ntk-hsgw"
        NAS-IP-Address = 93.95.41.141
        Acct-Delay-Time = 4
+- entering group preacct {...}
++[preprocess] returns ok
[acct_unique] Hashing 'NAS-Port = 100,Client-IP-Address =
93.95.41.141,NAS-IP-Address = 93.95.41.141,Acct-Session-Id =
"8170005c",User-Name = "pppoe_test"'
[acct_unique] Acct-Unique-Session-ID = "de65ab6044a69020".
++[acct_unique] returns ok
[files] acct_users: Matched entry DEFAULT at line 29
++[files] returns ok
  Found Acct-Type PPPOE_ACC
+- entering group PPPOE_ACC {...}
rlm_perl: perl_embed:: module = /var/www/radius/radius_accounting.pl , func
= accounting exit status= Undefined subroutine &main::accounting called.
Segmentation fault


But accounting exist in /var/www/radius/radius_accounting.pl. Why it?



Formula+ LTD,
т.(8617) 61-02-01
ф.(8617) 61-34-16
м.(918) 634-7550
voloshin at maks.net
www.formulaplus.ru




More information about the Freeradius-Users mailing list