Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    NEW Package: freeRADIUS 2.x

    Scheduled Pinned Locked Moved pfSense Packages
    628 Posts 80 Posters 739.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      markuhde
      last edited by

      I completely redid the configuration, deleted freeradius from config.xml and reinstalled package and started over. Same 25% CPU from the moment the package started. I'm clueless… what should I post?

      Here's the output of radiusd -X :

      [2.1-BETA1][admin@glacierfire.glaciercamp]/root(1): radiusd -X
      FreeRADIUS Version 2.2.0, for host amd64-portbld-freebsd8.3, built on Dec 20 2012 at 23:20:32
      Copyright (C) 1999-2012 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 /usr/pbi/freeradius-amd64/etc/raddb/radiusd.conf
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/clients.conf
      including files in directory /usr/pbi/freeradius-amd64/etc/raddb/modules/
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/wimax
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/always
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/attr_filter
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/attr_rewrite
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/cache
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/chap
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/checkval
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/cui
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/detail
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/detail.example.com
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/detail.log
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/dhcp_sqlippool
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/sql/mysql/ippool-dhcp.conf
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/digest
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/dynamic_clients
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/echo
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/etc_group
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/exec
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/expiration
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/expr
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/files
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/inner-eap
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/ippool
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/krb5
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/ldap
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/linelog
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/otp
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/logintime
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/mac2ip
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/mac2vlan
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/mschap
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/ntlm_auth
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/opendirectory
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/pam
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/pap
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/passwd
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/perl
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/policy
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/preprocess
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/radrelay
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/radutmp
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/realm
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/redis
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/rediswho
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/replicate
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/smbpasswd
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/smsotp
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/soh
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/sql_log
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/sqlcounter_expire_on_login
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/sradutmp
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/unix
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/acct_unique
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/motp
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/datacounter_acct
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/eap.conf
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/policy.conf
      including files in directory /usr/pbi/freeradius-amd64/etc/raddb/sites-enabled/
      including configuration file /usr/pbi/freeradius-amd64/etc/raddb/sites-enabled/default
      main {
      allow_core_dumps = no
      }
      including dictionary file /usr/pbi/freeradius-amd64/etc/raddb/dictionary
      main {
      name = "radiusd"
      prefix = "/usr/pbi/freeradius-amd64"
      localstatedir = "/var"
      sbindir = "/usr/pbi/freeradius-amd64/sbin"
      logdir = "/var/log"
      run_dir = "/var/run"
      libdir = "/usr/pbi/freeradius-amd64/lib/freeradius-2.1.12"
      radacctdir = "/var/log/radacct"
      hostname_lookups = no
      max_request_time = 30
      cleanup_delay = 5
      max_requests = 1024
      pidfile = "/var/run/radiusd.pid"
      checkrad = "/usr/pbi/freeradius-amd64/sbin/checkrad"
      debug_level = 0
      proxy_requests = yes
      log {
      stripped_names = no
      auth = yes
      auth_badpass = no
      auth_goodpass = no
      msg_badpass = ""
      msg_goodpass = ""
      }
      security {
      max_attributes = 200
      reject_delay = 1
      status_server = no
      }
      }
      radiusd: #### Loading Realms and Home Servers ####
      radiusd: #### Loading Clients ####
      client teakettle2 {
      ipaddr = 172.21.12.2
      require_message_authenticator = no
      secret = "mqh6rWnxbTkgQkVn"
      shortname = "teakettle2"
      nastype = "other"
      }
      client cafeteria {
      ipaddr = 172.21.12.3
      require_message_authenticator = no
      secret = "8UmEX8Xr6sRz64R4"
      shortname = "cafeteria"
      nastype = "other"
      }
      client lodgelobby {
      ipaddr = 172.21.12.4
      require_message_authenticator = no
      secret = "5TEEQULqqTB49bYc"
      shortname = "lodgelobby"
      nastype = "other"
      }
      client conferenceroom {
      ipaddr = 172.21.12.5
      require_message_authenticator = no
      secret = "5vQTATZSLBGqKNhx"
      shortname = "conferenceroom"
      nastype = "other"
      }
      client sector1 {
      ipaddr = 172.21.12.6
      require_message_authenticator = no
      secret = "LgVKSbJ6eRcwdJzU"
      shortname = "sector1"
      nastype = "other"
      }
      client sector2 {
      ipaddr = 172.21.12.7
      require_message_authenticator = no
      secret = "aHfBaTuxytqLKXFG"
      shortname = "sector2"
      nastype = "other"
      }
      client sector3 {
      ipaddr = 172.21.12.8
      require_message_authenticator = no
      secret = "ZubfCx8NZ2z6uTyJ"
      shortname = "sector3"
      nastype = "other"
      }
      client sector4 {
      ipaddr = 172.21.12.9
      require_message_authenticator = no
      secret = "mnSmhmWezPySNpbw"
      shortname = "sector4"
      nastype = "other"
      }
      client 5sector1 {
      ipaddr = 172.21.12.10
      require_message_authenticator = no
      secret = "rsFmNjDNAEFGhWvP"
      shortname = "5sector1"
      nastype = "other"
      }
      client midway {
      ipaddr = 172.21.12.12
      require_message_authenticator = no
      secret = "UF4KbWRT7KGPbY2s"
      shortname = "midway"
      nastype = "other"
      }
      radiusd: #### Instantiating modules ####
      instantiate {
      Module: Linked to module rlm_exec
      Module: Instantiating module "exec" from file /usr/pbi/freeradius-amd64/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 /usr/pbi/freeradius-amd64/etc/raddb/modules/expr
      Module: Linked to module rlm_counter
      Module: Instantiating module "daily" from file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
        counter daily {
      filename = "/var/log/radacct/timecounter/db.daily"
      key = "User-Name"
      reset = "daily"
      count-attribute = "Acct-Session-Time"
      counter-name = "Daily-Session-Time"
      check-name = "Max-Daily-Session"
      reply-name = "Session-Timeout"
      cache-size = 5000
        }
      rlm_counter: Counter attribute Daily-Session-Time is number 11273
      rlm_counter: Current Time: 1361179135 [2013-02-18 02:18:55], Next reset 1361257200 [2013-02-19 00:00:00]
      Module: Instantiating module "weekly" from file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
        counter weekly {
      filename = "/var/log/radacct/timecounter/db.weekly"
      key = "User-Name"
      reset = "weekly"
      count-attribute = "Acct-Session-Time"
      counter-name = "Weekly-Session-Time"
      check-name = "Max-Weekly-Session"
      reply-name = "Session-Timeout"
      cache-size = 5000
        }
      rlm_counter: Counter attribute Weekly-Session-Time is number 11275
      rlm_counter: Current Time: 1361179135 [2013-02-18 02:18:55], Next reset 1361689200 [2013-02-24 00:00:00]
      Module: Instantiating module "monthly" from file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
        counter monthly {
      filename = "/var/log/radacct/timecounter/db.monthly"
      key = "User-Name"
      reset = "monthly"
      count-attribute = "Acct-Session-Time"
      counter-name = "Monthly-Session-Time"
      check-name = "Max-Monthly-Session"
      reply-name = "Session-Timeout"
      cache-size = 5000
        }
      rlm_counter: Counter attribute Monthly-Session-Time is number 11277
      rlm_counter: Current Time: 1361179135 [2013-02-18 02:18:55], Next reset 1362121200 [2013-03-01 00:00:00]
      Module: Instantiating module "forever" from file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
        counter forever {
      filename = "/var/log/radacct/timecounter/db.forever"
      key = "User-Name"
      reset = "never"
      count-attribute = "Acct-Session-Time"
      counter-name = "Forever-Session-Time"
      check-name = "Max-Forever-Session"
      reply-name = "Session-Timeout"
      cache-size = 5000
        }
      rlm_counter: Counter attribute Forever-Session-Time is number 11279
      rlm_counter: Current Time: 1361179135 [2013-02-18 02:18:55], Next reset 0 [2013-02-18 02:00:00]
      rlm_counter: add_defaults: Start

      1 Reply Last reply Reply Quote 0
      • N
        Nachtfalke
        last edited by

        A problem could be the different versions of freeradius on pfsense 2.0 and 2.1
        jimp did some changes on the pfsense server and updated some freeradius files for new freeradius 2.2.0 version.

        pfsense 2.1 is using freeradius 2.2.0 and pfsense 2.0.x is using freeradius 2.1.12. The reinstall could give you the newer version and the freeradius.inc file didn't get that.

        Try to edit the /usr/local/pkg/freeradius.inc file on line 83 and 216

        I will contact jimp to check if it is possible to make a new freeradius2 .tbz file for pfsense 2.0 so that all system use the same version and .inc file can be fixed.

        1 Reply Last reply Reply Quote 0
        • M
          markuhde
          last edited by

          Thanks, I edited those lines, FreeRADIUS still just locks at 25% CPU load when started. If you are interested to help troubleshoot the package, I can give you login credentials if you PM me. Unfortunately, I can't pay anything since I'm doing this work for free for a non-profit camp…

          [2.1-BETA1][admin@glacierfire.glaciercamp]/root(1): radiusd -X
          FreeRADIUS Version 2.2.0, for host amd64-portbld-freebsd8.3, built on Dec 20 2012 at 23:20:32
          Copyright (C) 1999-2012 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 /usr/pbi/freeradius-amd64/etc/raddb/radiusd.conf
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/clients.conf
          including files in directory /usr/pbi/freeradius-amd64/etc/raddb/modules/
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/wimax
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/always
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/attr_filter
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/attr_rewrite
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/cache
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/chap
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/checkval
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/cui
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/detail
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/detail.example.com
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/detail.log
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/dhcp_sqlippool
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/sql/mysql/ippool-dhcp.conf
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/digest
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/dynamic_clients
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/echo
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/etc_group
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/exec
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/expiration
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/expr
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/files
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/inner-eap
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/ippool
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/krb5
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/ldap
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/linelog
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/otp
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/logintime
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/mac2ip
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/mac2vlan
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/mschap
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/ntlm_auth
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/opendirectory
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/pam
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/pap
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/passwd
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/perl
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/policy
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/preprocess
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/radrelay
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/radutmp
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/realm
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/redis
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/rediswho
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/replicate
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/smbpasswd
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/smsotp
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/soh
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/sql_log
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/sqlcounter_expire_on_login
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/sradutmp
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/unix
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/acct_unique
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/motp
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/modules/datacounter_acct
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/eap.conf
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/policy.conf
          including files in directory /usr/pbi/freeradius-amd64/etc/raddb/sites-enabled/
          including configuration file /usr/pbi/freeradius-amd64/etc/raddb/sites-enabled/default
          main {
          allow_core_dumps = no
          }
          including dictionary file /usr/pbi/freeradius-amd64/etc/raddb/dictionary
          main {
          name = "radiusd"
          prefix = "/usr/pbi/freeradius-amd64"
          localstatedir = "/var"
          sbindir = "/usr/pbi/freeradius-amd64/sbin"
          logdir = "/var/log"
          run_dir = "/var/run"
          libdir = "/usr/pbi/freeradius-amd64/lib/freeradius-2.1.12"
          radacctdir = "/var/log/radacct"
          hostname_lookups = no
          max_request_time = 30
          cleanup_delay = 5
          max_requests = 1024
          pidfile = "/var/run/radiusd.pid"
          checkrad = "/usr/pbi/freeradius-amd64/sbin/checkrad"
          debug_level = 0
          proxy_requests = yes
          log {
          stripped_names = no
          auth = yes
          auth_badpass = no
          auth_goodpass = no
          msg_badpass = ""
          msg_goodpass = ""
          }
          security {
          max_attributes = 200
          reject_delay = 1
          status_server = no
          }
          }
          radiusd: #### Loading Realms and Home Servers ####
          radiusd: #### Loading Clients ####
          client teakettle2 {
          ipaddr = 172.21.12.2
          require_message_authenticator = no
          secret = "mqh6rWnxbTkgQkVn"
          shortname = "teakettle2"
          nastype = "other"
          }
          client cafeteria {
          ipaddr = 172.21.12.3
          require_message_authenticator = no
          secret = "8UmEX8Xr6sRz64R4"
          shortname = "cafeteria"
          nastype = "other"
          }
          client lodgelobby {
          ipaddr = 172.21.12.4
          require_message_authenticator = no
          secret = "5TEEQULqqTB49bYc"
          shortname = "lodgelobby"
          nastype = "other"
          }
          client conferenceroom {
          ipaddr = 172.21.12.5
          require_message_authenticator = no
          secret = "5vQTATZSLBGqKNhx"
          shortname = "conferenceroom"
          nastype = "other"
          }
          client sector1 {
          ipaddr = 172.21.12.6
          require_message_authenticator = no
          secret = "LgVKSbJ6eRcwdJzU"
          shortname = "sector1"
          nastype = "other"
          }
          client sector2 {
          ipaddr = 172.21.12.7
          require_message_authenticator = no
          secret = "aHfBaTuxytqLKXFG"
          shortname = "sector2"
          nastype = "other"
          }
          client sector3 {
          ipaddr = 172.21.12.8
          require_message_authenticator = no
          secret = "ZubfCx8NZ2z6uTyJ"
          shortname = "sector3"
          nastype = "other"
          }
          client sector4 {
          ipaddr = 172.21.12.9
          require_message_authenticator = no
          secret = "mnSmhmWezPySNpbw"
          shortname = "sector4"
          nastype = "other"
          }
          client 5sector1 {
          ipaddr = 172.21.12.10
          require_message_authenticator = no
          secret = "rsFmNjDNAEFGhWvP"
          shortname = "5sector1"
          nastype = "other"
          }
          client midway {
          ipaddr = 172.21.12.12
          require_message_authenticator = no
          secret = "UF4KbWRT7KGPbY2s"
          shortname = "midway"
          nastype = "other"
          }
          radiusd: #### Instantiating modules ####
          instantiate {
          Module: Linked to module rlm_exec
          Module: Instantiating module "exec" from file /usr/pbi/freeradius-amd64/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 /usr/pbi/freeradius-amd64/etc/raddb/modules/expr
          Module: Linked to module rlm_counter
          Module: Instantiating module "daily" from file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
            counter daily {
          filename = "/var/log/radacct/timecounter/db.daily"
          key = "User-Name"
          reset = "daily"
          count-attribute = "Acct-Session-Time"
          counter-name = "Daily-Session-Time"
          check-name = "Max-Daily-Session"
          reply-name = "Session-Timeout"
          cache-size = 5000
            }
          rlm_counter: Counter attribute Daily-Session-Time is number 11273
          rlm_counter: Current Time: 1361209237 [2013-02-18 10:40:37], Next reset 1361257200 [2013-02-19 00:00:00]
          Module: Instantiating module "weekly" from file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
            counter weekly {
          filename = "/var/log/radacct/timecounter/db.weekly"
          key = "User-Name"
          reset = "weekly"
          count-attribute = "Acct-Session-Time"
          counter-name = "Weekly-Session-Time"
          check-name = "Max-Weekly-Session"
          reply-name = "Session-Timeout"
          cache-size = 5000
            }
          rlm_counter: Counter attribute Weekly-Session-Time is number 11275
          rlm_counter: Current Time: 1361209237 [2013-02-18 10:40:37], Next reset 1361689200 [2013-02-24 00:00:00]
          Module: Instantiating module "monthly" from file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
            counter monthly {
          filename = "/var/log/radacct/timecounter/db.monthly"
          key = "User-Name"
          reset = "monthly"
          count-attribute = "Acct-Session-Time"
          counter-name = "Monthly-Session-Time"
          check-name = "Max-Monthly-Session"
          reply-name = "Session-Timeout"
          cache-size = 5000
            }
          rlm_counter: Counter attribute Monthly-Session-Time is number 11277
          rlm_counter: Current Time: 1361209237 [2013-02-18 10:40:37], Next reset 1362121200 [2013-03-01 00:00:00]
          Module: Instantiating module "forever" from file /usr/pbi/freeradius-amd64/etc/raddb/modules/counter
            counter forever {
          filename = "/var/log/radacct/timecounter/db.forever"
          key = "User-Name"
          reset = "never"
          count-attribute = "Acct-Session-Time"
          counter-name = "Forever-Session-Time"
          check-name = "Max-Forever-Session"
          reply-name = "Session-Timeout"
          cache-size = 5000
            }
          rlm_counter: Counter attribute Forever-Session-Time is number 11279
          rlm_counter: Current Time: 1361209237 [2013-02-18 10:40:37], Next reset 0 [2013-02-18 10:00:00]
          rlm_counter: add_defaults: Start
          ^C
          [2.1-BETA1][admin@glacierfire.glaciercamp]/root(2):

          1 Reply Last reply Reply Quote 0
          • N
            Nachtfalke
            last edited by

            Hi again,

            I did and upgrade of an "old" pfsense 2.1-BETA0 with freeradius2.1.12 to todays pfsense snapshot and freeradius2.2.0

            Service started and no problems with high CPU usage.
            But nevertheless there is something which needs to be corrected and please make sure you did that.

            Edit the freeradius.inc file:

            
            vi /usr/local/pkg/freeradius.inc
            
            

            Remove this line 83:

            exec("chown -R root:wheel " . FREERADIUS_BASE . "/etc/raddb && chown -R root:wheel " . FREERADIUS_BASE . "/lib/freeradius-2.1.12 && chown -R root:wheel /var/log/radacct");
            

            With this line:

            [code]exec("chown -R root:wheel " . FREERADIUS_BASE . "/etc/raddb && chown -R root:wheel " . FREERADIUS_BASE . "/lib/freeradius-2.2.0 && chown -R root:wheel /var/log/radacct");[/code]
            

            Remove this line 216:

            libdir = \${exec_prefix}/lib/freeradius-2.1.12
            

            with this line:

            libdir = \${exec_prefix}/lib/freeradius-2.2.0
            

            Save the freeradius.inc

            Now go to Diagnoctics –> Command Prompt and put the following into the PHP Execute:

            require_once('/usr/local/pkg/freeradius.inc');
            freeradius_install_command();
            

            This command will take some time. It will recreate all folders and config files and restart freeradius service.
            After that try again if it is working.

            Question:
            Do you "just" have problems with high CPU usage or do you have problems with freeradius at all? Does it show you "Ready to process requests" ?

            PS: No need to SSH and no need to pay money. Use your money for usefull things or donate to pfsense but not to me ;-)

            1 Reply Last reply Reply Quote 0
            • M
              markuhde
              last edited by

              No, it's not just high CPU usage, it doesn't work, never gets to ready to process. I sent you exactly what it does :) I edited those files but I never ran that command you told me to, just did that. It still gets stuck on the same line (add defaults: start). Here's the radiusd thread causing the 25% CPU use:

              59445 root        119    0 34040M  9348K CPU1    1  1:13 100.00% radiusd

              100% use on that virtual core, it's like it's pegging it out in some kind of loop. Always worked fine on 32-bit. Maybe a complete system reinstall as 64-bit is in order, but it won't be able to happen for a month or so (though the RADIUS is only needed for youth camps come summer, right now it's all rental groups that don't get to bypass the proxy server :) )

              1 Reply Last reply Reply Quote 0
              • N
                Nachtfalke
                last edited by

                Perhaps just try with a complete fresh install.

                Do not mix architectures between snapshots. Just start with amd64 and stay on amd64 or do a fresh install.
                And after you installed the freeradius2 package again, do the changes, run the command I wrote and then try again :-)

                1 Reply Last reply Reply Quote 0
                • M
                  markuhde
                  last edited by

                  Yeah, but I can't do a fresh install for about three weeks :) Going to just do that!

                  1 Reply Last reply Reply Quote 0
                  • N
                    Nachtfalke
                    last edited by

                    Is freeradius2 starting if you remove all config entries from config.xml file and do a fresh freeradius2 installation ?
                    The only thing you need to configure is a listening interface and then freeradius must start. If it starts it could be an config problem - some special char or some syntax error.

                    Just a suggestion.

                    1 Reply Last reply Reply Quote 0
                    • M
                      markuhde
                      last edited by

                      Nope, I tried that already, no luck. I actually deleted my entire configuration and started over. Thus why there's no users except the one test user…

                      1 Reply Last reply Reply Quote 0
                      • A
                        AJOto
                        last edited by

                        Try to install and….

                        $ pkg_add -r http://files.pfsense.org/packages/8/All/freeradius-2.1.12_1.tbz
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: tar: Failed to set default locale
                        Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        
                        ************************************************************
                        
                        The OpenLDAP client package has been successfully installed.
                        
                        Edit
                          /usr/local/etc/openldap/ldap.conf
                        to change the system-wide client defaults.
                        
                        Try `man ldap.conf' and visit the OpenLDAP FAQ-O-Matic at
                          http://www.OpenLDAP.org/faq/index.cgi?file=3
                        for more information.
                        
                        ************************************************************
                        
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        
                        ====
                        Note that some of the standard modules are provided as separate
                        ports since they require extra dependencies:
                        
                        bsddb           databases/py-bsddb
                        gdbm            databases/py-gdbm
                        sqlite3		databases/py-sqlite3
                        tkinter         x11-toolkits/py-tkinter
                        
                        Install them as needed.
                        ====
                        
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        Removing stale symlinks from /usr/bin...
                            Skipping /usr/bin/perl
                            Skipping /usr/bin/perl5
                            Removing /usr/local/bin/perl5.14.2 installed by an older perl port
                        Done.
                        Creating various symlinks in /usr/bin...
                            Symlinking /usr/local/bin/perl5.12.4 to /usr/bin/perl
                            Symlinking /usr/local/bin/perl5.12.4 to /usr/bin/perl5
                        Done.
                        cd: can't cd to /usr/include
                        Cleaning up /etc/make.conf... Done.
                        Spamming /etc/make.conf... Done.
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        pkg_add: warning: package 'libxml2-2.7.8_3' requires 'libiconv-1.14', but 'libiconv-1.13.1_1' is installed
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        tar: Failed to set default locale
                        pkg_add: warning: package 'postgresql-client-8.4.12' requires 'libiconv-1.14', but 'libiconv-1.13.1_1' is installed
                        
                        The PostgreSQL port has a collection of "side orders":
                        
                        postgresql-docs
                          For all of the html documentation
                        
                        p5-Pg
                          A perl5 API for client access to PostgreSQL databases.
                        
                        postgresql-tcltk 
                          If you want tcl/tk client support.
                        
                        postgresql-jdbc
                          For Java JDBC support.
                        
                        postgresql-odbc
                          For client access from unix applications using ODBC as access
                          method. Not needed to access unix PostgreSQL servers from Win32
                          using ODBC. See below.
                        
                        ruby-postgres, py-PyGreSQL
                          For client access to PostgreSQL databases using the ruby & python
                          languages.
                        
                        postgresql-plperl, postgresql-pltcl & postgresql-plruby
                          For using perl5, tcl & ruby as procedural languages.
                        
                        postgresql-contrib
                          Lots of contributed utilities, postgresql functions and
                          datatypes. There you find pg_standby, pgcrypto and many other cool
                          things.
                        
                        etc...
                        
                        ===> Setting user and group in radiusd.conf
                        ===> Creating users and/or groups.
                        Using existing group 'freeradius'.
                        Using existing user 'freeradius'.
                        ===> Bootstrapping default certificates, please wait...
                        tar: tar: Failed to set default localeFailed to set default locale
                        
                        ===> Adjusting ownership of directory /usr/local/etc/raddb
                        ===> Adjusting ownership of directory /var/log/radacct
                        ===> Adjusting ownership of directory /var/run/radiusd
                        ===> Adjusting ownership of /var/log/radius.log
                        ===> Adjusting ownership of /var/log/radutmp
                        ===> Adjusting ownership of /var/log/radwtmp
                        ===> Updating libdir in /usr/local/etc/raddb/radiusd.conf
                        pkg_add: warning: package 'freeradius-2.1.12_1' requires 'libiconv-1.14', but 'libiconv-1.13.1_1' is installed
                        
                        ===============================================================================
                        
                        To enable FreeRADIUS, put the following line in /etc/rc.conf
                        
                        radiusd_enable="YES"
                        
                        The sample configuration can be found at
                        /usr/local/share/examples/freeradius/raddb
                        
                        If you are upgrading FreeRADIUS, you are advised to use this as a reference
                        for updating your configuration.
                        
                        FreeRADIUS will look for its configuration directory at
                        /usr/local/etc/raddb by default.
                        
                        If you did not already have a configuration at this location, the sample
                        configuration has been copied to this location and has been bootstrapped.
                        
                        If you wish to point FreeRADIUS to a configuration at a different
                        location, put the following line in /etc/rc.conf
                        
                        radiusd_flags="-d /path/to/raddb"
                        
                        To start the server in normal (daemon) mode, run:
                        
                        /usr/local/etc/rc.d/radiusd start
                        
                        and to stop the server, run:
                        
                        /usr/local/etc/rc.d/radiusd stop
                        
                        To start the server in debugging mode, run:
                        
                        /usr/local/etc/rc.d/radiusd debug
                        
                        You are advised to make cautious changes to the configuration, and to test
                        frequently, using debugging mode where necessary. Try to resist the
                        temptation to disable or delete things that you don't understand - you may
                        well break things!
                        
                        The documentation has been installed at /usr/local/share/doc/freeradius
                        
                        Useful configuration advice can be found in the FreeRADIUS Wiki at
                        http://wiki.freeradius.org
                        
                        ===============================================================================
                        
                        1 Reply Last reply Reply Quote 0
                        • N
                          Nachtfalke
                          last edited by

                          @AJOto:

                          Try to install and….

                          $ pkg_add -r http://files.pfsense.org/packages/8/All/freeradius-2.1.12_1.tbz
                          (...)
                          
                          

                          What do you want to do?

                          If you want to use freeradius2 package on pfsense then just go to
                          System –> Package Manager --> Available Packages
                          and install freeradius2

                          No need to do that manual from the console and it will not work.

                          1 Reply Last reply Reply Quote 0
                          • A
                            AJOto
                            last edited by

                            @Nachtfalke:

                            @AJOto:

                            Try to install and….

                            $ pkg_add -r http://files.pfsense.org/packages/8/All/freeradius-2.1.12_1.tbz
                            (...)
                            
                            

                            What do you want to do?

                            If you want to use freeradius2 package on pfsense then just go to
                            System –> Package Manager --> Available Packages
                            and install freeradius2

                            No need to do that manual from the console and it will not work.

                            System –> Package Manager --> Available Packages
                            and install freeradius2
                            But dont RUN :(

                            I tried all ways to install ... but this package does not want to start

                            $ radiusd -X
                            FreeRADIUS Version 2.2.0, for host i386-portbld-freebsd8.3, built on Dec 20 2012 at 23:43:04
                            Copyright (C) 1999-2012 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 /usr/pbi/freeradius-i386/etc/raddb/radiusd.conf
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/clients.conf
                            including files in directory /usr/pbi/freeradius-i386/etc/raddb/modules/
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/wimax
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/always
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/attr_filter
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/attr_rewrite
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/cache
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/chap
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/checkval
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/counter
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/cui
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/detail
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/detail.example.com
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/detail.log
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/dhcp_sqlippool
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/sql/mysql/ippool-dhcp.conf
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/digest
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/dynamic_clients
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/echo
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/etc_group
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/exec
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/expiration
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/expr
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/files
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/inner-eap
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/ippool
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/krb5
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/ldap
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/linelog
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/otp
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/logintime
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/mac2ip
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/mac2vlan
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/mschap
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/ntlm_auth
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/opendirectory
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/pam
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/pap
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/passwd
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/perl
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/policy
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/preprocess
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/radrelay
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/radutmp
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/realm
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/redis
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/rediswho
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/replicate
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/smbpasswd
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/smsotp
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/soh
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/sql_log
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/sqlcounter_expire_on_login
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/sradutmp
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/unix
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/acct_unique
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/motp
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/modules/datacounter_acct
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/eap.conf
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/policy.conf
                            including files in directory /usr/pbi/freeradius-i386/etc/raddb/sites-enabled/
                            including configuration file /usr/pbi/freeradius-i386/etc/raddb/sites-enabled/default
                            main {
                            	allow_core_dumps = no
                            }
                            including dictionary file /usr/pbi/freeradius-i386/etc/raddb/dictionary
                            main {
                            	name = "radiusd"
                            	prefix = "/usr/pbi/freeradius-i386"
                            	localstatedir = "/var"
                            	sbindir = "/usr/pbi/freeradius-i386/sbin"
                            	logdir = "/var/log"
                            	run_dir = "/var/run"
                            	libdir = "/usr/pbi/freeradius-i386/lib/freeradius-2.1.12"
                            	radacctdir = "/var/log/radacct"
                            	hostname_lookups = yes
                            	max_request_time = 30
                            	cleanup_delay = 5
                            	max_requests = 1024
                            	pidfile = "/var/run/radiusd.pid"
                            	checkrad = "/usr/pbi/freeradius-i386/sbin/checkrad"
                            	debug_level = 0
                            	proxy_requests = yes
                             log {
                            	stripped_names = yes
                            	auth = yes
                            	auth_badpass = yes
                            	auth_goodpass = yes
                            	msg_badpass = ""
                            	msg_goodpass = ""
                             }
                             security {
                            	max_attributes = 200
                            	reject_delay = 1
                            	status_server = no
                             }
                            }
                            radiusd: #### Loading Realms and Home Servers ####
                            radiusd: #### Loading Clients ####
                             client system {
                            	ipaddr = 192.168.1.1
                            	require_message_authenticator = no
                            	secret = "*******"
                            	shortname = "system"
                            	nastype = "other"
                             }
                            radiusd: #### Instantiating modules ####
                             instantiate {
                             Module: Linked to module rlm_exec
                             Module: Instantiating module "exec" from file /usr/pbi/freeradius-i386/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 /usr/pbi/freeradius-i386/etc/raddb/modules/expr
                             Module: Linked to module rlm_counter
                             Module: Instantiating module "daily" from file /usr/pbi/freeradius-i386/etc/raddb/modules/counter
                              counter daily {
                            	filename = "/var/log/radacct/timecounter/db.daily"
                            	key = "User-Name"
                            	reset = "daily"
                            	count-attribute = "Acct-Session-Time"
                            	counter-name = "Daily-Session-Time"
                            	check-name = "Max-Daily-Session"
                            	reply-name = "Session-Timeout"
                            	cache-size = 5000
                              }
                            rlm_counter: Counter attribute Daily-Session-Time is number 11273
                            rlm_counter: Current Time: 1364223550 [2013-03-25 16:59:10], Next reset 1364248800 [2013-03-26 00:00:00]
                            gdbm fatal: read error
                            
                            1 Reply Last reply Reply Quote 0
                            • N
                              Nachtfalke
                              last edited by

                              gdbm fatal: read error
                              

                              I saw this problem several times in other threads. In most cases it was a problem with the pfsense installation.
                              Can you try to do a fresh installation of pfsense and try the package again ?

                              In general freeradius2 should start after you setup a listening interface.

                              1 Reply Last reply Reply Quote 0
                              • S
                                Slam
                                last edited by

                                Thanks for this great contribution.

                                I am currently testing pfsense 2.0.3 with freeradius2 in appliance only mode.

                                I think I've found a small bug, if a radius user is created with an email address .i.e "tom@example.com" and "Amount of traffic" is set, this user is unable to login.

                                I've added "@" to /usr/local/etc/raddb/scripts/datacounter_*.sh files on the line

                                USERNAME=`echo -n "$1" | sed 's/[^0-9a-zA-Z.:_-[color=red]@]/X/g'

                                I am able to log on with "tom@example.com", however traffic accounting completely stops, for all users not just ones with @ in their names, if I remove my changes from  /usr/local/etc/raddb/scripts/datacounter_acct.sh, accounting works again but not for @ usernames.

                                Any help?

                                1 Reply Last reply Reply Quote 0
                                • N
                                  Nachtfalke
                                  last edited by

                                  You probably need to modify that on both functions:

                                  freeradius_datacounter_auth_resync()
                                  freeradius_datacounter_acct_resync()
                                  

                                  Further you need to restart pfsense to recreate the .sh files.

                                  Or you go to diagnostics –> command prompt:

                                  require_once("/usr/local/pkg/freeradius.inc");
                                  freeradius_datacounter_auth_resync();
                                  freeradius_datacounter_acct_resync();

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    Slam
                                    last edited by

                                    Thanks.

                                    I had the same results, I even commented out the realms section where it denies @ logins, still nothing.

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      Nachtfalke
                                      last edited by

                                      @Abdsalem:

                                      Thanks.

                                      I had the same results, I even commented out the realms section where it denies @ logins, still nothing.

                                      Hmm, I am no coding expert so I am not sure why this is happening but I found the follwoing:

                                      http://php.net/manual/de/language.operators.php
                                      So it seems that  @  is an operator in PHP.

                                      And in function:
                                      function freeradius_modulesdatacounter_resync()
                                      we need the username (%{request:User-Name}) from freeradius and this could perhaps cause problems.

                                      Is there a way to just get the value of  %{request:User-Name}  without doing any special with it ?

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        Slam
                                        last edited by

                                        Thanks, Im no coder either :0)

                                        It could be my regex skills are also crap, but I thought I'd mention it as I noticed 1 or 2 posts on this thread pointing to this symptom, Ive since moved to an external radius server, just need to work out all the correct configs for it.

                                        But without @ username, the pfsense package worked great, I had 2 pfsense fr2 syncing with eachother with no problems.

                                        Cheers

                                        1 Reply Last reply Reply Quote 0
                                        • P
                                          pszafer
                                          last edited by

                                          hello,
                                          first @ is not operator in php.
                                          second, both functions You mentioned are bash scripts, so it doesn't matter.

                                          USERNAME=`echo -n "\$1" | sed 's/[^0-9a-zA-Z.:_-@]/X/g'
                                          ```this changes special characters to X. But finally it's just name of file so it doesn't matter if you save it with X as tomXmail.com or tom@mail.com.
                                          
                                          I don't use this function, but I'll try to help:
                                          1\. Do You have only one backslash before $1 in USERNAME?
                                          2\. Give me ouput (You can cut it, but I need sample name of username file (path /var/log/radacct/datacounter/\$TIMERANGE/max-octets-\$USERNAME"):
                                          You can do this command and paste somewhere.
                                          

                                          ls -lar /var/log/radacct/datacounter/ > /root/datacounterlist

                                          
                                          3\. As Nachtfalke wrote it could be problem in other function. We need to look into it:
                                          in function freeradius_modulesdatacounter_resync we need to change $conf variable a little.
                                          change only exec datacounterdaily
                                          

                                          exec datacounterdaily {
                                                          wait = yes
                                                          program = "/bin/sh $varFREERADIUS_BASE/etc/raddb/scripts/datacounter_acct.sh %{request:User-Name} daily %{request:Acct-Input-Octets} %{request:Acct-Output-Octets} && /bin/sh echo %{request:User-Name} >> /root/usernames"
                                                  }
                                          ...

                                          
                                          maybe we would know something more with those files ;)
                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            Slam
                                            last edited by

                                            Thanks very much guys for offering to help and sorry I have not got back to this asap, been a bit busy as I have migrated my entire setup to pfsense 2.1 (radius accounting works great btw), I've setup an external radius server that sits on my dmz and its authenticating and accouting correctly with all my users, including "@" usernames.

                                            I am a little free now to help fix this problem for the community because its ideal and more practical in some cases to give users the option to sign up with their email addresses with the pfSense FR2 package.

                                            I have also worked out how to give users custom replies for my own setup if they fail authentication for what ever reason, I know a few people were looking for this as the default gave inconsistant replies for their setup .i.e "You have entered the wrong credentials" for a user who has used up their data allowance, instead of something liike this "You have used up your data allowance for this month".

                                            Ill setup another vm with pfsense 2.0.3 soon (I cant find where FR2 pkg resides on 2.1) and post the result of the commands pszafer wrote.

                                            TIA

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.