Git master branch & Debian build

Olivier Beytrison olivier at heliosnet.org
Tue Nov 20 08:46:39 CET 2012



On 20.11.2012 08:26, Olivier Beytrison wrote:
> 
>>>
>>> Yeah you have a typo, you have mods.enabled, it should be mods-enabled?
>>>
>>> I'm also working on this, there was a bug in the MySQL configure script that may have been causing issues with the .so not being built correctly. PostgreSQL and a few others were also missing boilermake files.
>>
>> make that mods.available
> 
> Yeah your're right, it was a typo, and freeradius-X complained about not
> finding the mods-enabled directory
> 
>> Alan has fixed it in the version he pulled in...
>>
>> Now working on getting rlm_dbm working as that builds a couple of utilities that get packaged.
>>
>> Getting there slowly.
> 
> I pulled your change from tonight. Still got the problem that radmin
> wasn't found during the package creation. Had to add "radmin.mk" in
> src/main/all.mk SUBMAKEFILES in order to have it.
> 
> Package are now created correctly. I'll try installing them now.

Installation failed the first time. still missing the mods-enabled.
corrected through the following patch

diff --git a/debian/freeradius.install b/debian/freeradius.install
index 9cbc364..cef932f 100644
--- a/debian/freeradius.install
+++ b/debian/freeradius.install
@@ -10,6 +10,7 @@ etc/freeradius/hints
 etc/freeradius/huntgroups
 etc/freeradius/ldap.attrmap
 etc/freeradius/mods-available/*
+etc/freeradius/mods-enabled/*
 etc/freeradius/policy.d/*
 etc/freeradius/policy.txt
 etc/freeradius/preproxy_users


The diff for having radmin built is here

diff --git a/src/main/all.mk b/src/main/all.mk
index bcd546a..b5982a8 100644
--- a/src/main/all.mk
+++ b/src/main/all.mk
@@ -1,3 +1,4 @@
 SUBMAKEFILES := radclient.mk radiusd.mk radsniff.mk radmin.mk radattr.mk \
-radconf2xml.mk radwho.mk radlast.mk radtest.mk radzap.mk checkrad.mk
dhclient.mk
+radconf2xml.mk radwho.mk radlast.mk radtest.mk radzap.mk checkrad.mk
dhclient.mk \
+radmin.mk


Now the service start and start loading the configuration, but fails at
rlm_eap. freeradius -X output below

the debian package doesn't include the libfreeradius-eap.so. maybe add
it to the libfreeradius package

diff --git a/debian/libfreeradius3.install b/debian/libfreeradius3.install
index d08b127..0eb4b91 100644
--- a/debian/libfreeradius3.install
+++ b/debian/libfreeradius3.install
@@ -1 +1,2 @@
 usr/lib/freeradius/libfreeradius-radius.so
+usr/lib/freeradius/libfreeradius-eap.so

freeradius -X
freeradius: FreeRADIUS Version 3.0.0 (git #d0b68ad), for host
x86_64-pc-linux-gnu, built on Nov 20 2012 at 08:32: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.
For more information about these matters, see the file named COPYRIGHT.
Starting - reading configuration files ...
including configuration file /etc/freeradius/radiusd.conf
including configuration file /etc/freeradius/proxy.conf
including configuration file /etc/freeradius/clients.conf
including files in directory /etc/freeradius/mods-enabled/
including configuration file /etc/freeradius/mods-enabled/checkval
including configuration file /etc/freeradius/mods-enabled/expiration
including configuration file /etc/freeradius/mods-enabled/utf8
including configuration file /etc/freeradius/mods-enabled/dhcp
including configuration file /etc/freeradius/mods-enabled/detail
including configuration file /etc/freeradius/mods-enabled/logintime
including configuration file /etc/freeradius/mods-enabled/cui
including configuration file /etc/freeradius/sql/mysql/cui.conf
including configuration file /etc/freeradius/mods-enabled/counter
including configuration file /etc/freeradius/mods-enabled/sradutmp
including configuration file /etc/freeradius/mods-enabled/attr_filter
including configuration file /etc/freeradius/mods-enabled/exec
including configuration file /etc/freeradius/mods-enabled/eap
including configuration file /etc/freeradius/mods-enabled/wimax
including configuration file /etc/freeradius/mods-enabled/preprocess
including configuration file /etc/freeradius/mods-enabled/expr
including configuration file /etc/freeradius/mods-enabled/radutmp
including configuration file /etc/freeradius/mods-enabled/chap
including configuration file /etc/freeradius/mods-enabled/files
including configuration file /etc/freeradius/mods-enabled/realm
including configuration file /etc/freeradius/mods-enabled/digest
including configuration file /etc/freeradius/mods-enabled/always
including configuration file /etc/freeradius/mods-enabled/ntlm_auth
including configuration file /etc/freeradius/mods-enabled/mschap
including configuration file /etc/freeradius/mods-enabled/attr_rewrite
including configuration file /etc/freeradius/mods-enabled/dynamic_clients
including configuration file /etc/freeradius/mods-enabled/detail.log
including configuration file /etc/freeradius/mods-enabled/replicate
including configuration file /etc/freeradius/mods-enabled/unix
including configuration file /etc/freeradius/mods-enabled/echo
including configuration file /etc/freeradius/mods-enabled/passwd
including configuration file /etc/freeradius/mods-enabled/pap
including configuration file /etc/freeradius/mods-enabled/inner-eap
including configuration file /etc/freeradius/mods-enabled/soh
including configuration file /etc/freeradius/mods-enabled/linelog
including files in directory /etc/freeradius/policy.d/
including configuration file /etc/freeradius/policy.d/filter
including configuration file /etc/freeradius/policy.d/dhcp
including configuration file /etc/freeradius/policy.d/cui
including configuration file /etc/freeradius/policy.d/accounting
including configuration file /etc/freeradius/policy.d/canonicalization
including configuration file /etc/freeradius/policy.d/operator-name
including configuration file /etc/freeradius/policy.d/control
including files in directory /etc/freeradius/sites-enabled/
including configuration file /etc/freeradius/sites-enabled/inner-tunnel
including configuration file /etc/freeradius/sites-enabled/default
main {
 security {
        user = "freerad"
        group = "freerad"
        allow_core_dumps = no
 }
}
including dictionary file /etc/freeradius/dictionary
main {
        name = "freeradius"
        prefix = "/usr"
        localstatedir = "/var"
        sbindir = "/usr/sbin"
        logdir = "/var/log/freeradius"
        run_dir = "/var/run/freeradius"
        libdir = "/usr/lib/freeradius"
        radacctdir = "/var/log/freeradius/radacct"
        hostname_lookups = no
        max_request_time = 30
        cleanup_delay = 5
        max_requests = 1024
        pidfile = "/var/run/freeradius/freeradius.pid"
        checkrad = "/usr/sbin/checkrad"
        debug_level = 0
        proxy_requests = yes
 log {
        stripped_names = no
        auth = no
        auth_badpass = no
        auth_goodpass = no
 }
 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 = yes
        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
  coa {
        irt = 2
        mrt = 16
        mrc = 5
        mrd = 30
  }
  limit {
        max_connections = 16
        max_requests = 0
        lifetime = 0
        idle_timeout = 0
  }
 }
 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"
        proto = "*"
  limit {
        max_connections = 16
        lifetime = 0
        idle_timeout = 30
  }
 }
radiusd: #### Instantiating modules ####
 instantiate {
 Module: Linked to module rlm_exec
 Module: Instantiating module "exec" from file
/etc/freeradius/mods-enabled/exec
  exec {
        wait = no
        input_pairs = "request"
        shell_escape = yes
  }
 Module: Linked to module rlm_expr
 Module: Instantiating module "expr" from file
/etc/freeradius/mods-enabled/expr
  expr {
        safe-characters =
"@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /"
  }
 Module: Linked to module rlm_dhcp
 Module: Instantiating module "dhcp" from file
/etc/freeradius/mods-enabled/dhcp
  dhcp {
  }
 Module: Linked to module rlm_expiration
 Module: Instantiating module "expiration" from file
/etc/freeradius/mods-enabled/expiration
  expiration {
        reply-message = "Password Has Expired  "
  }
 Module: Linked to module rlm_logintime
 Module: Instantiating module "logintime" from file
/etc/freeradius/mods-enabled/logintime
  logintime {
        reply-message = "You are calling outside your allowed timespan  "
        minimum-timeout = 60
  }
 }
radiusd: #### Loading Virtual Servers ####
server { # from file /etc/freeradius/radiusd.conf
 modules {
  Module: Creating Auth-Type = digest
 Module: Checking authenticate {...} for more modules to load
 Module: Linked to module rlm_pap
 Module: Instantiating module "pap" from file
/etc/freeradius/mods-enabled/pap
  pap {
        auto_header = no
  }
 Module: Linked to module rlm_chap
 Module: Instantiating module "chap" from file
/etc/freeradius/mods-enabled/chap
 Module: Linked to module rlm_mschap
 Module: Instantiating module "mschap" from file
/etc/freeradius/mods-enabled/mschap
  mschap {
        use_mppe = yes
        require_encryption = no
        require_strong = no
        with_ntdomain_hack = no
   passchange {
   }
        allow_retry = yes
  }
 Module: Linked to module rlm_digest
 Module: Instantiating module "digest" from file
/etc/freeradius/mods-enabled/digest
 Module: Linked to module rlm_unix
 Module: Instantiating module "unix" from file
/etc/freeradius/mods-enabled/unix
  unix {
        radwtmp = "/var/log/freeradius/radwtmp"
  }
/etc/freeradius/mods-enabled/eap[17]: Failed to link to module
'rlm_eap': /usr/lib/freeradius/rlm_eap.so: undefined symbol: eap_wireformat
/etc/freeradius/sites-enabled/default[321]: Failed to find "eap" in the
"modules" section.
/etc/freeradius/sites-enabled/default[263]: Errors parsing authenticate
section.

Regards,
Olivier
-- 

 Olivier Beytrison
 Network & Security Engineer, HES-SO Fribourg
 Mobile: +41 (0)78 619 73 53
 Mail: olivier at heliosnet.org


More information about the Freeradius-Users mailing list