<p>G'day all</p><p>I've been working with Mihailo on this matter although he's been more into it<br>I try to provide the data you ask for:</p><p>Prelude:<br>A Samba-disabled user has the following sambaAcctFlags in the LDAP Directory during an ldapsearch i.e.:<br>
The user kw978 used for this is a disabled user and thus ldapsearch lists: sambaAcctFlags: [UD ]<br>A not-disabled user would have: sambaAcctFlags: [U ]</p><p>The radtest command used was:<br>radtest -x kw978 TestRadius1234$ localhost 10 testing123</p>
<p>Now what follows is the output of 'freeradius -X' with the authentication test.<br>Using '-t mschap' doesn't change anything so I guess testing with PAP is (yet?) ok.</p><p>I hope that help shedding some light - as you can see base_filter is read while starting the daemon, <br>
but no matter what is set in base_filter, even invalid stuff, it's simply going to get ignored.</p><div>The server does LDAP group matching with if-else unlang statements - removing them </div><div>didnt change the behaviour so I don't think they're the cause.</div>
<p>-- Mathieu</p><p>FreeRADIUS Version 2.1.10, for host x86_64-pc-linux-gnu, built on May 23 2013 at 14:18:01<br>Copyright (C) 1999-2009 The FreeRADIUS server project and contributors. <br>There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A <br>
PARTICULAR PURPOSE. <br>You may redistribute copies of FreeRADIUS under the terms of the <br>GNU General Public License v2. <br>Starting - reading configuration files ...<br>including configuration file /etc/freeradius/radiusd.conf<br>
including configuration file /etc/freeradius/proxy.conf<br>including configuration file /etc/freeradius/clients.conf<br>including files in directory /etc/freeradius/modules/<br>including configuration file /etc/freeradius/modules/detail.log<br>
including configuration file /etc/freeradius/modules/pap<br>including configuration file /etc/freeradius/modules/policy<br>including configuration file /etc/freeradius/modules/checkval<br>including configuration file /etc/freeradius/modules/sql_log<br>
including configuration file /etc/freeradius/modules/preprocess<br>including configuration file /etc/freeradius/modules/sqlcounter_expire_on_login<br>including configuration file /etc/freeradius/modules/counter<br>including configuration file /etc/freeradius/modules/expiration<br>
including configuration file /etc/freeradius/modules/perl<br>including configuration file /etc/freeradius/modules/always<br>including configuration file /etc/freeradius/modules/dynamic_clients<br>including configuration file /etc/freeradius/modules/mac2vlan<br>
including configuration file /etc/freeradius/modules/attr_rewrite<br>including configuration file /etc/freeradius/modules/digest<br>including configuration file /etc/freeradius/modules/passwd<br>including configuration file /etc/freeradius/modules/echo<br>
including configuration file /etc/freeradius/modules/chap<br>including configuration file /etc/freeradius/modules/ippool<br>including configuration file /etc/freeradius/modules/otp<br>including configuration file /etc/freeradius/modules/attr_filter<br>
including configuration file /etc/freeradius/modules/files<br>including configuration file /etc/freeradius/modules/opendirectory<br>including configuration file /etc/freeradius/modules/realm<br>including configuration file /etc/freeradius/modules/<a href="http://detail.example.com">detail.example.com</a><br>
including configuration file /etc/freeradius/modules/logintime<br>including configuration file /etc/freeradius/modules/sradutmp<br>including configuration file /etc/freeradius/modules/pam<br>including configuration file /etc/freeradius/modules/cui<br>
including configuration file /etc/freeradius/modules/detail<br>including configuration file /etc/freeradius/modules/expr<br>including configuration file /etc/freeradius/modules/mac2ip<br>including configuration file /etc/freeradius/modules/unix<br>
including configuration file /etc/freeradius/modules/smsotp<br>including configuration file /etc/freeradius/modules/radutmp<br>including configuration file /etc/freeradius/modules/mschap<br>including configuration file /etc/freeradius/modules/linelog<br>
including configuration file /etc/freeradius/modules/smbpasswd<br>including configuration file /etc/freeradius/modules/etc_group<br>including configuration file /etc/freeradius/modules/acct_unique<br>including configuration file /etc/freeradius/modules/ldap<br>
including configuration file /etc/freeradius/modules/wimax<br>including configuration file /etc/freeradius/modules/exec<br>including configuration file /etc/freeradius/modules/ntlm_auth<br>including configuration file /etc/freeradius/modules/inner-eap<br>
including configuration file /etc/freeradius/modules/krb5<br>including configuration file /etc/freeradius/eap.conf<br>including configuration file /etc/freeradius/sql.conf<br>including configuration file /etc/freeradius/sql/postgresql/dialup.conf<br>
including configuration file /etc/freeradius/policy.conf<br>including files in directory /etc/freeradius/sites-enabled/<br>including configuration file /etc/freeradius/sites-enabled/gymkl-teachers<br>including configuration file /etc/freeradius/sites-enabled/inner-tunnel<br>
including configuration file /etc/freeradius/sites-enabled/gymkl-teachers-inner-tunnel<br>including configuration file /etc/freeradius/sites-enabled/default<br>main {<br> user = "freerad"<br> group = "freerad"<br>
allow_core_dumps = no<br>}<br>including dictionary file /etc/freeradius/dictionary<br>main {<br> prefix = "/usr"<br> localstatedir = "/var"<br> logdir = "/var/log/freeradius"<br> libdir = "/usr/lib/freeradius"<br>
radacctdir = "/var/log/freeradius/radacct"<br> hostname_lookups = no<br> max_request_time = 30<br> cleanup_delay = 5<br> max_requests = 1024<br> pidfile = "/var/run/freeradius/freeradius.pid"<br> checkrad = "/usr/sbin/checkrad"<br>
debug_level = 0<br> proxy_requests = yes<br> log {<br> stripped_names = yes<br> auth = yes<br> auth_badpass = yes<br> auth_goodpass = no<br> }<br> security {<br> max_attributes = 200<br> reject_delay = 1<br> status_server = yes<br>
}<br>}<br>radiusd: #### Loading Realms and Home Servers ####<br> proxy server {<br> retry_delay = 5<br> retry_count = 3<br> default_fallback = no<br> dead_time = 120<br> wake_all_if_all_dead = no<br> }<br> home_server localhost {<br>
ipaddr = 127.0.0.1<br> port = 1812<br> type = "auth"<br> secret = "testing123"<br> response_window = 20<br> max_outstanding = 65536<br> require_message_authenticator = yes<br> zombie_period = 40<br> status_check = "status-server"<br>
ping_interval = 30<br> check_interval = 30<br> num_answers_to_alive = 3<br> num_pings_to_alive = 3<br> revive_interval = 120<br> status_check_timeout = 4<br> irt = 2<br> mrt = 16<br> mrc = 5<br> mrd = 30<br> }<br> home_server_pool my_auth_failover {<br>
type = fail-over<br> home_server = localhost<br> }<br> realm <a href="http://example.com">example.com</a> {<br> auth_pool = my_auth_failover<br> }<br> realm LOCAL {<br> }<br>radiusd: #### Loading Clients ####<br> client localhost {<br>
ipaddr = 127.0.0.1<br> require_message_authenticator = no<br> secret = "testing123"<br> nastype = "other"<br> }<br> client wifi-mgmt-gymnet {<br> ipaddr = 10.1.0.0<br> netmask = 24<br> require_message_authenticator = no<br>
secret = "35Algen86Quasselnde!Rohrkrepierer$"<br> shortname = "wifi-mgmt-gymnet"<br> nastype = "other"<br> }<br>radiusd: #### Instantiating modules ####<br> instantiate {<br> Module: Linked to module rlm_exec<br>
Module: Instantiating module "exec" from file /etc/freeradius/modules/exec<br> exec {<br> wait = no<br> input_pairs = "request"<br> shell_escape = yes<br> }<br> Module: Linked to module rlm_expr<br>
Module: Instantiating module "expr" from file /etc/freeradius/modules/expr<br> Module: Linked to module rlm_expiration<br> Module: Instantiating module "expiration" from file /etc/freeradius/modules/expiration<br>
expiration {<br> reply-message = "Password Has Expired "<br> }<br> Module: Linked to module rlm_logintime<br> Module: Instantiating module "logintime" from file /etc/freeradius/modules/logintime<br>
logintime {<br> reply-message = "You are calling outside your allowed timespan "<br> minimum-timeout = 60<br> }<br> }<br>radiusd: #### Loading Virtual Servers ####<br>server gymkl-teachers { # from file /etc/freeradius/sites-enabled/gymkl-teachers<br>
modules {<br> Module: Checking authenticate {...} for more modules to load<br> Module: Linked to module rlm_pap<br> Module: Instantiating module "pap" from file /etc/freeradius/modules/pap<br> pap {<br> encryption_scheme = "auto"<br>
auto_header = no<br> }<br> Module: Linked to module rlm_chap<br> Module: Instantiating module "chap" from file /etc/freeradius/modules/chap<br> Module: Linked to module rlm_mschap<br> Module: Instantiating module "mschap" from file /etc/freeradius/modules/mschap<br>
mschap {<br> use_mppe = yes<br> require_encryption = yes<br> require_strong = yes<br> with_ntdomain_hack = yes<br> }<br> Module: Linked to module rlm_unix<br> Module: Instantiating module "unix" from file /etc/freeradius/modules/unix<br>
unix {<br> radwtmp = "/var/log/freeradius/radwtmp"<br> }<br> Module: Linked to module rlm_ldap<br> Module: Instantiating module "ldap" from file /etc/freeradius/modules/ldap<br> ldap {<br> server = "<a href="http://aai-dc1.inside.gymkl.ch">aai-dc1.inside.gymkl.ch</a>"<br>
port = 7389<br> password = "iR2veGgy"<br> identity = "cn=aai-dc1,cn=dc,cn=computers,dc=gymkl,dc=ch"<br> net_timeout = 1<br> timeout = 4<br> timelimit = 3<br> tls_mode = no<br> start_tls = no<br> tls_require_cert = "allow"<br>
tls {<br> start_tls = yes<br> require_cert = "allow"<br> }<br> basedn = "dc=gymkl,dc=ch"<br> filter = "(uid=%{mschap:User-Name:-%{User-Name}})"<br> base_filter = "(sambaAcctFlags=[U ]"<br>
auto_header = no<br> access_attr_used_for_allow = yes<br> groupname_attribute = "cn"<br> groupmembership_filter = "(&(objectClass=posixGroup)(uniqueMember=%{control:Ldap-UserDn}))"<br> dictionary_mapping = "/etc/freeradius/ldap.attrmap"<br>
ldap_debug = 40<br> ldap_connections_number = 5<br> compare_check_items = no<br> do_xlat = yes<br> edir_account_policy_check = no<br> set_auth_type = yes<br> }<br>rlm_ldap: Registering ldap_groupcmp for Ldap-Group<br>rlm_ldap: Registering ldap_xlat with xlat_name ldap<br>
rlm_ldap: reading ldap<->radius mappings from file /etc/freeradius/ldap.attrmap<br>rlm_ldap: LDAP radiusCheckItem mapped to RADIUS $GENERIC$<br>rlm_ldap: LDAP radiusReplyItem mapped to RADIUS $GENERIC$<br>rlm_ldap: LDAP radiusAuthType mapped to RADIUS Auth-Type<br>
rlm_ldap: LDAP radiusSimultaneousUse mapped to RADIUS Simultaneous-Use<br>rlm_ldap: LDAP radiusCalledStationId mapped to RADIUS Called-Station-Id<br>rlm_ldap: LDAP radiusCallingStationId mapped to RADIUS Calling-Station-Id<br>
rlm_ldap: LDAP sambaLMPassword mapped to RADIUS LM-Password<br>rlm_ldap: LDAP sambaNTPassword mapped to RADIUS NT-Password<br>rlm_ldap: LDAP sambaAcctFlags mapped to RADIUS SMB-Account-CTRL-TEXT<br>rlm_ldap: LDAP radiusExpiration mapped to RADIUS Expiration<br>
rlm_ldap: LDAP radiusNASIpAddress mapped to RADIUS NAS-IP-Address<br>rlm_ldap: LDAP radiusServiceType mapped to RADIUS Service-Type<br>rlm_ldap: LDAP radiusFramedProtocol mapped to RADIUS Framed-Protocol<br>rlm_ldap: LDAP radiusFramedIPAddress mapped to RADIUS Framed-IP-Address<br>
rlm_ldap: LDAP radiusFramedIPNetmask mapped to RADIUS Framed-IP-Netmask<br>rlm_ldap: LDAP radiusFramedRoute mapped to RADIUS Framed-Route<br>rlm_ldap: LDAP radiusFramedRouting mapped to RADIUS Framed-Routing<br>rlm_ldap: LDAP radiusFilterId mapped to RADIUS Filter-Id<br>
rlm_ldap: LDAP radiusFramedMTU mapped to RADIUS Framed-MTU<br>rlm_ldap: LDAP radiusFramedCompression mapped to RADIUS Framed-Compression<br>rlm_ldap: LDAP radiusLoginIPHost mapped to RADIUS Login-IP-Host<br>rlm_ldap: LDAP radiusLoginService mapped to RADIUS Login-Service<br>
rlm_ldap: LDAP radiusLoginTCPPort mapped to RADIUS Login-TCP-Port<br>rlm_ldap: LDAP radiusCallbackNumber mapped to RADIUS Callback-Number<br>rlm_ldap: LDAP radiusCallbackId mapped to RADIUS Callback-Id<br>rlm_ldap: LDAP radiusFramedIPXNetwork mapped to RADIUS Framed-IPX-Network<br>
rlm_ldap: LDAP radiusClass mapped to RADIUS Class<br>rlm_ldap: LDAP radiusSessionTimeout mapped to RADIUS Session-Timeout<br>rlm_ldap: LDAP radiusIdleTimeout mapped to RADIUS Idle-Timeout<br>rlm_ldap: LDAP radiusTerminationAction mapped to RADIUS Termination-Action<br>
rlm_ldap: LDAP radiusLoginLATService mapped to RADIUS Login-LAT-Service<br>rlm_ldap: LDAP radiusLoginLATNode mapped to RADIUS Login-LAT-Node<br>rlm_ldap: LDAP radiusLoginLATGroup mapped to RADIUS Login-LAT-Group<br>rlm_ldap: LDAP radiusFramedAppleTalkLink mapped to RADIUS Framed-AppleTalk-Link<br>
rlm_ldap: LDAP radiusFramedAppleTalkNetwork mapped to RADIUS Framed-AppleTalk-Network<br>rlm_ldap: LDAP radiusFramedAppleTalkZone mapped to RADIUS Framed-AppleTalk-Zone<br>rlm_ldap: LDAP radiusPortLimit mapped to RADIUS Port-Limit<br>
rlm_ldap: LDAP radiusLoginLATPort mapped to RADIUS Login-LAT-Port<br>rlm_ldap: LDAP radiusReplyMessage mapped to RADIUS Reply-Message<br>conns: 0x212aed0<br> Module: Linked to module rlm_eap<br> Module: Instantiating module "eap" from file /etc/freeradius/eap.conf<br>
eap {<br> default_eap_type = "peap"<br> timer_expire = 60<br> ignore_unknown_eap_types = no<br> cisco_accounting_username_bug = no<br> max_sessions = 2048<br> }<br> Module: Linked to sub-module rlm_eap_md5<br>
Module: Instantiating eap-md5<br> Module: Linked to sub-module rlm_eap_leap<br> Module: Instantiating eap-leap<br> Module: Linked to sub-module rlm_eap_gtc<br> Module: Instantiating eap-gtc<br> gtc {<br> challenge = "Password: "<br>
auth_type = "PAP"<br> }<br> Module: Linked to sub-module rlm_eap_tls<br> Module: Instantiating eap-tls<br> tls {<br> rsa_key_exchange = no<br> dh_key_exchange = yes<br> rsa_key_length = 512<br> dh_key_length = 512<br>
verify_depth = 0<br> pem_file_type = yes<br> private_key_file = "/etc/freeradius/certs/aai.inside.gymkl.ch.key"<br> certificate_file = "/etc/freeradius/certs/aai.inside.gymkl.ch-roots-bundled.pem"<br>
CA_file = "/etc/univention/ssl/ucsCA/CAcert.pem"<br> dh_file = "/etc/freeradius/ssl/dh"<br> random_file = "/dev/urandom"<br> fragment_size = 1024<br> include_length = yes<br> check_crl = no<br>
}<br> Module: Linked to sub-module rlm_eap_peap<br> Module: Instantiating eap-peap<br> peap {<br> default_eap_type = "mschapv2"<br> copy_request_to_tunnel = no<br> use_tunneled_reply = no<br> proxy_tunneled_request_as_eap = yes<br>
}<br> Module: Linked to sub-module rlm_eap_mschapv2<br> Module: Instantiating eap-mschapv2<br> mschapv2 {<br> with_ntdomain_hack = no<br> }<br> Module: Checking authorize {...} for more modules to load<br> Module: Linked to module rlm_preprocess<br>
Module: Instantiating module "preprocess" from file /etc/freeradius/modules/preprocess<br> preprocess {<br> huntgroups = "/etc/freeradius/huntgroups"<br> hints = "/etc/freeradius/hints"<br>
with_ascend_hack = no<br> ascend_channels_per_line = 23<br> with_ntdomain_hack = no<br> with_specialix_jetstream_hack = no<br> with_cisco_vsa_hack = no<br> with_alvarion_vsa_hack = no<br> }<br> Module: Linked to module rlm_realm<br>
Module: Instantiating module "ntdomain" from file /etc/freeradius/modules/realm<br> realm ntdomain {<br> format = "prefix"<br> delimiter = "\"<br> ignore_default = no<br> ignore_null = no<br>
}<br> Module: Linked to module rlm_files<br> Module: Instantiating module "files" from file /etc/freeradius/modules/files<br> files {<br> usersfile = "/etc/freeradius/users"<br> acctusersfile = "/etc/freeradius/acct_users"<br>
preproxy_usersfile = "/etc/freeradius/preproxy_users"<br> compat = "no"<br> }<br> Module: Checking preacct {...} for more modules to load<br> Module: Linked to module rlm_acct_unique<br> Module: Instantiating module "acct_unique" from file /etc/freeradius/modules/acct_unique<br>
acct_unique {<br> key = "User-Name, Acct-Session-Id, NAS-IP-Address, Client-IP-Address, NAS-Port"<br> }<br> Module: Checking accounting {...} for more modules to load<br> Module: Linked to module rlm_detail<br>
Module: Instantiating module "detail" from file /etc/freeradius/modules/detail<br> detail {<br> detailfile = "/var/log/freeradius/radacct/%{Client-IP-Address}/detail-%Y%m%d"<br> header = "%t"<br>
detailperm = 384<br> dirperm = 493<br> locking = no<br> log_packet_header = no<br> }<br> Module: Linked to module rlm_radutmp<br> Module: Instantiating module "radutmp" from file /etc/freeradius/modules/radutmp<br>
radutmp {<br> filename = "/var/log/freeradius/radutmp"<br> username = "%{User-Name}"<br> case_sensitive = yes<br> check_with_nas = yes<br> perm = 384<br> callerid = yes<br> }<br> Module: Instantiating module "sradutmp" from file /etc/freeradius/modules/sradutmp<br>
radutmp sradutmp {<br> filename = "/var/log/freeradius/sradutmp"<br> username = "%{User-Name}"<br> case_sensitive = yes<br> check_with_nas = yes<br> perm = 420<br> callerid = no<br> }<br> Module: Linked to module rlm_sql<br>
Module: Instantiating module "sql" from file /etc/freeradius/sql.conf<br> sql {<br> driver = "rlm_sql_postgresql"<br> server = "localhost"<br> port = ""<br> login = "radius"<br>
password = "AccountMeNet"<br> radius_db = "radius"<br> read_groups = yes<br> sqltrace = no<br> sqltracefile = "/var/log/freeradius/sqltrace.sql"<br> readclients = no<br> deletestalesessions = yes<br>
num_sql_socks = 5<br> lifetime = 0<br> max_queries = 0<br> sql_user_name = "%{User-Name}"<br> default_user_profile = ""<br> nas_query = "SELECT id, nasname, shortname, type, secret, server FROM nas"<br>
authorize_check_query = "SELECT id, UserName, Attribute, Value, Op FROM radcheck WHERE Username = '%{SQL-User-Name}' ORDER BY id"<br> authorize_reply_query = "SELECT id, UserName, Attribute, Value, Op FROM radreply WHERE Username = '%{SQL-User-Name}' ORDER BY id"<br>
authorize_group_check_query = "SELECT id, GroupName, Attribute, Value, op FROM radgroupcheck WHERE GroupName = '%{Sql-Group}' ORDER BY id"<br> authorize_group_reply_query = "SELECT id, GroupName, Attribute, Value, op FROM radgroupreply WHERE GroupName = '%{Sql-Group}' ORDER BY id"<br>
accounting_onoff_query = "UPDATE radacct SET AcctStopTime = ('%S'::timestamp - '%{%{Acct-Delay-Time}:-0}'::interval), AcctSessionTime = (EXTRACT(EPOCH FROM ('%S'::timestamp with time zone - AcctStartTime::timestamp with time zone - '%{%{Acct-Delay-Time}:-0}'::interval)))::BIGINT, AcctTerminateCause = '%{Acct-Terminate-Cause}', AcctStopDelay = 0 WHERE AcctStopTime IS NULL AND NASIPAddress= '%{NAS-IP-Address}' AND AcctStartTime <= '%S'::timestamp"<br>
accounting_update_query = "UPDATE radacct SET FramedIPAddress = NULLIF('%{Framed-IP-Address}', '')::inet, AcctSessionTime = '%{Acct-Session-Time}', AcctInputOctets = (('%{%{Acct-Input-Gigawords}:-0}'::bigint << 32) + '%{%{Acct-Input-Octets}:-0}'::bigint), AcctOutputOctets = (('%{%{Acct-Output-Gigawords}:-0}'::bigint << 32) + '%{%{Acct-Output-Octets}:-0}'::bigint) WHERE AcctSessionId = '%{Acct-Session-Id}' AND UserName = '%{SQL-User-Name}' AND NASIPAddress= '%{NAS-IP-Address}' AND AcctStopTime IS NULL"<br>
accounting_update_query_alt = "INSERT INTO radacct (AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, AcctStartTime, AcctSessionTime, AcctAuthentic, AcctInputOctets, AcctOutputOctets, CalledStationId, CallingStationId, ServiceType, FramedProtocol, FramedIPAddress, XAscendSessionSvrKey) VALUES('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', NULLIF('%{Realm}', ''), '%{NAS-IP-Address}', %{%{NAS-Port}:-NULL}::integer, '%{NAS-Port-Type}', ('%S'::timestamp - '%{%{Acct-Delay-Time}:-0}'::interval - '%{%{Acct-Session-Time}:-0}'::interval), '%{Acct-Session-Time}', '%{Acct-Authentic}', (('%{%{Acct-Input-Gigawords}:-0}'::bigint << 32) + '%{%{Acct-Input-Octets}:-0}'::bigint), (('%{%{Acct-Output-Gigawords}:-0}'::bigint << 32) + '%{%{Acct-Output-Octets}:-0}'::bigint), '%{Called-Station-Id}', '%{Calling-Station-Id}', '%{Service-Type}', '%{Framed-Protocol}', NULLIF('%{Framed-IP-Address}', '')::inet, '%{X-Ascend-Session-Svr-Key}')"<br>
accounting_start_query = "INSERT INTO radacct (AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, AcctStartTime, AcctAuthentic, ConnectInfo_start, CalledStationId, CallingStationId, ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay, XAscendSessionSvrKey) VALUES('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', NULLIF('%{Realm}', ''), '%{NAS-IP-Address}', %{%{NAS-Port}:-NULL}::integer, '%{NAS-Port-Type}', ('%S'::timestamp - '%{%{Acct-Delay-Time}:-0}'::interval), '%{Acct-Authentic}', '%{Connect-Info}', '%{Called-Station-Id}', '%{Calling-Station-Id}', '%{Service-Type}', '%{Framed-Protocol}', NULLIF('%{Framed-IP-Address}', '')::inet, 0, '%{X-Ascend-Session-Svr-Key}')"<br>
accounting_start_query_alt = "UPDATE radacct SET AcctStartTime = ('%S'::timestamp - '%{%{Acct-Delay-Time}:-0}'::interval), AcctStartDelay = 0, ConnectInfo_start = '%{Connect-Info}' WHERE AcctSessionId = '%{Acct-Session-Id}' AND UserName = '%{SQL-User-Name}' AND NASIPAddress = '%{NAS-IP-Address}' AND AcctStopTime IS NULL"<br>
accounting_stop_query = "UPDATE radacct SET AcctStopTime = ('%S'::timestamp - '%{%{Acct-Delay-Time}:-0}'::interval), AcctSessionTime = CASE WHEN '%{Acct-Session-Time}' = '' THEN (EXTRACT(EPOCH FROM ('%S'::TIMESTAMP WITH TIME ZONE - AcctStartTime::TIMESTAMP WITH TIME ZONE - '%{%{Acct-Delay-Time}:-0}'::INTERVAL)))::BIGINT ELSE NULLIF('%{Acct-Session-Time}','')::BIGINT END, AcctInputOctets = (('%{%{Acct-Input-Gigawords}:-0}'::bigint << 32) + '%{%{Acct-Input-Octets}:-0}'::bigint), AcctOutputOctets = (('%{%{Acct-Output-Gigawords}:-0}'::bigint << 32) + '%{%{Acct-Output-Octets}:-0}'::bigint), AcctTerminateCause = '%{Acct-Terminate-Cause}', AcctStopDelay = 0, FramedIPAddress = NULLIF('%{Framed-IP-Address}', '')::inet, ConnectInfo_stop = '%{Connect-Info}' WHERE AcctSessionId = '%{Acct-Session-Id}' AND UserName = '%{SQL-User-Name}' AND NASIPAddress = '%{NAS-IP-Address}' AND AcctStopTime IS NULL"<br>
accounting_stop_query_alt = "INSERT INTO radacct (AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, AcctStartTime, AcctStopTime, AcctSessionTime, AcctAuthentic, ConnectInfo_stop, AcctInputOctets, AcctOutputOctets, CalledStationId, CallingStationId, AcctTerminateCause, ServiceType, FramedProtocol, FramedIPAddress, AcctStopDelay) values('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', NULLIF('%{Realm}', ''), '%{NAS-IP-Address}', %{%{NAS-Port}:-NULL}::integer, '%{NAS-Port-Type}', ('%S'::timestamp - '%{%{Acct-Delay-Time}:-0}'::interval - '%{%{Acct-Session-Time}:-0}'::interval), ('%S'::timestamp - '%{%{Acct-Delay-Time}:-0}'::interval), NULLIF('%{Acct-Session-Time}', '')::bigint, '%{Acct-Authentic}', '%{Connect-Info}', (('%{%{Acct-Input-Gigawords}:-0}'::bigint << 32) + '%{%{Acct-Input-Octets}:-0}'::bigint), (('%{%{Acct-Output-Gigawords}:-0}'::bigint << 32) + '%{%{Acct-Output-Octets}:-0}'::bigint), '%{Called-Station-Id}', '%{Calling-Station-Id}', '%{Acct-Terminate-Cause}', '%{Service-Type}', '%{Framed-Protocol}', NULLIF('%{Framed-IP-Address}', '')::inet, 0)"<br>
group_membership_query = "SELECT GroupName FROM radusergroup WHERE UserName='%{SQL-User-Name}' ORDER BY priority"<br> connect_failure_retry_delay = 60<br> simul_count_query = ""<br> simul_verify_query = ""<br>
postauth_query = "INSERT INTO radpostauth (username, pass, reply, authdate) VALUES ('%{User-Name}', '%{%{User-Password}:-Chap-Password}', '%{reply:Packet-Type}', NOW())"<br> safe-characters = "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /"<br>
}<br>rlm_sql (sql): Driver rlm_sql_postgresql (module rlm_sql_postgresql) loaded and linked<br>rlm_sql (sql): Attempting to connect to <a href="mailto:radius@localhost:/radius">radius@localhost:/radius</a><br>rlm_sql (sql): starting 0<br>
rlm_sql (sql): Attempting to connect rlm_sql_postgresql #0<br>rlm_sql (sql): Connected new DB handle, #0<br>rlm_sql (sql): starting 1<br>rlm_sql (sql): Attempting to connect rlm_sql_postgresql #1<br>rlm_sql (sql): Connected new DB handle, #1<br>
rlm_sql (sql): starting 2<br>rlm_sql (sql): Attempting to connect rlm_sql_postgresql #2<br>rlm_sql (sql): Connected new DB handle, #2<br>rlm_sql (sql): starting 3<br>rlm_sql (sql): Attempting to connect rlm_sql_postgresql #3<br>
rlm_sql (sql): Connected new DB handle, #3<br>rlm_sql (sql): starting 4<br>rlm_sql (sql): Attempting to connect rlm_sql_postgresql #4<br>rlm_sql (sql): Connected new DB handle, #4<br> Module: Linked to module rlm_attr_filter<br>
Module: Instantiating module "attr_filter.accounting_response" from file /etc/freeradius/modules/attr_filter<br> attr_filter attr_filter.accounting_response {<br> attrsfile = "/etc/freeradius/attrs.accounting_response"<br>
key = "%{User-Name}"<br> }<br> Module: Checking session {...} for more modules to load<br> Module: Checking post-proxy {...} for more modules to load<br> Module: Checking post-auth {...} for more modules to load<br>
Module: Linked to module rlm_always<br> Module: Instantiating module "noop" from file /etc/freeradius/modules/always<br> always noop {<br> rcode = "noop"<br> simulcount = 0<br> mpp = no<br> }<br> Module: Instantiating module "reject" from file /etc/freeradius/modules/always<br>
always reject {<br> rcode = "reject"<br> simulcount = 0<br> mpp = no<br> }<br> } # modules<br>} # server<br>server inner-tunnel { # from file /etc/freeradius/sites-enabled/inner-tunnel<br> modules {<br> Module: Checking authenticate {...} for more modules to load<br>
Module: Checking authorize {...} for more modules to load<br> Module: Checking session {...} for more modules to load<br> Module: Checking post-proxy {...} for more modules to load<br> Module: Checking post-auth {...} for more modules to load<br>
} # modules<br>} # server<br>server gymkl-teachers-inner-tunnel { # from file /etc/freeradius/sites-enabled/gymkl-teachers-inner-tunnel<br> modules {<br> Module: Checking authenticate {...} for more modules to load<br> Module: Checking authorize {...} for more modules to load<br>
Module: Checking session {...} for more modules to load<br> Module: Checking post-proxy {...} for more modules to load<br> Module: Checking post-auth {...} for more modules to load<br> } # modules<br>} # server<br>server { # from file /etc/freeradius/radiusd.conf<br>
modules {<br> Module: Checking authenticate {...} for more modules to load<br> Module: Checking authorize {...} for more modules to load<br> Module: Checking preacct {...} for more modules to load<br> Module: Checking accounting {...} for more modules to load<br>
Module: Checking session {...} for more modules to load<br> Module: Checking post-proxy {...} for more modules to load<br> Module: Checking post-auth {...} for more modules to load<br> } # modules<br>} # server<br>radiusd: #### Opening IP addresses and Ports ####<br>
listen {<br> type = "auth"<br> ipaddr = 127.0.0.1<br> port = 0<br>}<br>listen {<br> type = "acct"<br> ipaddr = 127.0.0.1<br> port = 0<br>}<br>listen {<br> type = "auth"<br> ipaddr = 10.0.0.5<br>
port = 0<br>}<br>listen {<br> type = "acct"<br> ipaddr = 10.0.0.5<br> port = 0<br>}<br>listen {<br> type = "auth"<br> ipaddr = 10.0.0.6<br> port = 1812<br>}<br>listen {<br> type = "acct"<br>
ipaddr = 10.0.0.6<br> port = 1813<br>}<br>listen {<br> type = "auth"<br> ipaddr = 127.0.0.1<br> port = 11812<br>}<br>Listening on authentication address 127.0.0.1 port 1812<br>Listening on accounting address 127.0.0.1 port 1813<br>
Listening on authentication address 10.0.0.5 port 1812<br>Listening on accounting address 10.0.0.5 port 1813<br>Listening on authentication address 10.0.0.6 port 1812 as server gymkl-teachers<br>Listening on accounting address 10.0.0.6 port 1813 as server gymkl-teachers<br>
Listening on authentication address 127.0.0.1 port 11812 as server gymkl-teachers<br>Listening on proxy address 10.0.0.5 port 1814<br>Ready to process requests.<br>rad_recv: Access-Request packet from host 127.0.0.1 port 47689, id=84, length=57<br>
User-Name = "kw978"<br> User-Password = "TestRadius1234$"<br> NAS-IP-Address = 10.0.0.5<br> NAS-Port = 10<br># Executing section authorize from file /etc/freeradius/sites-enabled/default<br>+- entering group authorize {...}<br>
++[preprocess] returns ok<br>++[chap] returns noop<br>++[mschap] returns noop<br>[ntdomain] No '\' in User-Name = "kw978", looking up realm NULL<br>[ntdomain] No such realm "NULL"<br>++[ntdomain] returns noop<br>
[eap] No EAP-Message, not doing EAP<br>++[eap] returns noop<br>++[files] returns noop<br>[ldap] performing user authorization for kw978<br>[ldap] expand: (uid=%{mschap:User-Name:-%{User-Name}}) -> (uid=kw978)<br>[ldap] expand: dc=gymkl,dc=ch -> dc=gymkl,dc=ch<br>
[ldap] ldap_get_conn: Checking Id: 0<br> [ldap] ldap_get_conn: Got Id: 0<br> [ldap] attempting LDAP reconnection<br> [ldap] (re)connect to <a href="http://aai-dc1.inside.gymkl.ch:7389">aai-dc1.inside.gymkl.ch:7389</a>, authentication 0<br>
[ldap] starting TLS<br> [ldap] bind as cn=aai-dc1,cn=dc,cn=computers,dc=gymkl,dc=ch/iR2veGgy to <a href="http://aai-dc1.inside.gymkl.ch:7389">aai-dc1.inside.gymkl.ch:7389</a><br> [ldap] waiting for bind result ...<br>
[ldap] Bind was successful<br> [ldap] performing search in dc=gymkl,dc=ch, with filter (uid=kw978)<br>[ldap] No default NMAS login sequence<br>[ldap] looking for check items in directory...<br> [ldap] sambaAcctFlags -> SMB-Account-CTRL-TEXT == "[UD ]"<br>
[ldap] sambaNTPassword -> NT-Password == 0x3541324146463842343734463936333744463531434442423434343239303933<br>[ldap] looking for reply items in directory...<br>WARNING: No "known good" password was found in LDAP. Are you sure that the user is configured correctly?<br>
[ldap] Setting Auth-Type = LDAP<br>[ldap] user kw978 authorized to use remote access<br> [ldap] ldap_release_conn: Release Id: 0<br>++[ldap] returns ok<br>++[expiration] returns noop<br>++[logintime] returns noop<br>[pap] Normalizing NT-Password from hex encoding<br>
[pap] WARNING: Auth-Type already set. Not setting to PAP<br>++[pap] returns noop<br>Found Auth-Type = LDAP<br># Executing group from file /etc/freeradius/sites-enabled/default<br>+- entering group LDAP {...}<br>[ldap] login attempt by "kw978" with password "TestRadius1234$"<br>
[ldap] user DN: uid=KW978,cn=schueler,cn=users,ou=gymkl,dc=gymkl,dc=ch<br> [ldap] (re)connect to <a href="http://aai-dc1.inside.gymkl.ch:7389">aai-dc1.inside.gymkl.ch:7389</a>, authentication 1<br> [ldap] starting TLS<br>
[ldap] bind as uid=KW978,cn=schueler,cn=users,ou=gymkl,dc=gymkl,dc=ch/TestRadius1234$ to <a href="http://aai-dc1.inside.gymkl.ch:7389">aai-dc1.inside.gymkl.ch:7389</a><br> [ldap] waiting for bind result ...<br> [ldap] Bind was successful<br>
[ldap] user kw978 authenticated succesfully<br>++[ldap] returns ok<br>Login OK: [kw978] (from client localhost port 10)<br># Executing section post-auth from file /etc/freeradius/sites-enabled/default<br>+- entering group post-auth {...}<br>
++? if (LDAP-Group == "1-2015x")<br> [ldap] Entering ldap_groupcmp()<br> expand: dc=gymkl,dc=ch -> dc=gymkl,dc=ch<br> expand: (&(objectClass=posixGroup)(uniqueMember=%{control:Ldap-UserDn})) -> (&(objectClass=posixGroup)(uniqueMember=uid\3dKW978\2ccn\3dschueler\2ccn\3dusers\2cou\3dgymkl\2cdc\3dgymkl\2cdc\3dch))<br>
[ldap] ldap_get_conn: Checking Id: 0<br> [ldap] ldap_get_conn: Got Id: 0<br> [ldap] performing search in dc=gymkl,dc=ch, with filter (&(cn=1-2015x)(&(objectClass=posixGroup)(uniqueMember=uid\3dKW978\2ccn\3dschueler\2ccn\3dusers\2cou\3dgymkl\2cdc\3dgymkl\2cdc\3dch)))<br>
rlm_ldap::ldap_groupcmp: User found in group 1-2015x<br> [ldap] ldap_release_conn: Release Id: 0<br>? Evaluating (LDAP-Group == "1-2015x") -> TRUE<br>++? if (LDAP-Group == "1-2015x") -> TRUE<br>
++- entering if (LDAP-Group == "1-2015x") {...}<br>+++[noop] returns noop<br>++- if (LDAP-Group == "1-2015x") returns noop<br>++ ... skipping elsif for request 0: Preceding "if" was taken<br>
++ ... skipping elsif for request 0: Preceding "if" was taken<br>++ ... skipping elsif for request 0: Preceding "if" was taken<br>++ ... skipping elsif for request 0: Preceding "if" was taken<br>
++ ... skipping else for request 0: Preceding "if" was taken<br>Sending Access-Accept of id 84 to 127.0.0.1 port 47689<br>Finished request 0.<br>Going to the next request<br>Waking up in 4.9 seconds.<br></p>