Freeradius-Users
Threads by month
- ----- 2026 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- 12 participants
- 27047 discussions
hello folks,
I install freeradius-server v4 from source and it only runs correctly in
debug mode (radiusd -X).
How to run via systemctl or via init.d?
--
Elias Pereira
3
5
I have encountered when I view the radius log. But the client still can
authenticate to radius server
Error: (34406) Ignoring duplicate packet from client AP-Aerohive port 51961
- ID: 74 due to unfinished request in component authenticate module eap_peap
Error: (34832) Ignoring duplicate packet from client AP-Aerohive port 45456
- ID: 151 due to unfinished request in component <core> module <queue>
Error: (36273) Ignoring duplicate packet from client AP-Aerohive port 48417
- ID: 17 due to unfinished request in component <core> module <queue>
Error: (36604) Ignoring duplicate packet from client AP-Aerohive port 47301
- ID: 165 due to unfinished request in component authenticate module eap
Error: (680844) Ignoring duplicate packet from client AP-Aerohive port
43470 - ID: 156 due to unfinished request in component accounting module sql
This is the output debug " freeradius -X "
FreeRADIUS Version 3.0.13
>
> Copyright (C) 1999-2017 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 dictionary file /usr/share/freeradius/dictionary
>
> including dictionary file /usr/share/freeradius/dictionary.dhcp
>
> including dictionary file /usr/share/freeradius/dictionary.vqp
>
> including dictionary file /etc/freeradius/dictionary
>
> including configuration file /etc/freeradius/radiusd.conf
>
> including configuration file /etc/freeradius/clients.conf
>
> including files in directory /etc/freeradius/mods-enabled/
>
> including configuration file /etc/freeradius/mods-enabled/always
>
> including configuration file /etc/freeradius/mods-enabled/attr_filter
>
> including configuration file /etc/freeradius/mods-enabled/cache_eap
>
> including configuration file /etc/freeradius/mods-enabled/chap
>
> including configuration file /etc/freeradius/mods-enabled/detail
>
> including configuration file /etc/freeradius/mods-enabled/detail.log
>
> including configuration file /etc/freeradius/mods-enabled/digest
>
> including configuration file /etc/freeradius/mods-enabled/dynamic_clients
>
> including configuration file /etc/freeradius/mods-enabled/eap
>
> including configuration file /etc/freeradius/mods-enabled/echo
>
> including configuration file /etc/freeradius/mods-enabled/exec
>
> including configuration file /etc/freeradius/mods-enabled/expiration
>
> including configuration file /etc/freeradius/mods-enabled/expr
>
> including configuration file /etc/freeradius/mods-enabled/files
>
> including configuration file /etc/freeradius/mods-enabled/linelog
>
> including configuration file /etc/freeradius/mods-enabled/logintime
>
> including configuration file /etc/freeradius/mods-enabled/mschap
>
> including configuration file /etc/freeradius/mods-enabled/ntlm_auth
>
> including configuration file /etc/freeradius/mods-enabled/pap
>
> including configuration file /etc/freeradius/mods-enabled/passwd
>
> including configuration file /etc/freeradius/mods-enabled/preprocess
>
> including configuration file /etc/freeradius/mods-enabled/radutmp
>
> including configuration file /etc/freeradius/mods-enabled/realm
>
> including configuration file /etc/freeradius/mods-enabled/replicate
>
> including configuration file /etc/freeradius/mods-enabled/soh
>
> including configuration file /etc/freeradius/mods-enabled/sradutmp
>
> including configuration file /etc/freeradius/mods-enabled/unix
>
> including configuration file /etc/freeradius/mods-enabled/unpack
>
> including configuration file /etc/freeradius/mods-enabled/utf8
>
> including configuration file /etc/freeradius/mods-enabled/sql
>
> including configuration file
>> /etc/freeradius/mods-config/sql/main/mysql/queries.conf
>
> including files in directory /etc/freeradius/policy.d/
>
> including configuration file /etc/freeradius/policy.d/abfab-tr
>
> including configuration file /etc/freeradius/policy.d/accounting
>
> including configuration file /etc/freeradius/policy.d/canonicalization
>
> including configuration file /etc/freeradius/policy.d/control
>
> including configuration file /etc/freeradius/policy.d/cui
>
> including configuration file /etc/freeradius/policy.d/debug
>
> including configuration file /etc/freeradius/policy.d/dhcp
>
> including configuration file /etc/freeradius/policy.d/eap
>
> including configuration file /etc/freeradius/policy.d/filter
>
> including configuration file /etc/freeradius/policy.d/moonshot-targeted-ids
>
> including configuration file /etc/freeradius/policy.d/operator-name
>
> including files in directory /etc/freeradius/sites-enabled/
>
> including configuration file /etc/freeradius/sites-enabled/default
>
> including configuration file /etc/freeradius/sites-enabled/inner-tunnel
>
> including configuration file /etc/freeradius/sites-enabled/status
>
> main {
>
> security {
>
> user = "freerad"
>
> group = "freerad"
>
> allow_core_dumps = no
>
> }
>
> name = "freeradius"
>
> prefix = "/usr"
>
> localstatedir = "/var"
>
> logdir = "/var/log/freeradius"
>
> run_dir = "/var/run/freeradius"
>
> }
>
> 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 = 16384
>
> pidfile = "/var/run/freeradius/freeradius.pid"
>
> checkrad = "/usr/sbin/checkrad"
>
> debug_level = 0
>
> proxy_requests = no
>
> log {
>
> stripped_names = no
>
> auth = no
>
> auth_badpass = no
>
> auth_goodpass = no
>
> colourise = yes
>
> msg_denied = "You are already logged in - access denied"
>
> }
>
> resources {
>
> }
>
> security {
>
> max_attributes = 200
>
> reject_delay = 1.000000
>
> status_server = yes
>
> }
>
> }
>
> radiusd: #### Loading Realms and Home Servers ####
>
> radiusd: #### Loading Clients ####
>
> client localhost {
>
> ipaddr = 127.0.0.1
>
> require_message_authenticator = no
>
> secret = <<< secret >>>
>
> nas_type = "other"
>
> proto = "*"
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> client localhost_ipv6 {
>
> ipv6addr = ::1
>
> require_message_authenticator = no
>
> secret = <<< secret >>>
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> client AP-Wireless802.1X {
>
> ipaddr = *
>
> require_message_authenticator = no
>
> secret = <<< secret >>>
>
> shortname = "AP-Aerohive"
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> client eapol_testing {
>
> ipaddr = 172.16.0.0/16
>
> require_message_authenticator = no
>
> secret = <<< secret >>>
>
> shortname = "Local-Testing"
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> Debugger not attached
>
> # Creating Auth-Type = mschap
>
> # Creating Auth-Type = digest
>
> # Creating Auth-Type = eap
>
> # Creating Auth-Type = PAP
>
> # Creating Auth-Type = CHAP
>
> # Creating Auth-Type = MS-CHAP
>
> # Creating Autz-Type = Status-Server
>
> radiusd: #### Instantiating modules ####
>
> modules {
>
> # Loaded module rlm_always
>
> # Loading module "reject" from file /etc/freeradius/mods-enabled/always
>
> always reject {
>
> rcode = "reject"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loading module "fail" from file /etc/freeradius/mods-enabled/always
>
> always fail {
>
> rcode = "fail"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loading module "ok" from file /etc/freeradius/mods-enabled/always
>
> always ok {
>
> rcode = "ok"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loading module "handled" from file /etc/freeradius/mods-enabled/always
>
> always handled {
>
> rcode = "handled"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loading module "invalid" from file /etc/freeradius/mods-enabled/always
>
> always invalid {
>
> rcode = "invalid"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loading module "userlock" from file /etc/freeradius/mods-enabled/always
>
> always userlock {
>
> rcode = "userlock"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loading module "notfound" from file /etc/freeradius/mods-enabled/always
>
> always notfound {
>
> rcode = "notfound"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loading module "noop" from file /etc/freeradius/mods-enabled/always
>
> always noop {
>
> rcode = "noop"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loading module "updated" from file /etc/freeradius/mods-enabled/always
>
> always updated {
>
> rcode = "updated"
>
> simulcount = 0
>
> mpp = no
>
> }
>
> # Loaded module rlm_attr_filter
>
> # Loading module "attr_filter.post-proxy" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> attr_filter attr_filter.post-proxy {
>
> filename = "/etc/freeradius/mods-config/attr_filter/post-proxy"
>
> key = "%{Realm}"
>
> relaxed = no
>
> }
>
> # Loading module "attr_filter.pre-proxy" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> attr_filter attr_filter.pre-proxy {
>
> filename = "/etc/freeradius/mods-config/attr_filter/pre-proxy"
>
> key = "%{Realm}"
>
> relaxed = no
>
> }
>
> # Loading module "attr_filter.access_reject" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> attr_filter attr_filter.access_reject {
>
> filename = "/etc/freeradius/mods-config/attr_filter/access_reject"
>
> key = "%{User-Name}"
>
> relaxed = no
>
> }
>
> # Loading module "attr_filter.access_challenge" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> attr_filter attr_filter.access_challenge {
>
> filename =
>> "/etc/freeradius/mods-config/attr_filter/access_challenge"
>
> key = "%{User-Name}"
>
> relaxed = no
>
> }
>
> # Loading module "attr_filter.accounting_response" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> attr_filter attr_filter.accounting_response {
>
> filename =
>> "/etc/freeradius/mods-config/attr_filter/accounting_response"
>
> key = "%{User-Name}"
>
> relaxed = no
>
> }
>
> # Loaded module rlm_cache
>
> # Loading module "cache_eap" from file
>> /etc/freeradius/mods-enabled/cache_eap
>
> cache cache_eap {
>
> driver = "rlm_cache_rbtree"
>
> key = "%{%{control:State}:-%{%{reply:State}:-%{State}}}"
>
> ttl = 15
>
> max_entries = 0
>
> epoch = 0
>
> add_stats = no
>
> }
>
> # Loaded module rlm_chap
>
> # Loading module "chap" from file /etc/freeradius/mods-enabled/chap
>
> # Loaded module rlm_detail
>
> # Loading module "detail" from file /etc/freeradius/mods-enabled/detail
>
> detail {
>
> filename =
>> "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/detail-%Y%m%d"
>
> header = "%t"
>
> permissions = 384
>
> locking = no
>
> escape_filenames = no
>
> log_packet_header = no
>
> }
>
> # Loading module "auth_log" from file
>> /etc/freeradius/mods-enabled/detail.log
>
> detail auth_log {
>
> filename =
>> "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/auth-detail-%Y%m%d"
>
> header = "%t"
>
> permissions = 384
>
> locking = no
>
> escape_filenames = no
>
> log_packet_header = no
>
> }
>
> # Loading module "reply_log" from file
>> /etc/freeradius/mods-enabled/detail.log
>
> detail reply_log {
>
> filename =
>> "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/reply-detail-%Y%m%d"
>
> header = "%t"
>
> permissions = 384
>
> locking = no
>
> escape_filenames = no
>
> log_packet_header = no
>
> }
>
> # Loading module "pre_proxy_log" from file
>> /etc/freeradius/mods-enabled/detail.log
>
> detail pre_proxy_log {
>
> filename =
>> "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/pre-proxy-detail-%Y%m%d"
>
> header = "%t"
>
> permissions = 384
>
> locking = no
>
> escape_filenames = no
>
> log_packet_header = no
>
> }
>
> # Loading module "post_proxy_log" from file
>> /etc/freeradius/mods-enabled/detail.log
>
> detail post_proxy_log {
>
> filename =
>> "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/post-proxy-detail-%Y%m%d"
>
> header = "%t"
>
> permissions = 384
>
> locking = no
>
> escape_filenames = no
>
> log_packet_header = no
>
> }
>
> # Loaded module rlm_digest
>
> # Loading module "digest" from file /etc/freeradius/mods-enabled/digest
>
> # Loaded module rlm_dynamic_clients
>
> # Loading module "dynamic_clients" from file
>> /etc/freeradius/mods-enabled/dynamic_clients
>
> # Loaded module rlm_eap
>
> # Loading module "eap" from file /etc/freeradius/mods-enabled/eap
>
> eap {
>
> default_eap_type = "peap"
>
> timer_expire = 60
>
> ignore_unknown_eap_types = no
>
> cisco_accounting_username_bug = no
>
> max_sessions = 16384
>
> }
>
> # Loaded module rlm_exec
>
> # Loading module "echo" from file /etc/freeradius/mods-enabled/echo
>
> exec echo {
>
> wait = yes
>
> program = "/bin/echo %{User-Name}"
>
> input_pairs = "request"
>
> output_pairs = "reply"
>
> shell_escape = yes
>
> }
>
> # Loading module "exec" from file /etc/freeradius/mods-enabled/exec
>
> exec {
>
> wait = no
>
> input_pairs = "request"
>
> shell_escape = yes
>
> timeout = 10
>
> }
>
> # Loaded module rlm_expiration
>
> # Loading module "expiration" from file
>> /etc/freeradius/mods-enabled/expiration
>
> # Loaded module rlm_expr
>
> # Loading module "expr" from file /etc/freeradius/mods-enabled/expr
>
> expr {
>
> safe_characters =
>> "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_:
>> /äéöüàâæçèéêëîïôœùûüaÿÄÉÖÜßÀÂÆÇÈÉÊËÎÏÔŒÙÛÜŸ"
>
> }
>
> # Loaded module rlm_files
>
> # Loading module "files" from file /etc/freeradius/mods-enabled/files
>
> files {
>
> filename = "/etc/freeradius/mods-config/files/authorize"
>
> acctusersfile = "/etc/freeradius/mods-config/files/accounting"
>
> preproxy_usersfile = "/etc/freeradius/mods-config/files/pre-proxy"
>
> }
>
> # Loaded module rlm_linelog
>
> # Loading module "linelog" from file /etc/freeradius/mods-enabled/linelog
>
> linelog {
>
> filename = "/var/log/freeradius/linelog"
>
> escape_filenames = no
>
> syslog_severity = "info"
>
> permissions = 384
>
> format = "This is a log message for %{User-Name}"
>
> reference = "messages.%{%{reply:Packet-Type}:-default}"
>
> }
>
> # Loading module "log_accounting" from file
>> /etc/freeradius/mods-enabled/linelog
>
> linelog log_accounting {
>
> filename = "/var/log/freeradius/linelog-accounting"
>
> escape_filenames = no
>
> syslog_severity = "info"
>
> permissions = 384
>
> format = ""
>
> reference = "Accounting-Request.%{%{Acct-Status-Type}:-unknown}"
>
> }
>
> # Loaded module rlm_logintime
>
> # Loading module "logintime" from file
>> /etc/freeradius/mods-enabled/logintime
>
> logintime {
>
> minimum_timeout = 60
>
> }
>
> # Loaded module rlm_mschap
>
> # Loading module "mschap" from file /etc/freeradius/mods-enabled/mschap
>
> mschap {
>
> use_mppe = yes
>
> require_encryption = yes
>
> require_strong = yes
>
> with_ntdomain_hack = yes
>
> passchange {
>
> }
>
> allow_retry = yes
>
> winbind_retry_with_normalised_username = no
>
> }
>
> # Loading module "ntlm_auth" from file
>> /etc/freeradius/mods-enabled/ntlm_auth
>
> exec ntlm_auth {
>
> wait = yes
>
> program = "/path/to/ntlm_auth --request-nt-key --domain=MYDOMAIN
>> --username=%{mschap:User-Name} --password=%{User-Password}"
>
> shell_escape = yes
>
> }
>
> # Loaded module rlm_pap
>
> # Loading module "pap" from file /etc/freeradius/mods-enabled/pap
>
> pap {
>
> normalise = yes
>
> }
>
> # Loaded module rlm_passwd
>
> # Loading module "etc_passwd" from file
>> /etc/freeradius/mods-enabled/passwd
>
> passwd etc_passwd {
>
> filename = "/etc/passwd"
>
> format = "*User-Name:Crypt-Password:"
>
> delimiter = ":"
>
> ignore_nislike = no
>
> ignore_empty = yes
>
> allow_multiple_keys = no
>
> hash_size = 100
>
> }
>
> # Loaded module rlm_preprocess
>
> # Loading module "preprocess" from file
>> /etc/freeradius/mods-enabled/preprocess
>
> preprocess {
>
> huntgroups = "/etc/freeradius/mods-config/preprocess/huntgroups"
>
> hints = "/etc/freeradius/mods-config/preprocess/hints"
>
> with_ascend_hack = no
>
> ascend_channels_per_line = 23
>
> with_ntdomain_hack = no
>
> with_specialix_jetstream_hack = no
>
> with_cisco_vsa_hack = no
>
> with_alvarion_vsa_hack = no
>
> }
>
> # Loaded module rlm_radutmp
>
> # Loading module "radutmp" from file /etc/freeradius/mods-enabled/radutmp
>
> radutmp {
>
> filename = "/var/log/freeradius/radutmp"
>
> username = "%{User-Name}"
>
> case_sensitive = yes
>
> check_with_nas = yes
>
> permissions = 384
>
> caller_id = yes
>
> }
>
> # Loaded module rlm_realm
>
> # Loading module "IPASS" from file /etc/freeradius/mods-enabled/realm
>
> realm IPASS {
>
> format = "prefix"
>
> delimiter = "/"
>
> ignore_default = no
>
> ignore_null = no
>
> }
>
> # Loading module "suffix" from file /etc/freeradius/mods-enabled/realm
>
> realm suffix {
>
> format = "suffix"
>
> delimiter = "@"
>
> ignore_default = no
>
> ignore_null = no
>
> }
>
> # Loading module "realmpercent" from file
>> /etc/freeradius/mods-enabled/realm
>
> realm realmpercent {
>
> format = "suffix"
>
> delimiter = "%"
>
> ignore_default = no
>
> ignore_null = no
>
> }
>
> # Loading module "ntdomain" from file /etc/freeradius/mods-enabled/realm
>
> realm ntdomain {
>
> format = "prefix"
>
> delimiter = "\\"
>
> ignore_default = no
>
> ignore_null = no
>
> }
>
> # Loaded module rlm_replicate
>
> # Loading module "replicate" from file
>> /etc/freeradius/mods-enabled/replicate
>
> # Loaded module rlm_soh
>
> # Loading module "soh" from file /etc/freeradius/mods-enabled/soh
>
> soh {
>
> dhcp = yes
>
> }
>
> # Loading module "sradutmp" from file
>> /etc/freeradius/mods-enabled/sradutmp
>
> radutmp sradutmp {
>
> filename = "/var/log/freeradius/sradutmp"
>
> username = "%{User-Name}"
>
> case_sensitive = yes
>
> check_with_nas = yes
>
> permissions = 420
>
> caller_id = no
>
> }
>
> # Loaded module rlm_unix
>
> # Loading module "unix" from file /etc/freeradius/mods-enabled/unix
>
> unix {
>
> radwtmp = "/var/log/freeradius/radwtmp"
>
> }
>
> Creating attribute Unix-Group
>
> # Loaded module rlm_unpack
>
> # Loading module "unpack" from file /etc/freeradius/mods-enabled/unpack
>
> # Loaded module rlm_utf8
>
> # Loading module "utf8" from file /etc/freeradius/mods-enabled/utf8
>
> # Loaded module rlm_sql
>
> # Loading module "sql" from file /etc/freeradius/mods-enabled/sql
>
> sql {
>
> driver = "rlm_sql_mysql"
>
> server = "127.0.0.1"
>
> port = 3306
>
> login = "freeradius"
>
> password = <<< secret >>>
>
> radius_db = "radius"
>
> read_groups = yes
>
> read_profiles = yes
>
> read_clients = yes
>
> delete_stale_sessions = yes
>
> sql_user_name = "%{User-Name}"
>
> default_user_profile = ""
>
> client_query = "SELECT id, nasname, shortname, type, secret,
>> server FROM nas"
>
> authorize_check_query = "SELECT id, username, attribute, value, op
>> FROM radcheck WHERE username = '%{SQL-User-Name}' ORDER BY id"
>
> authorize_reply_query = "SELECT id, username, attribute, value, op
>> FROM radreply WHERE username = '%{SQL-User-Name}' ORDER BY id"
>
> authorize_group_check_query = "SELECT id, groupname, attribute,
>> Value, op FROM radgroupcheck WHERE groupname = '%{SQL-Group}' ORDER BY id"
>
> authorize_group_reply_query = "SELECT id, groupname, attribute,
>> value, op FROM radgroupreply WHERE groupname = '%{SQL-Group}' ORDER BY id"
>
> group_membership_query = "SELECT groupname FROM radusergroup WHERE
>> username = '%{SQL-User-Name}' ORDER BY priority"
>
> simul_count_query = "SELECT COUNT(*) FROM radacct WHERE username =
>> '%{SQL-User-Name}' AND acctstoptime IS NULL"
>
> simul_verify_query = "SELECT radacctid, acctsessionid, username,
>> nasipaddress, nasportid, framedipaddress, callingstationid, framedprotocol
>> FROM radacct WHERE username = '%{SQL-User-Name}' AND acctstoptime IS NULL"
>
> safe_characters =
>> "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /"
>
> accounting {
>
> reference = "%{tolower:type.%{Acct-Status-Type}.query}"
>
> type {
>
> accounting-on {
>
> query = "UPDATE radacct SET acctstoptime =
>> FROM_UNIXTIME(%{integer:Event-Timestamp}), acctsessiontime =
>> '%{integer:Event-Timestamp}' - UNIX_TIMESTAMP(acctstarttime),
>> acctterminatecause = '%{%{Acct-Terminate-Cause}:-NAS-Reboot}' WHERE
>> acctstoptime IS NULL AND nasipaddress = '%{NAS-IP-Address}' AND
>> acctstarttime <= FROM_UNIXTIME(%{integer:Event-Timestamp})"
>
> }
>
> accounting-off {
>
> query = "UPDATE radacct SET acctstoptime =
>> FROM_UNIXTIME(%{integer:Event-Timestamp}), acctsessiontime =
>> '%{integer:Event-Timestamp}' - UNIX_TIMESTAMP(acctstarttime),
>> acctterminatecause = '%{%{Acct-Terminate-Cause}:-NAS-Reboot}' WHERE
>> acctstoptime IS NULL AND nasipaddress = '%{NAS-IP-Address}' AND
>> acctstarttime <= FROM_UNIXTIME(%{integer:Event-Timestamp})"
>
> }
>
> start {
>
> query = "INSERT INTO radacct (acctsessionid,
>> acctuniqueid, username, realm,
>> nasipaddress, nasportid, nasporttype, acctstarttime,
>> acctupdatetime, acctstoptime, acctsessiontime,
>> acctauthentic, connectinfo_start, connectinfo_stop, acctinputoctets,
>> acctoutputoctets, calledstationid, callingstationid,
>> acctterminatecause, servicetype, framedprotocol,
>> framedipaddress) VALUES ('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}',
>> '%{SQL-User-Name}', '%{Realm}', '%{NAS-IP-Address}',
>> '%{%{NAS-Port-ID}:-%{NAS-Port}}', '%{NAS-Port-Type}',
>> FROM_UNIXTIME(%{integer:Event-Timestamp}),
>> FROM_UNIXTIME(%{integer:Event-Timestamp}), NULL, '0', '%{Acct-Authentic}',
>> '%{Connect-Info}', '', '0', '0', '%{Called-Station-Id}',
>> '%{Calling-Station-Id}', '', '%{Service-Type}', '%{Framed-Protocol}',
>> '%{Framed-IP-Address}')"
>
> }
>
> interim-update {
>
> query = "UPDATE radacct SET acctupdatetime =
>> (@acctupdatetime_old:=acctupdatetime), acctupdatetime =
>> FROM_UNIXTIME(%{integer:Event-Timestamp}), acctinterval =
>> %{integer:Event-Timestamp} - UNIX_TIMESTAMP(@acctupdatetime_old),
>> framedipaddress = '%{Framed-IP-Address}', acctsessiontime =
>> %{%{Acct-Session-Time}:-NULL}, acctinputoctets =
>> '%{%{Acct-Input-Gigawords}:-0}' << 32 | '%{%{Acct-Input-Octets}:-0}',
>> acctoutputoctets = '%{%{Acct-Output-Gigawords}:-0}' << 32 |
>> '%{%{Acct-Output-Octets}:-0}' WHERE AcctUniqueId =
>> '%{Acct-Unique-Session-Id}'"
>
> }
>
> stop {
>
> query = "UPDATE radacct SET acctstoptime =
>> FROM_UNIXTIME(%{integer:Event-Timestamp}), acctsessiontime =
>> %{%{Acct-Session-Time}:-NULL}, acctinputoctets =
>> '%{%{Acct-Input-Gigawords}:-0}' << 32 | '%{%{Acct-Input-Octets}:-0}',
>> acctoutputoctets = '%{%{Acct-Output-Gigawords}:-0}' << 32 |
>> '%{%{Acct-Output-Octets}:-0}', acctterminatecause =
>> '%{Acct-Terminate-Cause}', connectinfo_stop = '%{Connect-Info}' WHERE
>> AcctUniqueId = '%{Acct-Unique-Session-Id}'"
>
> }
>
> }
>
> }
>
> post-auth {
>
> reference = ".query"
>
> query = "INSERT INTO radpostauth (username, pass, reply, authdate)
>> VALUES ( '%{SQL-User-Name}', '%{%{User-Password}:-%{Chap-Password}}',
>> '%{reply:Packet-Type}', '%S')"
>
> }
>
> }
>
> rlm_sql (sql): Driver rlm_sql_mysql (module rlm_sql_mysql) loaded and
>> linked
>
> Creating attribute SQL-Group
>
> instantiate {
>
> }
>
> # Instantiating module "reject" from file
>> /etc/freeradius/mods-enabled/always
>
> # Instantiating module "fail" from file
>> /etc/freeradius/mods-enabled/always
>
> # Instantiating module "ok" from file /etc/freeradius/mods-enabled/always
>
> # Instantiating module "handled" from file
>> /etc/freeradius/mods-enabled/always
>
> # Instantiating module "invalid" from file
>> /etc/freeradius/mods-enabled/always
>
> # Instantiating module "userlock" from file
>> /etc/freeradius/mods-enabled/always
>
> # Instantiating module "notfound" from file
>> /etc/freeradius/mods-enabled/always
>
> # Instantiating module "noop" from file
>> /etc/freeradius/mods-enabled/always
>
> # Instantiating module "updated" from file
>> /etc/freeradius/mods-enabled/always
>
> # Instantiating module "attr_filter.post-proxy" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> reading pairlist file /etc/freeradius/mods-config/attr_filter/post-proxy
>
> # Instantiating module "attr_filter.pre-proxy" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> reading pairlist file /etc/freeradius/mods-config/attr_filter/pre-proxy
>
> # Instantiating module "attr_filter.access_reject" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> reading pairlist file /etc/freeradius/mods-config/attr_filter/access_reject
>
> [/etc/freeradius/mods-config/attr_filter/access_reject]:11 Check item
>> "FreeRADIUS-Response-Delay" found in filter list for realm "DEFAULT".
>
> [/etc/freeradius/mods-config/attr_filter/access_reject]:11 Check item
>> "FreeRADIUS-Response-Delay-USec" found in filter list for realm "DEFAULT".
>
> # Instantiating module "attr_filter.access_challenge" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> reading pairlist file
>> /etc/freeradius/mods-config/attr_filter/access_challenge
>
> # Instantiating module "attr_filter.accounting_response" from file
>> /etc/freeradius/mods-enabled/attr_filter
>
> reading pairlist file
>> /etc/freeradius/mods-config/attr_filter/accounting_response
>
> # Instantiating module "cache_eap" from file
>> /etc/freeradius/mods-enabled/cache_eap
>
> rlm_cache (cache_eap): Driver rlm_cache_rbtree (module rlm_cache_rbtree)
>> loaded and linked
>
> # Instantiating module "detail" from file
>> /etc/freeradius/mods-enabled/detail
>
> # Instantiating module "auth_log" from file
>> /etc/freeradius/mods-enabled/detail.log
>
> rlm_detail (auth_log): 'User-Password' suppressed, will not appear in
>> detail output
>
> # Instantiating module "reply_log" from file
>> /etc/freeradius/mods-enabled/detail.log
>
> # Instantiating module "pre_proxy_log" from file
>> /etc/freeradius/mods-enabled/detail.log
>
> # Instantiating module "post_proxy_log" from file
>> /etc/freeradius/mods-enabled/detail.log
>
> # Instantiating module "eap" from file /etc/freeradius/mods-enabled/eap
>
> # Linked to sub-module rlm_eap_tls
>
> tls {
>
> tls = "tls-common"
>
> }
>
> tls-config tls-common {
>
> verify_depth = 0
>
> ca_path = "/etc/freeradius/certs"
>
> pem_file_type = yes
>
> private_key_file = "/etc/freeradius/certs/server.pem"
>
> certificate_file = "/etc/freeradius/certs/server.pem"
>
> ca_file = "/etc/freeradius/certs/ca.pem"
>
> private_key_password = <<< secret >>>
>
> dh_file = "/etc/freeradius/certs/dh"
>
> fragment_size = 1024
>
> include_length = yes
>
> auto_chain = yes
>
> check_crl = no
>
> check_all_crl = no
>
> cipher_list = "DEFAULT"
>
> cipher_server_preference = no
>
> ecdh_curve = "prime256v1"
>
> cache {
>
> enable = yes
>
> lifetime = 24
>
> max_entries = 255
>
> }
>
> verify {
>
> skip_if_ocsp_ok = no
>
> }
>
> ocsp {
>
> enable = no
>
> override_cert_url = yes
>
> url = "http://127.0.0.1/ocsp/"
>
> use_nonce = yes
>
> timeout = 0
>
> softfail = no
>
> }
>
> }
>
> # Linked to sub-module rlm_eap_ttls
>
> ttls {
>
> tls = "tls-common"
>
> default_eap_type = "md5"
>
> copy_request_to_tunnel = no
>
> use_tunneled_reply = no
>
> virtual_server = "inner-tunnel"
>
> include_length = yes
>
> require_client_cert = no
>
> }
>
> tls: Using cached TLS configuration from previous invocation
>
> # Linked to sub-module rlm_eap_peap
>
> peap {
>
> tls = "tls-common"
>
> default_eap_type = "mschapv2"
>
> copy_request_to_tunnel = yes
>
> use_tunneled_reply = no
>
> proxy_tunneled_request_as_eap = yes
>
> virtual_server = "inner-tunnel"
>
> soh = no
>
> require_client_cert = no
>
> }
>
> tls: Using cached TLS configuration from previous invocation
>
> # Linked to sub-module rlm_eap_mschapv2
>
> mschapv2 {
>
> with_ntdomain_hack = no
>
> send_error = no
>
> }
>
> # Instantiating module "expiration" from file
>> /etc/freeradius/mods-enabled/expiration
>
> # Instantiating module "files" from file
>> /etc/freeradius/mods-enabled/files
>
> reading pairlist file /etc/freeradius/mods-config/files/authorize
>
> reading pairlist file /etc/freeradius/mods-config/files/accounting
>
> reading pairlist file /etc/freeradius/mods-config/files/pre-proxy
>
> # Instantiating module "linelog" from file
>> /etc/freeradius/mods-enabled/linelog
>
> # Instantiating module "log_accounting" from file
>> /etc/freeradius/mods-enabled/linelog
>
> # Instantiating module "logintime" from file
>> /etc/freeradius/mods-enabled/logintime
>
> # Instantiating module "mschap" from file
>> /etc/freeradius/mods-enabled/mschap
>
> rlm_mschap (mschap): using internal authentication
>
> # Instantiating module "pap" from file /etc/freeradius/mods-enabled/pap
>
> # Instantiating module "etc_passwd" from file
>> /etc/freeradius/mods-enabled/passwd
>
> rlm_passwd: nfields: 3 keyfield 0(User-Name) listable: no
>
> # Instantiating module "preprocess" from file
>> /etc/freeradius/mods-enabled/preprocess
>
> reading pairlist file /etc/freeradius/mods-config/preprocess/huntgroups
>
> reading pairlist file /etc/freeradius/mods-config/preprocess/hints
>
> # Instantiating module "IPASS" from file
>> /etc/freeradius/mods-enabled/realm
>
> # Instantiating module "suffix" from file
>> /etc/freeradius/mods-enabled/realm
>
> # Instantiating module "realmpercent" from file
>> /etc/freeradius/mods-enabled/realm
>
> # Instantiating module "ntdomain" from file
>> /etc/freeradius/mods-enabled/realm
>
> # Instantiating module "sql" from file /etc/freeradius/mods-enabled/sql
>
> rlm_sql_mysql: libmysql version: 5.7.19
>
> mysql {
>
> tls {
>
> }
>
> warnings = "auto"
>
> }
>
> rlm_sql (sql): Attempting to connect to database "radius"
>
> rlm_sql (sql): Initialising connection pool
>
> pool {
>
> start = 5
>
> min = 3
>
> max = 32
>
> spare = 10
>
> uses = 0
>
> lifetime = 0
>
> cleanup_interval = 30
>
> idle_timeout = 60
>
> retry_delay = 30
>
> spread = no
>
> }
>
> rlm_sql (sql): Opening additional connection (0), 1 of 32 pending slots
>> used
>
> rlm_sql_mysql: Starting connect to MySQL server
>
> rlm_sql_mysql: Connected to database 'radius' on 127.0.0.1 via TCP/IP,
>> server version 5.7.19-0ubuntu0.16.04.1-log, protocol version 10
>
> rlm_sql (sql): Opening additional connection (1), 1 of 31 pending slots
>> used
>
> rlm_sql_mysql: Starting connect to MySQL server
>
> rlm_sql_mysql: Connected to database 'radius' on 127.0.0.1 via TCP/IP,
>> server version 5.7.19-0ubuntu0.16.04.1-log, protocol version 10
>
> rlm_sql (sql): Opening additional connection (2), 1 of 30 pending slots
>> used
>
> rlm_sql_mysql: Starting connect to MySQL server
>
> rlm_sql_mysql: Connected to database 'radius' on 127.0.0.1 via TCP/IP,
>> server version 5.7.19-0ubuntu0.16.04.1-log, protocol version 10
>
> rlm_sql (sql): Opening additional connection (3), 1 of 29 pending slots
>> used
>
> rlm_sql_mysql: Starting connect to MySQL server
>
> rlm_sql_mysql: Connected to database 'radius' on 127.0.0.1 via TCP/IP,
>> server version 5.7.19-0ubuntu0.16.04.1-log, protocol version 10
>
> rlm_sql (sql): Opening additional connection (4), 1 of 28 pending slots
>> used
>
> rlm_sql_mysql: Starting connect to MySQL server
>
> rlm_sql_mysql: Connected to database 'radius' on 127.0.0.1 via TCP/IP,
>> server version 5.7.19-0ubuntu0.16.04.1-log, protocol version 10
>
> rlm_sql (sql): Processing generate_sql_clients
>
> rlm_sql (sql) in generate_sql_clients: query is SELECT id, nasname,
>> shortname, type, secret, server FROM nas
>
> rlm_sql (sql): Reserved connection (0)
>
> rlm_sql (sql): Executing select query: SELECT id, nasname, shortname,
>> type, secret, server FROM nas
>
> rlm_sql (sql): Released connection (0)
>
> Need 5 more connections to reach 10 spares
>
> rlm_sql (sql): Opening additional connection (5), 1 of 27 pending slots
>> used
>
> rlm_sql_mysql: Starting connect to MySQL server
>
> rlm_sql_mysql: Connected to database 'radius' on 127.0.0.1 via TCP/IP,
>> server version 5.7.19-0ubuntu0.16.04.1-log, protocol version 10
>
> } # modules
>
> radiusd: #### Loading Virtual Servers ####
>
> server { # from file /etc/freeradius/radiusd.conf
>
> } # server
>
> server default { # from file /etc/freeradius/sites-enabled/default
>
> # Loading authenticate {...}
>
> # Loading authorize {...}
>
> # Loading preacct {...}
>
> # Loading accounting {...}
>
> # Loading session {...}
>
> # Loading post-auth {...}
>
> } # server default
>
> server inner-tunnel { # from file
>> /etc/freeradius/sites-enabled/inner-tunnel
>
> # Loading authenticate {...}
>
> # Loading authorize {...}
>
> # Loading session {...}
>
> # Loading post-auth {...}
>
> } # server inner-tunnel
>
> server status { # from file /etc/freeradius/sites-enabled/status
>
> # Loading authorize {...}
>
> } # server status
>
> radiusd: #### Opening IP addresses and Ports ####
>
> listen {
>
> type = "auth"
>
> ipaddr = *
>
> port = 0
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> listen {
>
> type = "acct"
>
> ipaddr = *
>
> port = 0
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> listen {
>
> type = "auth"
>
> ipv6addr = ::
>
> port = 0
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> listen {
>
> type = "acct"
>
> ipv6addr = ::
>
> port = 0
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> listen {
>
> type = "auth"
>
> ipaddr = 127.0.0.1
>
> port = 18120
>
> }
>
> listen {
>
> type = "status"
>
> ipaddr = 127.0.0.1
>
> port = 18121
>
> client admin {
>
> ipaddr = 127.0.0.1
>
> require_message_authenticator = no
>
> secret = <<< secret >>>
>
> limit {
>
> max_connections = 16
>
> lifetime = 0
>
> idle_timeout = 30
>
> }
>
> }
>
> }
>
> Listening on auth address * port 1812 bound to server default
>
> Listening on acct address * port 1813 bound to server default
>
> Listening on auth address :: port 1812 bound to server default
>
> Listening on acct address :: port 1813 bound to server default
>
> Listening on auth address 127.0.0.1 port 18120 bound to server inner-tunnel
>
> Listening on status address 127.0.0.1 port 18121 bound to server status
>
> Ready to process requests
>
>
>
2
2
Hi,
Recently I installed freeradius server on freeipa server by following
configuration, when I tried to test using radtest user <password>
serverinfo 1812 somesecret getting error
Received Access-Reject Id 226 from 10.0.0.95:1812 to 0.0.0.0:0 length 20
1. -: Expected Access-Accept got Access-Reject
(10) Received Access-Request Id 226 from 10.0.0.95:55049 to 10.0.0.95:1812
length 83
(10) User-Name = "test(a)test.org"
(10) User-Password = "Reflexis@0418"
(10) NAS-IP-Address = 10.0.0.95
(10) NAS-Port = 1812
(10) Message-Authenticator = 0xf9fc18c97a4bc9e5e8f71bb6224f46bb
(10) # Executing section authorize from file /etc/raddb/sites-enabled/
default
(10) authorize {
(10) policy filter_username {
(10) if (&User-Name) {
(10) if (&User-Name) -> TRUE
(10) if (&User-Name) {
(10) if (&User-Name =~ / /) {
(10) if (&User-Name =~ / /) -> FALSE
(10) if (&User-Name =~ /@[^@]*@/ ) {
(10) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(10) if (&User-Name =~ /\.\./ ) {
(10) if (&User-Name =~ /\.\./ ) -> FALSE
(10) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(10) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) ->
FALSE
(10) if (&User-Name =~ /\.$/) {
(10) if (&User-Name =~ /\.$/) -> FALSE
(10) if (&User-Name =~ /(a)\./) {
(10) if (&User-Name =~ /(a)\./) -> FALSE
(10) } # if (&User-Name) = notfound
(10) } # policy filter_username = notfound
(10) [preprocess] = ok
(10) [chap] = noop
(10) [mschap] = noop
(10) [digest] = noop
(10) suffix: Checking for suffix after "@"
(10) suffix: Looking up realm "test.org" for User-Name = "test(a)test.org"
(10) suffix: No such realm "test.org"
(10) [suffix] = noop
(10) eap: No EAP-Message, not doing EAP
(10) [eap] = noop
(10) [files] = noop
rlm_ldap (ldap): Closing connection (11): Hit idle_timeout, was idle for
223 seconds
rlm_ldap (ldap): You probably need to lower "min"
rlm_ldap (ldap): Closing connection (9): Hit idle_timeout, was idle for 169
seconds
rlm_ldap (ldap): You probably need to lower "min"
rlm_ldap (ldap): Closing connection (12): Hit idle_timeout, was idle for
169 seconds
rlm_ldap (ldap): You probably need to lower "min"
rlm_ldap (ldap): 0 of 0 connections in use. You may need to increase
"spare"
rlm_ldap (ldap): Opening additional connection (13), 1 of 32 pending slots
used
rlm_ldap (ldap): Connecting to ldap://rflxpnqrds02.test.org:389
rlm_ldap (ldap): Waiting for bind result...
rlm_ldap (ldap): Bind successful
rlm_ldap (ldap): Reserved connection (13)
(10) ldap: EXPAND (uid=%{%{Stripped-User-Name}:-%{User-Name}})
(10) ldap: --> (uid=test(a)test.org)
(10) ldap: Performing search in "dc=test,dc=org" with filter "(uid=
test(a)test.org)", scope "sub"
(10) ldap: Waiting for search result...
(10) ldap: Search returned no results
rlm_ldap (ldap): Released connection (13)
Need 2 more connections to reach min connections (3)
rlm_ldap (ldap): Opening additional connection (14), 1 of 31 pending slots
used
rlm_ldap (ldap): Connecting to ldap://rflxpnqrds02.test.org:389
rlm_ldap (ldap): Waiting for bind result...
rlm_ldap (ldap): Bind successful
(10) [ldap] = notfound
(10) if ((ok || updated) && User-Password) {
(10) if ((ok || updated) && User-Password) -> FALSE
(10) [expiration] = noop
(10) [logintime] = noop
(10) pap: WARNING: No "known good" password found for the user. Not
setting Auth-Type
(10) pap: WARNING: Authentication will fail unless a "known good" password
is available
(10) [pap] = noop
(10) } # authorize = ok
(10) ERROR: No Auth-Type found: rejecting the user via Post-Auth-Type =
Reject
(10) Failed to authenticate the user
(10) Using Post-Auth-Type Reject
(10) # Executing group from file /etc/raddb/sites-enabled/default
(10) Post-Auth-Type REJECT {
(10) attr_filter.access_reject: EXPAND %{User-Name}
(10) attr_filter.access_reject: --> test(a)test.org
(10) attr_filter.access_reject: Matched entry DEFAULT at line 11
(10) [attr_filter.access_reject] = updated
(10) [eap] = noop
(10) policy remove_reply_message_if_eap {
(10) if (&reply:EAP-Message && &reply:Reply-Message) {
(10) if (&reply:EAP-Message && &reply:Reply-Message) -> FALSE
(10) else {
(10) [noop] = noop
(10) } # else = noop
(10) } # policy remove_reply_message_if_eap = noop
(10) } # Post-Auth-Type REJECT = updated
(10) Delaying response for 1.000000 seconds
Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(10) Sending delayed response
(10) Sent Access-Reject Id 226 from 10.0.0.95:1812 to 10.0.0.95:55049
length 20
Waking up in 3.9 seconds.
(10) Cleaning up request packet ID 226 with timestamp +756
Followed installation steps (Source : https://www.freeipa.org/page/
Using_FreeIPA_and_FreeRadius_as_a_RADIUS_based_software_
token_OTP_system_with_CentOS/RedHat_7)
root@ipa ~]# yum install freeradius freeradius-utils freeradius-ldap
freeradius-krb5
...
In order to configure the RADIUS server to authenticate with the software
token provided by the IPA server, we must let RADIUS accept requests from
your clients (including the IPA server itself), enable the default
configuration to search for users in the IPA server with LDAP protocol and
try to authenticate them with an LDAP bind() operation.
All the RADIUS configuration files are in /etc/raddb, and most of the
configuration is done by linking files from the mod-available directory to
mod-enabled and then editing them as needed.
As a first step, add the following lines at the beginning of clients.conf:
client localnet {
ipaddr = 192.168.1.0/24
proto = *
secret = somesecret
nas_type = other<------># localhost isn't usually a NAS...
limit {
max_connections = 16
lifetime = 0
idle_timeout = 30
}
}
In sites-enabled/default and sites-enabled/inner-tunnel replace these line
#
# The ldap module reads passwords from the LDAP database.
-ldap
with these
#
# The ldap module reads passwords from the LDAP database.
ldap
if ((ok || updated) && User-Password) {
update {
control:Auth-Type := ldap
}
}
and uncomment the following lines
# Auth-Type LDAP {
# ldap
# }
As a last step, enable and configure the LDAP backend in RADIUS.
Add LDAP to the enabled mods:
[root@ipa raddb]# ln -s /etc/raddb/mods-available/ldap
/etc/raddb/mods-enabled/
[root@ipa raddb]#
Edit mods-enable/ldap to change
server = "ldap.rrdns.example.org ldap.rrdns.example.org
ldap.example.org"
and
# base_dn = "dc=example,dc=org"
to
server = "ipa.test.org"
and
base_dn = "dc=test,dc=org"
To reach the RADIUS server from other clients, we must also open the
firewall for the required ports:
[root@ipa ~]# firewall-cmd --permanent --zone=public --add-port=1812/udp
--add-port=1813/udp
Success
[root@ipa ~]# systemctl restart firewalld.service
[root@ipa ~]#
*Thanks,*
Mohiddin
2
1
Hi,
I’m looking through the SQL docs on the wiki, and they seem very complete, but I’m not quite grasping how to accomplish what I want.
In short, I have an existing database that’s primarily used for our email system. I currently also have gnu-radius using this db - in the past for dialup, but at this point just a few remaining oddball services like usenet. I’m moving away from gnu-radius because it’s not very actively developed.
What I’d like to do is this:
- Use existing db for user/pass check
- Use static files for everything else
- Optionally alter my sql query based on which client is asking for auth
Is this possible?
Right now I don’t need to really return anything other than Access-Accept or Access-Reject - literally any other reply items are ignored.
I’m on a fresh install of FreeRadius 3.0.15.
Database schema is very simple, columns are:
pw_name, pw_domain, pw_passwd, pw_gid (vpopmail, for the curious)
It’s not practical to change the schema at this point…
Thanks,
Charles
4
8
Hello freeradius support team,
We have currently a new infrastucture using freeRadius 3 (freeradius-3.0.13-8.) on RHEL7.
By default, the events in radius logs are not enough for troubleshooting purpose.
We want to get a verbosity log level sufficient (not too high, not too low) without having to switch in debug_level=3.
That why we think that debug_level=1 in radiusd.conf is a good compromise.
Unfortunately, when this debug level is enabled, we haven’t timestamp information.
Can you please tell us how to add this timestamp or there is a mean to adjust log verbosity.
Thanks,
Thierry
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
The information in this e-mail is confidential. The contents may not be disclosed or used by anyone other than the addressee. Access to this e-mail by anyone else is unauthorised.
If you are not the intended recipient, please notify Airbus immediately and delete this e-mail.
Airbus cannot accept any responsibility for the accuracy or completeness of this e-mail as it has been sent over public networks. If you have any concerns over the content of this message or its Accuracy or Integrity, please contact Airbus immediately.
All outgoing e-mails from Airbus are checked using regularly updated virus scanning software but you should take whatever measures you deem to be appropriate to ensure that this message and any attachments are virus free.
2
1
There are a few issues found && fixed since 3.0.16. Unless there are major objections, I think we can release 3.0.17 next week.
The next step after that would be to add support for multiple kinds of certificates at the same time. e.g. RSA and ECC.
This is supported in OpenSSL since 1.0.2. It's starting to get more widely deployed, too.
While we do try hard to have 3.0 in a "feature freeze", features can still be added if they are important enough. And I think this counts.
Alan DeKok.
6
15
Hello,
I would like to reject pre-proxy some specific users by querying the mysql
database.
I've created a table with these users that will be rejected.
In policy.d/filter
This rule worked.
filter_user {
if (&User-Name == 'XXX@XXX') {
reject
}
}
But I want to query these users in the database.
I tried.
filter_user {
if ("%{sql:SELECT username FROM radcheckblock WHERE username =
'%{User-Name}'}" == &User-Name) {
reject
}
}
Error:
policy.d/filter[20]: Parse error in condition
policy.d/filter[20]: ("%{sql:SELECT username FROM radcheckblock WHERE
username = '%{User-Name}'}" == &User-Name) {
policy.d/filter[20]: ^ Cannot use attribute reference on right side of
condition
What would be the best way to do this filter?
thank you all
2
2
30 Mar '18
Hello,
I want to know what will be reloaded by freeradius server on received
SIGHUP signal.
I found this message in archives
http://lists.freeradius.org/pipermail/freeradius-users/2010-November/050062…
Is it still true?
Also I tried rename certificates filepath in eap to wrong value.
After kill -HUP radiusd not stop. But in debug output radiusd print
this
Ready to process requests
Received HUP signal
HUP - Re-reading configuration files
including configuration file /usr/local/etc/raddb/radiusd.conf
including configuration file /usr/local/etc/raddb/proxy.conf
including configuration file /usr/local/etc/raddb/clients.conf
including files in directory /usr/local/etc/raddb/mods-enabled/
including configuration file /usr/local/etc/raddb/mods-enabled/eap
including configuration file /usr/local/etc/raddb/mods-enabled/detail.log
including configuration file /usr/local/etc/raddb/mods-enabled/ntlm_auth
...
So radiusd report what it reread eap config. That probably means what
radiusd know about changed in eap module.
2
1
I have a problem with authenticating after a RESTful auth. The response from the rest call seems to be integrating (free radius is expanding the response), but the Cleartext-Password doesn't seem to be carrying forward to the authentication portion.
There are a lot more 'authorize/authenticate' call sets than I expected, but in the end, I expected things to resolve; however, they fail with 'no Cleartext-Password' error message in the MD5 portion.
My goal is simply to have my routers call the Radius server, have the radius server call the the restful server, have the server either fail or return the password (cleartext is not my preference, but it will do for now), and authenticate the user.
I've been spending days on this, and I am very sure it's a simple configuration issue, but I am at a point where I need to yell for help from those far more experienced on this.
I do appreciate any help.
-Robert
PS -- I've included the full debug log:
FreeRADIUS Version 3.0.15
Copyright (C) 1999-2017 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 dictionary file /usr/share/freeradius/dictionary
including dictionary file /usr/share/freeradius/dictionary.dhcp
including dictionary file /usr/share/freeradius/dictionary.vqp
including dictionary file /etc/freeradius/dictionary
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/expiration
including configuration file /etc/freeradius/mods-enabled/radutmp
including configuration file /etc/freeradius/mods-enabled/unpack
including configuration file /etc/freeradius/mods-enabled/files
including configuration file /etc/freeradius/mods-enabled/detail
including configuration file /etc/freeradius/mods-enabled/sradutmp
including configuration file /etc/freeradius/mods-enabled/passwd
including configuration file /etc/freeradius/mods-enabled/dynamic_clients
including configuration file /etc/freeradius/mods-enabled/realm
including configuration file /etc/freeradius/mods-enabled/echo
including configuration file /etc/freeradius/mods-enabled/ntlm_auth
including configuration file /etc/freeradius/mods-enabled/digest
including configuration file /etc/freeradius/mods-enabled/eap
including configuration file /etc/freeradius/mods-enabled/unix
including configuration file /etc/freeradius/mods-enabled/expr
including configuration file /etc/freeradius/mods-enabled/chap
including configuration file /etc/freeradius/mods-enabled/linelog
including configuration file /etc/freeradius/mods-enabled/detail.log
including configuration file /etc/freeradius/mods-enabled/pap
including configuration file /etc/freeradius/mods-enabled/exec
including configuration file /etc/freeradius/mods-enabled/cache_eap
including configuration file /etc/freeradius/mods-enabled/replicate
including configuration file /etc/freeradius/mods-enabled/mschap
including configuration file /etc/freeradius/mods-enabled/always
including configuration file /etc/freeradius/mods-enabled/utf8
including configuration file /etc/freeradius/mods-enabled/logintime
including configuration file /etc/freeradius/mods-enabled/soh
including configuration file /etc/freeradius/mods-enabled/attr_filter
including configuration file /etc/freeradius/mods-enabled/rest
including configuration file /etc/freeradius/mods-enabled/date
including configuration file /etc/freeradius/mods-enabled/preprocess
including files in directory /etc/freeradius/policy.d/
including configuration file /etc/freeradius/policy.d/debug
including configuration file /etc/freeradius/policy.d/cui
including configuration file /etc/freeradius/policy.d/filter
including configuration file /etc/freeradius/policy.d/dhcp
including configuration file /etc/freeradius/policy.d/eap
including configuration file /etc/freeradius/policy.d/canonicalization
including configuration file /etc/freeradius/policy.d/accounting
including configuration file /etc/freeradius/policy.d/control
including configuration file /etc/freeradius/policy.d/operator-name
including configuration file /etc/freeradius/policy.d/moonshot-targeted-ids
including configuration file /etc/freeradius/policy.d/abfab-tr
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
}
name = "freeradius"
prefix = "/usr"
localstatedir = "/var"
logdir = "/var/log/freeradius"
run_dir = "/var/run/freeradius"
}
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 = 16384
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
colourise = yes
msg_denied = "You are already logged in - access denied"
}
resources {
}
security {
max_attributes = 200
reject_delay = 1.000000
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 = <<< secret >>>
response_window = 20.000000
response_timeouts = 1
max_outstanding = 65536
zombie_period = 40
status_check = "status-server"
ping_interval = 30
check_interval = 30
check_timeout = 4
num_answers_to_alive = 3
revive_interval = 120
limit {
max_connections = 16
max_requests = 0
lifetime = 0
idle_timeout = 0
}
coa {
irt = 2
mrt = 16
mrc = 5
mrd = 30
}
}
home_server_pool my_auth_failover {
type = fail-over
home_server = localhost
}
realm example.com {
auth_pool = my_auth_failover
}
realm LOCAL {
}
radiusd: #### Loading Clients ####
client 0.0.0.0/0 {
require_message_authenticator = no
secret = <<< secret >>>
shortname = "all"
limit {
max_connections = 16
lifetime = 0
idle_timeout = 30
}
}
No 'ipaddr' or 'ipv4addr' or 'ipv6addr' field found in client 0.0.0.0/0. Please fix your configuration
Support for old-style clients will be removed in a future release
client ::/0 {
require_message_authenticator = no
secret = <<< secret >>>
shortname = "all"
limit {
max_connections = 16
lifetime = 0
idle_timeout = 30
}
}
No 'ipaddr' or 'ipv4addr' or 'ipv6addr' field found in client ::/0. Please fix your configuration
Support for old-style clients will be removed in a future release
Debugger not attached
# Creating Auth-Type = mschap
# Creating Auth-Type = eap
# Creating Auth-Type = PAP
# Creating Auth-Type = CHAP
# Creating Auth-Type = MS-CHAP
radiusd: #### Instantiating modules ####
modules {
# Loaded module rlm_expiration
# Loading module "expiration" from file /etc/freeradius/mods-enabled/expiration
# Loaded module rlm_radutmp
# Loading module "radutmp" from file /etc/freeradius/mods-enabled/radutmp
radutmp {
filename = "/var/log/freeradius/radutmp"
username = "%{User-Name}"
case_sensitive = yes
check_with_nas = yes
permissions = 384
caller_id = yes
}
# Loaded module rlm_unpack
# Loading module "unpack" from file /etc/freeradius/mods-enabled/unpack
# Loaded module rlm_files
# Loading module "files" from file /etc/freeradius/mods-enabled/files
files {
filename = "/etc/freeradius/mods-config/files/authorize"
acctusersfile = "/etc/freeradius/mods-config/files/accounting"
preproxy_usersfile = "/etc/freeradius/mods-config/files/pre-proxy"
}
# Loaded module rlm_detail
# Loading module "detail" from file /etc/freeradius/mods-enabled/detail
detail {
filename = "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/detail-%Y%m%d"
header = "%t"
permissions = 384
locking = no
escape_filenames = no
log_packet_header = no
}
# Loading module "sradutmp" from file /etc/freeradius/mods-enabled/sradutmp
radutmp sradutmp {
filename = "/var/log/freeradius/sradutmp"
username = "%{User-Name}"
case_sensitive = yes
check_with_nas = yes
permissions = 420
caller_id = no
}
# Loaded module rlm_passwd
# Loading module "etc_passwd" from file /etc/freeradius/mods-enabled/passwd
passwd etc_passwd {
filename = "/etc/passwd"
format = "*User-Name:Crypt-Password:"
delimiter = ":"
ignore_nislike = no
ignore_empty = yes
allow_multiple_keys = no
hash_size = 100
}
# Loaded module rlm_dynamic_clients
# Loading module "dynamic_clients" from file /etc/freeradius/mods-enabled/dynamic_clients
# Loaded module rlm_realm
# Loading module "IPASS" from file /etc/freeradius/mods-enabled/realm
realm IPASS {
format = "prefix"
delimiter = "/"
ignore_default = no
ignore_null = no
}
# Loading module "suffix" from file /etc/freeradius/mods-enabled/realm
realm suffix {
format = "suffix"
delimiter = "@"
ignore_default = no
ignore_null = no
}
# Loading module "realmpercent" from file /etc/freeradius/mods-enabled/realm
realm realmpercent {
format = "suffix"
delimiter = "%"
ignore_default = no
ignore_null = no
}
# Loading module "ntdomain" from file /etc/freeradius/mods-enabled/realm
realm ntdomain {
format = "prefix"
delimiter = "\\"
ignore_default = no
ignore_null = no
}
# Loaded module rlm_exec
# Loading module "echo" from file /etc/freeradius/mods-enabled/echo
exec echo {
wait = yes
program = "/bin/echo %{User-Name}"
input_pairs = "request"
output_pairs = "reply"
shell_escape = yes
}
# Loading module "ntlm_auth" from file /etc/freeradius/mods-enabled/ntlm_auth
exec ntlm_auth {
wait = yes
program = "/path/to/ntlm_auth --request-nt-key --domain=MYDOMAIN --username=%{mschap:User-Name} --password=%{User-Password}"
shell_escape = yes
}
# Loaded module rlm_digest
# Loading module "digest" from file /etc/freeradius/mods-enabled/digest
# Loaded module rlm_eap
# Loading module "eap" from file /etc/freeradius/mods-enabled/eap
eap {
default_eap_type = "md5"
timer_expire = 60
ignore_unknown_eap_types = no
cisco_accounting_username_bug = no
max_sessions = 16384
}
# Loaded module rlm_unix
# Loading module "unix" from file /etc/freeradius/mods-enabled/unix
unix {
radwtmp = "/var/log/freeradius/radwtmp"
}
Creating attribute Unix-Group
# Loaded module rlm_expr
# Loading module "expr" from file /etc/freeradius/mods-enabled/expr
expr {
safe_characters = "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /äéöüàâæçèéêëîïôœùûüaÿÄÉÖÜßÀÂÆÇÈÉÊËÎÏÔŒÙÛÜŸ"
}
# Loaded module rlm_chap
# Loading module "chap" from file /etc/freeradius/mods-enabled/chap
# Loaded module rlm_linelog
# Loading module "linelog" from file /etc/freeradius/mods-enabled/linelog
linelog {
filename = "/var/log/freeradius/linelog"
escape_filenames = no
syslog_severity = "info"
permissions = 384
format = "This is a log message for %{User-Name}"
reference = "messages.%{%{reply:Packet-Type}:-default}"
}
# Loading module "log_accounting" from file /etc/freeradius/mods-enabled/linelog
linelog log_accounting {
filename = "/var/log/freeradius/linelog-accounting"
escape_filenames = no
syslog_severity = "info"
permissions = 384
format = ""
reference = "Accounting-Request.%{%{Acct-Status-Type}:-unknown}"
}
# Loading module "auth_log" from file /etc/freeradius/mods-enabled/detail.log
detail auth_log {
filename = "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/auth-detail-%Y%m%d"
header = "%t"
permissions = 384
locking = no
escape_filenames = no
log_packet_header = no
}
# Loading module "reply_log" from file /etc/freeradius/mods-enabled/detail.log
detail reply_log {
filename = "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/reply-detail-%Y%m%d"
header = "%t"
permissions = 384
locking = no
escape_filenames = no
log_packet_header = no
}
# Loading module "pre_proxy_log" from file /etc/freeradius/mods-enabled/detail.log
detail pre_proxy_log {
filename = "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/pre-proxy-detail-%Y%m%d"
header = "%t"
permissions = 384
locking = no
escape_filenames = no
log_packet_header = no
}
# Loading module "post_proxy_log" from file /etc/freeradius/mods-enabled/detail.log
detail post_proxy_log {
filename = "/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/post-proxy-detail-%Y%m%d"
header = "%t"
permissions = 384
locking = no
escape_filenames = no
log_packet_header = no
}
# Loaded module rlm_pap
# Loading module "pap" from file /etc/freeradius/mods-enabled/pap
pap {
normalise = yes
}
# Loading module "exec" from file /etc/freeradius/mods-enabled/exec
exec {
wait = no
input_pairs = "request"
shell_escape = yes
timeout = 10
}
# Loaded module rlm_cache
# Loading module "cache_eap" from file /etc/freeradius/mods-enabled/cache_eap
cache cache_eap {
driver = "rlm_cache_rbtree"
key = "%{%{control:State}:-%{%{reply:State}:-%{State}}}"
ttl = 15
max_entries = 0
epoch = 0
add_stats = no
}
# Loaded module rlm_replicate
# Loading module "replicate" from file /etc/freeradius/mods-enabled/replicate
# Loaded module rlm_mschap
# Loading module "mschap" from file /etc/freeradius/mods-enabled/mschap
mschap {
use_mppe = yes
require_encryption = no
require_strong = no
with_ntdomain_hack = yes
passchange {
}
allow_retry = yes
winbind_retry_with_normalised_username = no
}
# Loaded module rlm_always
# Loading module "reject" from file /etc/freeradius/mods-enabled/always
always reject {
rcode = "reject"
simulcount = 0
mpp = no
}
# Loading module "fail" from file /etc/freeradius/mods-enabled/always
always fail {
rcode = "fail"
simulcount = 0
mpp = no
}
# Loading module "ok" from file /etc/freeradius/mods-enabled/always
always ok {
rcode = "ok"
simulcount = 0
mpp = no
}
# Loading module "handled" from file /etc/freeradius/mods-enabled/always
always handled {
rcode = "handled"
simulcount = 0
mpp = no
}
# Loading module "invalid" from file /etc/freeradius/mods-enabled/always
always invalid {
rcode = "invalid"
simulcount = 0
mpp = no
}
# Loading module "userlock" from file /etc/freeradius/mods-enabled/always
always userlock {
rcode = "userlock"
simulcount = 0
mpp = no
}
# Loading module "notfound" from file /etc/freeradius/mods-enabled/always
always notfound {
rcode = "notfound"
simulcount = 0
mpp = no
}
# Loading module "noop" from file /etc/freeradius/mods-enabled/always
always noop {
rcode = "noop"
simulcount = 0
mpp = no
}
# Loading module "updated" from file /etc/freeradius/mods-enabled/always
always updated {
rcode = "updated"
simulcount = 0
mpp = no
}
# Loaded module rlm_utf8
# Loading module "utf8" from file /etc/freeradius/mods-enabled/utf8
# Loaded module rlm_logintime
# Loading module "logintime" from file /etc/freeradius/mods-enabled/logintime
logintime {
minimum_timeout = 60
}
# Loaded module rlm_soh
# Loading module "soh" from file /etc/freeradius/mods-enabled/soh
soh {
dhcp = yes
}
# Loaded module rlm_attr_filter
# Loading module "attr_filter.post-proxy" from file /etc/freeradius/mods-enabled/attr_filter
attr_filter attr_filter.post-proxy {
filename = "/etc/freeradius/mods-config/attr_filter/post-proxy"
key = "%{Realm}"
relaxed = no
}
# Loading module "attr_filter.pre-proxy" from file /etc/freeradius/mods-enabled/attr_filter
attr_filter attr_filter.pre-proxy {
filename = "/etc/freeradius/mods-config/attr_filter/pre-proxy"
key = "%{Realm}"
relaxed = no
}
# Loading module "attr_filter.access_reject" from file /etc/freeradius/mods-enabled/attr_filter
attr_filter attr_filter.access_reject {
filename = "/etc/freeradius/mods-config/attr_filter/access_reject"
key = "%{User-Name}"
relaxed = no
}
# Loading module "attr_filter.access_challenge" from file /etc/freeradius/mods-enabled/attr_filter
attr_filter attr_filter.access_challenge {
filename = "/etc/freeradius/mods-config/attr_filter/access_challenge"
key = "%{User-Name}"
relaxed = no
}
# Loading module "attr_filter.accounting_response" from file /etc/freeradius/mods-enabled/attr_filter
attr_filter attr_filter.accounting_response {
filename = "/etc/freeradius/mods-config/attr_filter/accounting_response"
key = "%{User-Name}"
relaxed = no
}
# Loaded module rlm_rest
# Loading module "rest" from file /etc/freeradius/mods-enabled/rest
rest {
connect_uri = "http://127.0.0.1:38080/"
connect_timeout = 4.000000
}
# Loaded module rlm_date
# Loading module "date" from file /etc/freeradius/mods-enabled/date
date {
format = "%b %e %Y %H:%M:%S %Z"
utc = no
}
# Loaded module rlm_preprocess
# Loading module "preprocess" from file /etc/freeradius/mods-enabled/preprocess
preprocess {
huntgroups = "/etc/freeradius/mods-config/preprocess/huntgroups"
hints = "/etc/freeradius/mods-config/preprocess/hints"
with_ascend_hack = no
ascend_channels_per_line = 23
with_ntdomain_hack = no
with_specialix_jetstream_hack = no
with_cisco_vsa_hack = no
with_alvarion_vsa_hack = no
}
instantiate {
}
# Instantiating module "expiration" from file /etc/freeradius/mods-enabled/expiration
# Instantiating module "files" from file /etc/freeradius/mods-enabled/files
reading pairlist file /etc/freeradius/mods-config/files/authorize
reading pairlist file /etc/freeradius/mods-config/files/accounting
reading pairlist file /etc/freeradius/mods-config/files/pre-proxy
# Instantiating module "detail" from file /etc/freeradius/mods-enabled/detail
# Instantiating module "etc_passwd" from file /etc/freeradius/mods-enabled/passwd
rlm_passwd: nfields: 3 keyfield 0(User-Name) listable: no
# Instantiating module "IPASS" from file /etc/freeradius/mods-enabled/realm
# Instantiating module "suffix" from file /etc/freeradius/mods-enabled/realm
# Instantiating module "realmpercent" from file /etc/freeradius/mods-enabled/realm
# Instantiating module "ntdomain" from file /etc/freeradius/mods-enabled/realm
# Instantiating module "eap" from file /etc/freeradius/mods-enabled/eap
# Linked to sub-module rlm_eap_md5
# Linked to sub-module rlm_eap_leap
# Linked to sub-module rlm_eap_gtc
gtc {
challenge = "Password: "
auth_type = "PAP"
}
# Linked to sub-module rlm_eap_tls
tls {
tls = "tls-common"
}
tls-config tls-common {
verify_depth = 0
ca_path = "/etc/freeradius/certs"
pem_file_type = yes
private_key_file = "/etc/freeradius/certs/server.pem"
certificate_file = "/etc/freeradius/certs/server.pem"
ca_file = "/etc/freeradius/certs/ca.pem"
private_key_password = <<< secret >>>
dh_file = "/etc/freeradius/certs/dh"
fragment_size = 1024
include_length = yes
auto_chain = yes
check_crl = no
check_all_crl = no
cipher_list = "DEFAULT"
cipher_server_preference = no
ecdh_curve = "prime256v1"
cache {
enable = no
lifetime = 24
max_entries = 255
}
verify {
skip_if_ocsp_ok = no
}
ocsp {
enable = no
override_cert_url = yes
url = "http://127.0.0.1/ocsp/"
use_nonce = yes
timeout = 0
softfail = no
}
}
# Linked to sub-module rlm_eap_ttls
ttls {
tls = "tls-common"
default_eap_type = "md5"
copy_request_to_tunnel = no
use_tunneled_reply = no
virtual_server = "inner-tunnel"
include_length = yes
require_client_cert = no
}
tls: Using cached TLS configuration from previous invocation
# Linked to sub-module rlm_eap_peap
peap {
tls = "tls-common"
default_eap_type = "pap"
copy_request_to_tunnel = no
use_tunneled_reply = no
proxy_tunneled_request_as_eap = yes
virtual_server = "inner-tunnel"
soh = no
require_client_cert = no
}
tls: Using cached TLS configuration from previous invocation
# Linked to sub-module rlm_eap_mschapv2
mschapv2 {
with_ntdomain_hack = no
send_error = no
}
# Instantiating module "linelog" from file /etc/freeradius/mods-enabled/linelog
# Instantiating module "log_accounting" from file /etc/freeradius/mods-enabled/linelog
# Instantiating module "auth_log" from file /etc/freeradius/mods-enabled/detail.log
rlm_detail (auth_log): 'User-Password' suppressed, will not appear in detail output
# Instantiating module "reply_log" from file /etc/freeradius/mods-enabled/detail.log
# Instantiating module "pre_proxy_log" from file /etc/freeradius/mods-enabled/detail.log
# Instantiating module "post_proxy_log" from file /etc/freeradius/mods-enabled/detail.log
# Instantiating module "pap" from file /etc/freeradius/mods-enabled/pap
# Instantiating module "cache_eap" from file /etc/freeradius/mods-enabled/cache_eap
rlm_cache (cache_eap): Driver rlm_cache_rbtree (module rlm_cache_rbtree) loaded and linked
# Instantiating module "mschap" from file /etc/freeradius/mods-enabled/mschap
rlm_mschap (mschap): using internal authentication
# Instantiating module "reject" from file /etc/freeradius/mods-enabled/always
# Instantiating module "fail" from file /etc/freeradius/mods-enabled/always
# Instantiating module "ok" from file /etc/freeradius/mods-enabled/always
# Instantiating module "handled" from file /etc/freeradius/mods-enabled/always
# Instantiating module "invalid" from file /etc/freeradius/mods-enabled/always
# Instantiating module "userlock" from file /etc/freeradius/mods-enabled/always
# Instantiating module "notfound" from file /etc/freeradius/mods-enabled/always
# Instantiating module "noop" from file /etc/freeradius/mods-enabled/always
# Instantiating module "updated" from file /etc/freeradius/mods-enabled/always
# Instantiating module "logintime" from file /etc/freeradius/mods-enabled/logintime
# Instantiating module "attr_filter.post-proxy" from file /etc/freeradius/mods-enabled/attr_filter
reading pairlist file /etc/freeradius/mods-config/attr_filter/post-proxy
# Instantiating module "attr_filter.pre-proxy" from file /etc/freeradius/mods-enabled/attr_filter
reading pairlist file /etc/freeradius/mods-config/attr_filter/pre-proxy
# Instantiating module "attr_filter.access_reject" from file /etc/freeradius/mods-enabled/attr_filter
reading pairlist file /etc/freeradius/mods-config/attr_filter/access_reject
[/etc/freeradius/mods-config/attr_filter/access_reject]:11 Check item "FreeRADIUS-Response-Delay" found in filter list for realm "DEFAULT".
[/etc/freeradius/mods-config/attr_filter/access_reject]:11 Check item "FreeRADIUS-Response-Delay-USec" found in filter list for realm "DEFAULT".
# Instantiating module "attr_filter.access_challenge" from file /etc/freeradius/mods-enabled/attr_filter
reading pairlist file /etc/freeradius/mods-config/attr_filter/access_challenge
# Instantiating module "attr_filter.accounting_response" from file /etc/freeradius/mods-enabled/attr_filter
reading pairlist file /etc/freeradius/mods-config/attr_filter/accounting_response
# Instantiating module "rest" from file /etc/freeradius/mods-enabled/rest
authorize {
uri = "http://127.0.0.1:38080/?user=%{User-Name}&mac=%{Called-Station-ID}&action=a…"
method = "get"
body = "json"
force_to = "json"
auth = "none"
require_auth = no
timeout = 4.000000
chunk = 0
tls {
check_cert = no
check_cert_cn = no
}
}
authenticate {
uri = "http://127.0.0.1:38080/?user=%{User-Name}&mac=%{Called-Station-ID}&action=a…"
method = "get"
body = "json"
force_to = "json"
auth = "none"
require_auth = no
timeout = 4.000000
chunk = 0
tls {
check_cert = no
check_cert_cn = no
}
}
accounting {
uri = "http://127.0.0.1:38080/?user=%{User-Name}&sessions=%{Acct-Unique-Session-ID}"
method = "post"
body = "none"
auth = "none"
require_auth = no
timeout = 4.000000
chunk = 0
tls {
check_cert = no
check_cert_cn = no
}
}
post-auth {
uri = "http://127.0.0.1:38080/?user=%{User-Name}&mac=%{Called-Station-ID}&action=p…"
method = "post"
body = "none"
auth = "none"
require_auth = no
timeout = 4.000000
chunk = 0
tls {
check_cert = no
check_cert_cn = no
}
}
rlm_rest: libcurl version: libcurl/7.35.0 OpenSSL/1.0.1f zlib/1.2.8 libidn/1.28 librtmp/2.3
rlm_rest (rest): Initialising connection pool
pool {
start = 5
min = 3
max = 32
spare = 10
uses = 0
lifetime = 0
cleanup_interval = 30
idle_timeout = 60
retry_delay = 30
spread = no
}
rlm_rest (rest): Opening additional connection (0), 1 of 32 pending slots used
rlm_rest (rest): Connecting to "http://127.0.0.1:38080/"
rlm_rest (rest): Opening additional connection (1), 1 of 31 pending slots used
rlm_rest (rest): Connecting to "http://127.0.0.1:38080/"
rlm_rest (rest): Opening additional connection (2), 1 of 30 pending slots used
rlm_rest (rest): Connecting to "http://127.0.0.1:38080/"
rlm_rest (rest): Opening additional connection (3), 1 of 29 pending slots used
rlm_rest (rest): Connecting to "http://127.0.0.1:38080/"
rlm_rest (rest): Opening additional connection (4), 1 of 28 pending slots used
rlm_rest (rest): Connecting to "http://127.0.0.1:38080/"
# Instantiating module "preprocess" from file /etc/freeradius/mods-enabled/preprocess
reading pairlist file /etc/freeradius/mods-config/preprocess/huntgroups
reading pairlist file /etc/freeradius/mods-config/preprocess/hints
} # modules
radiusd: #### Loading Virtual Servers ####
server { # from file /etc/freeradius/radiusd.conf
} # server
server inner-tunnel { # from file /etc/freeradius/sites-enabled/inner-tunnel
# Loading authenticate {...}
# Loading authorize {...}
Ignoring "sql" (see raddb/mods-available/README.rst)
Ignoring "ldap" (see raddb/mods-available/README.rst)
# Loading session {...}
# Loading post-proxy {...}
# Loading post-auth {...}
# Skipping contents of 'if' as it is always 'false' -- /etc/freeradius/sites-enabled/inner-tunnel:331
} # server inner-tunnel
server default { # from file /etc/freeradius/sites-enabled/default
# Loading authenticate {...}
# Loading authorize {...}
# Loading preacct {...}
# Loading accounting {...}
# Loading post-proxy {...}
# Loading post-auth {...}
} # server default
radiusd: #### Opening IP addresses and Ports ####
listen {
type = "auth"
ipaddr = 127.0.0.1
port = 18120
}
listen {
type = "auth"
ipaddr = *
port = 0
limit {
max_connections = 16
lifetime = 0
idle_timeout = 30
}
}
listen {
type = "acct"
ipaddr = *
port = 0
limit {
max_connections = 16
lifetime = 0
idle_timeout = 30
}
}
listen {
type = "auth"
ipv6addr = ::
port = 0
limit {
max_connections = 16
lifetime = 0
idle_timeout = 30
}
}
listen {
type = "acct"
ipv6addr = ::
port = 0
limit {
max_connections = 16
lifetime = 0
idle_timeout = 30
}
}
Listening on auth address 127.0.0.1 port 18120 bound to server inner-tunnel
Listening on auth address * port 1812 bound to server default
Listening on acct address * port 1813 bound to server default
Listening on auth address :: port 1812 bound to server default
Listening on acct address :: port 1813 bound to server default
Listening on proxy address * port 55452
Listening on proxy address :: port 40543
Ready to process requests
(0) Received Access-Request Id 126 from 12.148.189.27:47323 to 172.31.26.65:1812 length 176
(0) User-Name = "testuser"
(0) NAS-IP-Address = 127.0.0.1
(0) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(0) NAS-Port-Type = Wireless-802.11
(0) NAS-Port = 1
(0) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(0) Connect-Info = "CONNECT 54Mbps 802.11a"
(0) Acct-Session-Id = "5AB3D033-0000007E"
(0) Framed-MTU = 1400
(0) EAP-Message = 0x021c000d017465737475736572
(0) Message-Authenticator = 0xb3bf7a0e42522c64b845df1b0a401227
(0) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(0) authorize {
(0) policy filter_username {
(0) if (&User-Name) {
(0) if (&User-Name) -> TRUE
(0) if (&User-Name) {
(0) if (&User-Name =~ / /) {
(0) if (&User-Name =~ / /) -> FALSE
(0) if (&User-Name =~ /@[^@]*@/ ) {
(0) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(0) if (&User-Name =~ /\.\./ ) {
(0) if (&User-Name =~ /\.\./ ) -> FALSE
(0) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(0) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(0) if (&User-Name =~ /\.$/) {
(0) if (&User-Name =~ /\.$/) -> FALSE
(0) if (&User-Name =~ /(a)\./) {
(0) if (&User-Name =~ /(a)\./) -> FALSE
(0) } # if (&User-Name) = notfound
(0) } # policy filter_username = notfound
(0) [preprocess] = ok
rlm_rest (rest): Reserved connection (0)
(0) rest: Expanding URI components
(0) rest: EXPAND http://127.0.0.1:38080
(0) rest: --> http://127.0.0.1:38080
(0) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(0) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(0) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(0) rest: Processing response header
(0) rest: Status : 200 (OK)
(0) rest: Parsing attribute "Cleartext-Password"
(0) rest: EXPAND xxx
(0) rest: --> xxx
(0) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (0)
Need 5 more connections to reach 10 spares
rlm_rest (rest): Opening additional connection (5), 1 of 27 pending slots used
rlm_rest (rest): Connecting to "http://127.0.0.1:38080/"
(0) [rest] = updated
(0) eap: Peer sent EAP Response (code 2) ID 28 length 13
(0) eap: EAP-Identity reply, returning 'ok' so we can short-circuit the rest of authorize
(0) [eap] = ok
(0) } # authorize = ok
(0) Found Auth-Type = eap
(0) # Executing group from file /etc/freeradius/sites-enabled/default
(0) authenticate {
(0) eap: Peer sent packet with method EAP Identity (1)
(0) eap: Calling submodule eap_md5 to process data
(0) eap_md5: Issuing MD5 Challenge
(0) eap: Sending EAP Request (code 1) ID 29 length 22
(0) eap: EAP session adding &reply:State = 0x0b4114500b5c10c8
(0) [eap] = handled
(0) } # authenticate = handled
(0) Using Post-Auth-Type Challenge
(0) # Executing group from file /etc/freeradius/sites-enabled/default
(0) Challenge { ... } # empty sub-section is ignored
(0) Sent Access-Challenge Id 126 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(0) EAP-Message = 0x011d001604107222bffedbe1e4df07465cc2578ce4a3
(0) Message-Authenticator = 0x00000000000000000000000000000000
(0) State = 0x0b4114500b5c10c83a88292d3ebd9d32
(0) Finished request
Waking up in 4.9 seconds.
(1) Received Access-Request Id 127 from 12.148.189.27:47323 to 172.31.26.65:1812 length 187
(1) User-Name = "testuser"
(1) NAS-IP-Address = 127.0.0.1
(1) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(1) NAS-Port-Type = Wireless-802.11
(1) NAS-Port = 1
(1) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(1) Connect-Info = "CONNECT 54Mbps 802.11a"
(1) Acct-Session-Id = "5AB3D033-0000007E"
(1) Framed-MTU = 1400
(1) EAP-Message = 0x021d00060319
(1) State = 0x0b4114500b5c10c83a88292d3ebd9d32
(1) Message-Authenticator = 0x18782e10664f35e3407bae19710a649b
(1) session-state: No cached attributes
(1) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(1) authorize {
(1) policy filter_username {
(1) if (&User-Name) {
(1) if (&User-Name) -> TRUE
(1) if (&User-Name) {
(1) if (&User-Name =~ / /) {
(1) if (&User-Name =~ / /) -> FALSE
(1) if (&User-Name =~ /@[^@]*@/ ) {
(1) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(1) if (&User-Name =~ /\.\./ ) {
(1) if (&User-Name =~ /\.\./ ) -> FALSE
(1) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(1) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(1) if (&User-Name =~ /\.$/) {
(1) if (&User-Name =~ /\.$/) -> FALSE
(1) if (&User-Name =~ /(a)\./) {
(1) if (&User-Name =~ /(a)\./) -> FALSE
(1) } # if (&User-Name) = notfound
(1) } # policy filter_username = notfound
(1) [preprocess] = ok
rlm_rest (rest): Reserved connection (1)
(1) rest: Expanding URI components
(1) rest: EXPAND http://127.0.0.1:38080
(1) rest: --> http://127.0.0.1:38080
(1) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(1) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(1) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(1) rest: Processing response header
(1) rest: Status : 200 (OK)
(1) rest: Parsing attribute "Cleartext-Password"
(1) rest: EXPAND xxx
(1) rest: --> xxx
(1) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (1)
(1) [rest] = updated
(1) eap: Peer sent EAP Response (code 2) ID 29 length 6
(1) eap: No EAP Start, assuming it's an on-going EAP conversation
(1) [eap] = updated
(1) [expiration] = noop
(1) [logintime] = noop
(1) pap: WARNING: No "known good" password found for the user. Not setting Auth-Type
(1) pap: WARNING: Authentication will fail unless a "known good" password is available
(1) [pap] = noop
(1) } # authorize = updated
(1) Found Auth-Type = eap
(1) # Executing group from file /etc/freeradius/sites-enabled/default
(1) authenticate {
(1) eap: Expiring EAP session with state 0x0b4114500b5c10c8
(1) eap: Finished EAP session with state 0x0b4114500b5c10c8
(1) eap: Previous EAP request found for state 0x0b4114500b5c10c8, released from the list
(1) eap: Peer sent packet with method EAP NAK (3)
(1) eap: Found mutually acceptable type PEAP (25)
(1) eap: Calling submodule eap_peap to process data
(1) eap_peap: Initiating new EAP-TLS session
(1) eap_peap: [eaptls start] = request
(1) eap: Sending EAP Request (code 1) ID 30 length 6
(1) eap: EAP session adding &reply:State = 0x0b4114500a5f0dc8
(1) [eap] = handled
(1) } # authenticate = handled
(1) Using Post-Auth-Type Challenge
(1) # Executing group from file /etc/freeradius/sites-enabled/default
(1) Challenge { ... } # empty sub-section is ignored
(1) Sent Access-Challenge Id 127 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(1) EAP-Message = 0x011e00061920
(1) Message-Authenticator = 0x00000000000000000000000000000000
(1) State = 0x0b4114500a5f0dc83a88292d3ebd9d32
(1) Finished request
Waking up in 4.9 seconds.
(2) Received Access-Request Id 128 from 12.148.189.27:47323 to 172.31.26.65:1812 length 356
(2) User-Name = "testuser"
(2) NAS-IP-Address = 127.0.0.1
(2) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(2) NAS-Port-Type = Wireless-802.11
(2) NAS-Port = 1
(2) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(2) Connect-Info = "CONNECT 54Mbps 802.11a"
(2) Acct-Session-Id = "5AB3D033-0000007E"
(2) Framed-MTU = 1400
(2) EAP-Message = 0x021e00af1980000000a516030100a00100009c030335fd3465413bcc82dfcc24ae589cbe4b5f8b0da9bbd7e97c09826de05334a09c00003ec02cc030009fc02bc02f009ecca9cca8c00ac024c014c0280039006bc009c023c013c02700330067c007c011009d009c0035003d002f003c00050004000a01
(2) State = 0x0b4114500a5f0dc83a88292d3ebd9d32
(2) Message-Authenticator = 0x7968a4db8aeafec02915d7ec5028a281
(2) session-state: No cached attributes
(2) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(2) authorize {
(2) policy filter_username {
(2) if (&User-Name) {
(2) if (&User-Name) -> TRUE
(2) if (&User-Name) {
(2) if (&User-Name =~ / /) {
(2) if (&User-Name =~ / /) -> FALSE
(2) if (&User-Name =~ /@[^@]*@/ ) {
(2) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(2) if (&User-Name =~ /\.\./ ) {
(2) if (&User-Name =~ /\.\./ ) -> FALSE
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(2) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(2) if (&User-Name =~ /\.$/) {
(2) if (&User-Name =~ /\.$/) -> FALSE
(2) if (&User-Name =~ /(a)\./) {
(2) if (&User-Name =~ /(a)\./) -> FALSE
(2) } # if (&User-Name) = notfound
(2) } # policy filter_username = notfound
(2) [preprocess] = ok
rlm_rest (rest): Reserved connection (2)
(2) rest: Expanding URI components
(2) rest: EXPAND http://127.0.0.1:38080
(2) rest: --> http://127.0.0.1:38080
(2) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(2) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(2) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(2) rest: Processing response header
(2) rest: Status : 200 (OK)
(2) rest: Parsing attribute "Cleartext-Password"
(2) rest: EXPAND xxx
(2) rest: --> xxx
(2) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (2)
(2) [rest] = updated
(2) eap: Peer sent EAP Response (code 2) ID 30 length 175
(2) eap: Continuing tunnel setup
(2) [eap] = ok
(2) } # authorize = ok
(2) Found Auth-Type = eap
(2) # Executing group from file /etc/freeradius/sites-enabled/default
(2) authenticate {
(2) eap: Expiring EAP session with state 0x0b4114500a5f0dc8
(2) eap: Finished EAP session with state 0x0b4114500a5f0dc8
(2) eap: Previous EAP request found for state 0x0b4114500a5f0dc8, released from the list
(2) eap: Peer sent packet with method EAP PEAP (25)
(2) eap: Calling submodule eap_peap to process data
(2) eap_peap: Continuing EAP-TLS
(2) eap_peap: Peer indicated complete TLS record size will be 165 bytes
(2) eap_peap: Got complete TLS record (165 bytes)
(2) eap_peap: [eaptls verify] = length included
(2) eap_peap: (other): before/accept initialization
(2) eap_peap: TLS_accept: before/accept initialization
(2) eap_peap: <<< recv TLS 1.2 [length 00a0]
(2) eap_peap: TLS_accept: SSLv3 read client hello A
(2) eap_peap: >>> send TLS 1.2 [length 0039]
(2) eap_peap: TLS_accept: SSLv3 write server hello A
(2) eap_peap: >>> send TLS 1.2 [length 08d3]
(2) eap_peap: TLS_accept: SSLv3 write certificate A
(2) eap_peap: >>> send TLS 1.2 [length 014d]
(2) eap_peap: TLS_accept: SSLv3 write key exchange A
(2) eap_peap: >>> send TLS 1.2 [length 0004]
(2) eap_peap: TLS_accept: SSLv3 write server done A
(2) eap_peap: TLS_accept: SSLv3 flush data
(2) eap_peap: TLS_accept: Need to read more data: SSLv3 read client certificate A
(2) eap_peap: TLS_accept: Need to read more data: SSLv3 read client certificate A
(2) eap_peap: In SSL Handshake Phase
(2) eap_peap: In SSL Accept mode
(2) eap_peap: [eaptls process] = handled
(2) eap: Sending EAP Request (code 1) ID 31 length 1004
(2) eap: EAP session adding &reply:State = 0x0b411450095e0dc8
(2) [eap] = handled
(2) } # authenticate = handled
(2) Using Post-Auth-Type Challenge
(2) # Executing group from file /etc/freeradius/sites-enabled/default
(2) Challenge { ... } # empty sub-section is ignored
(2) Sent Access-Challenge Id 128 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(2) EAP-Message = 0x011f03ec19c000000a71160303003902000035030348d6e6436511a0c47d008c9b9c21faaacaf1bb0e7ef381737ef7480aa228b27400c03000000dff01000100000b00040300010216030308d30b0008cf0008cc0003de308203da308202c2a003020102020101300d06092a864886f70d01010b050030
(2) Message-Authenticator = 0x00000000000000000000000000000000
(2) State = 0x0b411450095e0dc83a88292d3ebd9d32
(2) Finished request
Waking up in 4.8 seconds.
(3) Received Access-Request Id 129 from 12.148.189.27:47323 to 172.31.26.65:1812 length 187
(3) User-Name = "testuser"
(3) NAS-IP-Address = 127.0.0.1
(3) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(3) NAS-Port-Type = Wireless-802.11
(3) NAS-Port = 1
(3) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(3) Connect-Info = "CONNECT 54Mbps 802.11a"
(3) Acct-Session-Id = "5AB3D033-0000007E"
(3) Framed-MTU = 1400
(3) EAP-Message = 0x021f00061900
(3) State = 0x0b411450095e0dc83a88292d3ebd9d32
(3) Message-Authenticator = 0x52f3d97fe9bb86b78cf4ac59cad41be0
(3) session-state: No cached attributes
(3) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(3) authorize {
(3) policy filter_username {
(3) if (&User-Name) {
(3) if (&User-Name) -> TRUE
(3) if (&User-Name) {
(3) if (&User-Name =~ / /) {
(3) if (&User-Name =~ / /) -> FALSE
(3) if (&User-Name =~ /@[^@]*@/ ) {
(3) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(3) if (&User-Name =~ /\.\./ ) {
(3) if (&User-Name =~ /\.\./ ) -> FALSE
(3) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(3) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(3) if (&User-Name =~ /\.$/) {
(3) if (&User-Name =~ /\.$/) -> FALSE
(3) if (&User-Name =~ /(a)\./) {
(3) if (&User-Name =~ /(a)\./) -> FALSE
(3) } # if (&User-Name) = notfound
(3) } # policy filter_username = notfound
(3) [preprocess] = ok
rlm_rest (rest): Reserved connection (3)
(3) rest: Expanding URI components
(3) rest: EXPAND http://127.0.0.1:38080
(3) rest: --> http://127.0.0.1:38080
(3) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(3) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(3) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(3) rest: Processing response header
(3) rest: Status : 200 (OK)
(3) rest: Parsing attribute "Cleartext-Password"
(3) rest: EXPAND xxx
(3) rest: --> xxx
(3) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (3)
(3) [rest] = updated
(3) eap: Peer sent EAP Response (code 2) ID 31 length 6
(3) eap: Continuing tunnel setup
(3) [eap] = ok
(3) } # authorize = ok
(3) Found Auth-Type = eap
(3) # Executing group from file /etc/freeradius/sites-enabled/default
(3) authenticate {
(3) eap: Expiring EAP session with state 0x0b411450095e0dc8
(3) eap: Finished EAP session with state 0x0b411450095e0dc8
(3) eap: Previous EAP request found for state 0x0b411450095e0dc8, released from the list
(3) eap: Peer sent packet with method EAP PEAP (25)
(3) eap: Calling submodule eap_peap to process data
(3) eap_peap: Continuing EAP-TLS
(3) eap_peap: Peer ACKed our handshake fragment
(3) eap_peap: [eaptls verify] = request
(3) eap_peap: [eaptls process] = handled
(3) eap: Sending EAP Request (code 1) ID 32 length 1000
(3) eap: EAP session adding &reply:State = 0x0b41145008610dc8
(3) [eap] = handled
(3) } # authenticate = handled
(3) Using Post-Auth-Type Challenge
(3) # Executing group from file /etc/freeradius/sites-enabled/default
(3) Challenge { ... } # empty sub-section is ignored
(3) Sent Access-Challenge Id 129 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(3) EAP-Message = 0x012003e81940cde3f324ca249bedabd066119c681a573d117ea3022864366f480c80fa575ab23d705108c00198dba38d7f1c53bc178f86b8b688ef094e68e014e70acd43e2430c1bebdb6603f5d4fe0004e8308204e4308203cca0030201020209008e86baf6e55a51bd300d06092a864886f70d01010b
(3) Message-Authenticator = 0x00000000000000000000000000000000
(3) State = 0x0b41145008610dc83a88292d3ebd9d32
(3) Finished request
Waking up in 4.7 seconds.
(4) Received Access-Request Id 130 from 12.148.189.27:47323 to 172.31.26.65:1812 length 187
(4) User-Name = "testuser"
(4) NAS-IP-Address = 127.0.0.1
(4) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(4) NAS-Port-Type = Wireless-802.11
(4) NAS-Port = 1
(4) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(4) Connect-Info = "CONNECT 54Mbps 802.11a"
(4) Acct-Session-Id = "5AB3D033-0000007E"
(4) Framed-MTU = 1400
(4) EAP-Message = 0x022000061900
(4) State = 0x0b41145008610dc83a88292d3ebd9d32
(4) Message-Authenticator = 0x4a27d64a3b10e6a91137a697ac080bd6
(4) session-state: No cached attributes
(4) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(4) authorize {
(4) policy filter_username {
(4) if (&User-Name) {
(4) if (&User-Name) -> TRUE
(4) if (&User-Name) {
(4) if (&User-Name =~ / /) {
(4) if (&User-Name =~ / /) -> FALSE
(4) if (&User-Name =~ /@[^@]*@/ ) {
(4) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(4) if (&User-Name =~ /\.\./ ) {
(4) if (&User-Name =~ /\.\./ ) -> FALSE
(4) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(4) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(4) if (&User-Name =~ /\.$/) {
(4) if (&User-Name =~ /\.$/) -> FALSE
(4) if (&User-Name =~ /(a)\./) {
(4) if (&User-Name =~ /(a)\./) -> FALSE
(4) } # if (&User-Name) = notfound
(4) } # policy filter_username = notfound
(4) [preprocess] = ok
rlm_rest (rest): Reserved connection (4)
(4) rest: Expanding URI components
(4) rest: EXPAND http://127.0.0.1:38080
(4) rest: --> http://127.0.0.1:38080
(4) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(4) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(4) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(4) rest: Processing response header
(4) rest: Status : 200 (OK)
(4) rest: Parsing attribute "Cleartext-Password"
(4) rest: EXPAND xxx
(4) rest: --> xxx
(4) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (4)
(4) [rest] = updated
(4) eap: Peer sent EAP Response (code 2) ID 32 length 6
(4) eap: Continuing tunnel setup
(4) [eap] = ok
(4) } # authorize = ok
(4) Found Auth-Type = eap
(4) # Executing group from file /etc/freeradius/sites-enabled/default
(4) authenticate {
(4) eap: Expiring EAP session with state 0x0b41145008610dc8
(4) eap: Finished EAP session with state 0x0b41145008610dc8
(4) eap: Previous EAP request found for state 0x0b41145008610dc8, released from the list
(4) eap: Peer sent packet with method EAP PEAP (25)
(4) eap: Calling submodule eap_peap to process data
(4) eap_peap: Continuing EAP-TLS
(4) eap_peap: Peer ACKed our handshake fragment
(4) eap_peap: [eaptls verify] = request
(4) eap_peap: [eaptls process] = handled
(4) eap: Sending EAP Request (code 1) ID 33 length 691
(4) eap: EAP session adding &reply:State = 0x0b4114500f600dc8
(4) [eap] = handled
(4) } # authenticate = handled
(4) Using Post-Auth-Type Challenge
(4) # Executing group from file /etc/freeradius/sites-enabled/default
(4) Challenge { ... } # empty sub-section is ignored
(4) Sent Access-Challenge Id 130 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(4) EAP-Message = 0x012102b319000530030101ff30360603551d1f042f302d302ba029a0278625687474703a2f2f7777772e6578616d706c652e6f72672f6578616d706c655f63612e63726c300d06092a864886f70d01010b05000382010100369b3dc157df2fc2d04eb9f9e4641dfcaf1bc39da12fb47b6e4b70629434ab
(4) Message-Authenticator = 0x00000000000000000000000000000000
(4) State = 0x0b4114500f600dc83a88292d3ebd9d32
(4) Finished request
Waking up in 4.6 seconds.
(5) Received Access-Request Id 131 from 12.148.189.27:47323 to 172.31.26.65:1812 length 317
(5) User-Name = "testuser"
(5) NAS-IP-Address = 127.0.0.1
(5) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(5) NAS-Port-Type = Wireless-802.11
(5) NAS-Port = 1
(5) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(5) Connect-Info = "CONNECT 54Mbps 802.11a"
(5) Acct-Session-Id = "5AB3D033-0000007E"
(5) Framed-MTU = 1400
(5) EAP-Message = 0x0221008819800000007e16030300461000004241043f89551524632bf7ca7035c29cb78cdc3afe9e4755b9c89f6f097584a51227523e6be7d2829d7b2a665b4a01eac4323c71aaea1a1c5e0b77be151216e7e0573714030300010116030300280000000000000000037cf591109ae9adcf8c7a203a8b21
(5) State = 0x0b4114500f600dc83a88292d3ebd9d32
(5) Message-Authenticator = 0x4855591436228d65c6b3b0c8464491bb
(5) session-state: No cached attributes
(5) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(5) authorize {
(5) policy filter_username {
(5) if (&User-Name) {
(5) if (&User-Name) -> TRUE
(5) if (&User-Name) {
(5) if (&User-Name =~ / /) {
(5) if (&User-Name =~ / /) -> FALSE
(5) if (&User-Name =~ /@[^@]*@/ ) {
(5) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(5) if (&User-Name =~ /\.\./ ) {
(5) if (&User-Name =~ /\.\./ ) -> FALSE
(5) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(5) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(5) if (&User-Name =~ /\.$/) {
(5) if (&User-Name =~ /\.$/) -> FALSE
(5) if (&User-Name =~ /(a)\./) {
(5) if (&User-Name =~ /(a)\./) -> FALSE
(5) } # if (&User-Name) = notfound
(5) } # policy filter_username = notfound
(5) [preprocess] = ok
rlm_rest (rest): Reserved connection (0)
(5) rest: Expanding URI components
(5) rest: EXPAND http://127.0.0.1:38080
(5) rest: --> http://127.0.0.1:38080
(5) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(5) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(5) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(5) rest: Processing response header
(5) rest: Status : 200 (OK)
(5) rest: Parsing attribute "Cleartext-Password"
(5) rest: EXPAND xxx
(5) rest: --> xxx
(5) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (0)
(5) [rest] = updated
(5) eap: Peer sent EAP Response (code 2) ID 33 length 136
(5) eap: Continuing tunnel setup
(5) [eap] = ok
(5) } # authorize = ok
(5) Found Auth-Type = eap
(5) # Executing group from file /etc/freeradius/sites-enabled/default
(5) authenticate {
(5) eap: Expiring EAP session with state 0x0b4114500f600dc8
(5) eap: Finished EAP session with state 0x0b4114500f600dc8
(5) eap: Previous EAP request found for state 0x0b4114500f600dc8, released from the list
(5) eap: Peer sent packet with method EAP PEAP (25)
(5) eap: Calling submodule eap_peap to process data
(5) eap_peap: Continuing EAP-TLS
(5) eap_peap: Peer indicated complete TLS record size will be 126 bytes
(5) eap_peap: Got complete TLS record (126 bytes)
(5) eap_peap: [eaptls verify] = length included
(5) eap_peap: <<< recv TLS 1.2 [length 0046]
(5) eap_peap: TLS_accept: SSLv3 read client key exchange A
(5) eap_peap: <<< recv TLS 1.2 [length 0001]
(5) eap_peap: <<< recv TLS 1.2 [length 0010]
(5) eap_peap: TLS_accept: SSLv3 read finished A
(5) eap_peap: >>> send TLS 1.2 [length 0001]
(5) eap_peap: TLS_accept: SSLv3 write change cipher spec A
(5) eap_peap: >>> send TLS 1.2 [length 0010]
(5) eap_peap: TLS_accept: SSLv3 write finished A
(5) eap_peap: TLS_accept: SSLv3 flush data
(5) eap_peap: (other): SSL negotiation finished successfully
(5) eap_peap: SSL Connection Established
(5) eap_peap: [eaptls process] = handled
(5) eap: Sending EAP Request (code 1) ID 34 length 57
(5) eap: EAP session adding &reply:State = 0x0b4114500e630dc8
(5) [eap] = handled
(5) } # authenticate = handled
(5) Using Post-Auth-Type Challenge
(5) # Executing group from file /etc/freeradius/sites-enabled/default
(5) Challenge { ... } # empty sub-section is ignored
(5) Sent Access-Challenge Id 131 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(5) EAP-Message = 0x0122003919001403030001011603030028c83609123255ee4657216f1cd0a07291e8556a7f8333a357f12ce21a3437bb6921b5640c1cc11096
(5) Message-Authenticator = 0x00000000000000000000000000000000
(5) State = 0x0b4114500e630dc83a88292d3ebd9d32
(5) Finished request
Waking up in 4.5 seconds.
(6) Received Access-Request Id 132 from 12.148.189.27:47323 to 172.31.26.65:1812 length 187
(6) User-Name = "testuser"
(6) NAS-IP-Address = 127.0.0.1
(6) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(6) NAS-Port-Type = Wireless-802.11
(6) NAS-Port = 1
(6) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(6) Connect-Info = "CONNECT 54Mbps 802.11a"
(6) Acct-Session-Id = "5AB3D033-0000007E"
(6) Framed-MTU = 1400
(6) EAP-Message = 0x022200061900
(6) State = 0x0b4114500e630dc83a88292d3ebd9d32
(6) Message-Authenticator = 0x6f95acdb80de2744da1abda59b7c7d00
(6) session-state: No cached attributes
(6) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(6) authorize {
(6) policy filter_username {
(6) if (&User-Name) {
(6) if (&User-Name) -> TRUE
(6) if (&User-Name) {
(6) if (&User-Name =~ / /) {
(6) if (&User-Name =~ / /) -> FALSE
(6) if (&User-Name =~ /@[^@]*@/ ) {
(6) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(6) if (&User-Name =~ /\.\./ ) {
(6) if (&User-Name =~ /\.\./ ) -> FALSE
(6) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(6) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(6) if (&User-Name =~ /\.$/) {
(6) if (&User-Name =~ /\.$/) -> FALSE
(6) if (&User-Name =~ /(a)\./) {
(6) if (&User-Name =~ /(a)\./) -> FALSE
(6) } # if (&User-Name) = notfound
(6) } # policy filter_username = notfound
(6) [preprocess] = ok
rlm_rest (rest): Reserved connection (5)
(6) rest: Expanding URI components
(6) rest: EXPAND http://127.0.0.1:38080
(6) rest: --> http://127.0.0.1:38080
(6) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(6) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(6) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(6) rest: Processing response header
(6) rest: Status : 200 (OK)
(6) rest: Parsing attribute "Cleartext-Password"
(6) rest: EXPAND xxx
(6) rest: --> xxx
(6) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (5)
(6) [rest] = updated
(6) eap: Peer sent EAP Response (code 2) ID 34 length 6
(6) eap: Continuing tunnel setup
(6) [eap] = ok
(6) } # authorize = ok
(6) Found Auth-Type = eap
(6) # Executing group from file /etc/freeradius/sites-enabled/default
(6) authenticate {
(6) eap: Expiring EAP session with state 0x0b4114500e630dc8
(6) eap: Finished EAP session with state 0x0b4114500e630dc8
(6) eap: Previous EAP request found for state 0x0b4114500e630dc8, released from the list
(6) eap: Peer sent packet with method EAP PEAP (25)
(6) eap: Calling submodule eap_peap to process data
(6) eap_peap: Continuing EAP-TLS
(6) eap_peap: Peer ACKed our handshake fragment. handshake is finished
(6) eap_peap: [eaptls verify] = success
(6) eap_peap: [eaptls process] = success
(6) eap_peap: Session established. Decoding tunneled attributes
(6) eap_peap: PEAP state TUNNEL ESTABLISHED
(6) eap: Sending EAP Request (code 1) ID 35 length 40
(6) eap: EAP session adding &reply:State = 0x0b4114500d620dc8
(6) [eap] = handled
(6) } # authenticate = handled
(6) Using Post-Auth-Type Challenge
(6) # Executing group from file /etc/freeradius/sites-enabled/default
(6) Challenge { ... } # empty sub-section is ignored
(6) Sent Access-Challenge Id 132 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(6) EAP-Message = 0x012300281900170303001dc83609123255ee47337cf8325eb6ae05caf73c658aae48c000d2ad8d56
(6) Message-Authenticator = 0x00000000000000000000000000000000
(6) State = 0x0b4114500d620dc83a88292d3ebd9d32
(6) Finished request
Waking up in 4.4 seconds.
(7) Received Access-Request Id 133 from 12.148.189.27:47323 to 172.31.26.65:1812 length 225
(7) User-Name = "testuser"
(7) NAS-IP-Address = 127.0.0.1
(7) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(7) NAS-Port-Type = Wireless-802.11
(7) NAS-Port = 1
(7) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(7) Connect-Info = "CONNECT 54Mbps 802.11a"
(7) Acct-Session-Id = "5AB3D033-0000007E"
(7) Framed-MTU = 1400
(7) EAP-Message = 0x0223002c19001703030021000000000000000123fb52a39a9ba3daa863b4c366da5b3f610debdb7fe858fa28
(7) State = 0x0b4114500d620dc83a88292d3ebd9d32
(7) Message-Authenticator = 0xcf5511b77afd032948795887f43972d0
(7) session-state: No cached attributes
(7) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(7) authorize {
(7) policy filter_username {
(7) if (&User-Name) {
(7) if (&User-Name) -> TRUE
(7) if (&User-Name) {
(7) if (&User-Name =~ / /) {
(7) if (&User-Name =~ / /) -> FALSE
(7) if (&User-Name =~ /@[^@]*@/ ) {
(7) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(7) if (&User-Name =~ /\.\./ ) {
(7) if (&User-Name =~ /\.\./ ) -> FALSE
(7) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(7) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(7) if (&User-Name =~ /\.$/) {
(7) if (&User-Name =~ /\.$/) -> FALSE
(7) if (&User-Name =~ /(a)\./) {
(7) if (&User-Name =~ /(a)\./) -> FALSE
(7) } # if (&User-Name) = notfound
(7) } # policy filter_username = notfound
(7) [preprocess] = ok
rlm_rest (rest): Reserved connection (1)
(7) rest: Expanding URI components
(7) rest: EXPAND http://127.0.0.1:38080
(7) rest: --> http://127.0.0.1:38080
(7) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(7) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(7) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(7) rest: Processing response header
(7) rest: Status : 200 (OK)
(7) rest: Parsing attribute "Cleartext-Password"
(7) rest: EXPAND xxx
(7) rest: --> xxx
(7) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (1)
(7) [rest] = updated
(7) eap: Peer sent EAP Response (code 2) ID 35 length 44
(7) eap: Continuing tunnel setup
(7) [eap] = ok
(7) } # authorize = ok
(7) Found Auth-Type = eap
(7) # Executing group from file /etc/freeradius/sites-enabled/default
(7) authenticate {
(7) eap: Expiring EAP session with state 0x0b4114500d620dc8
(7) eap: Finished EAP session with state 0x0b4114500d620dc8
(7) eap: Previous EAP request found for state 0x0b4114500d620dc8, released from the list
(7) eap: Peer sent packet with method EAP PEAP (25)
(7) eap: Calling submodule eap_peap to process data
(7) eap_peap: Continuing EAP-TLS
(7) eap_peap: [eaptls verify] = ok
(7) eap_peap: Done initial handshake
(7) eap_peap: [eaptls process] = ok
(7) eap_peap: Session established. Decoding tunneled attributes
(7) eap_peap: PEAP state WAITING FOR INNER IDENTITY
(7) eap_peap: Identity - testuser
(7) eap_peap: Got inner identity 'testuser'
(7) eap_peap: Got tunneled request
(7) eap_peap: EAP-Message = 0x0223000d017465737475736572
(7) eap_peap: Setting User-Name to testuser
(7) eap_peap: Sending tunneled request to inner-tunnel
(7) eap_peap: EAP-Message = 0x0223000d017465737475736572
(7) eap_peap: FreeRADIUS-Proxied-To = 127.0.0.1
(7) eap_peap: User-Name = "testuser"
(7) Virtual server inner-tunnel received request
(7) EAP-Message = 0x0223000d017465737475736572
(7) FreeRADIUS-Proxied-To = 127.0.0.1
(7) User-Name = "testuser"
(7) WARNING: Outer and inner identities are the same. User privacy is compromised.
(7) server inner-tunnel {
(7) # Executing section authorize from file /etc/freeradius/sites-enabled/inner-tunnel
(7) authorize {
(7) policy filter_username {
(7) if (&User-Name) {
(7) if (&User-Name) -> TRUE
(7) if (&User-Name) {
(7) if (&User-Name =~ / /) {
(7) if (&User-Name =~ / /) -> FALSE
(7) if (&User-Name =~ /@[^@]*@/ ) {
(7) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(7) if (&User-Name =~ /\.\./ ) {
(7) if (&User-Name =~ /\.\./ ) -> FALSE
(7) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(7) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(7) if (&User-Name =~ /\.$/) {
(7) if (&User-Name =~ /\.$/) -> FALSE
(7) if (&User-Name =~ /(a)\./) {
(7) if (&User-Name =~ /(a)\./) -> FALSE
(7) } # if (&User-Name) = notfound
(7) } # policy filter_username = notfound
(7) [chap] = noop
(7) suffix: Checking for suffix after "@"
(7) suffix: No '@' in User-Name = "testuser", looking up realm NULL
(7) suffix: No such realm "NULL"
(7) [suffix] = noop
(7) update control {
(7) &Proxy-To-Realm := LOCAL
(7) } # update control = noop
(7) eap: Peer sent EAP Response (code 2) ID 35 length 13
(7) eap: EAP-Identity reply, returning 'ok' so we can short-circuit the rest of authorize
(7) [eap] = ok
(7) } # authorize = ok
(7) Found Auth-Type = eap
(7) # Executing group from file /etc/freeradius/sites-enabled/inner-tunnel
(7) authenticate {
(7) eap: Peer sent packet with method EAP Identity (1)
(7) eap: Calling submodule eap_md5 to process data
(7) eap_md5: Issuing MD5 Challenge
(7) eap: Sending EAP Request (code 1) ID 36 length 22
(7) eap: EAP session adding &reply:State = 0x34c83c5534ec38aa
(7) [eap] = handled
(7) } # authenticate = handled
(7) } # server inner-tunnel
(7) Virtual server sending reply
(7) EAP-Message = 0x012400160410de4bc2bc713235e79fa8f8d915b7056e
(7) Message-Authenticator = 0x00000000000000000000000000000000
(7) State = 0x34c83c5534ec38aaa95c3e3716dd9c6d
(7) eap_peap: Got tunneled reply code 11
(7) eap_peap: EAP-Message = 0x012400160410de4bc2bc713235e79fa8f8d915b7056e
(7) eap_peap: Message-Authenticator = 0x00000000000000000000000000000000
(7) eap_peap: State = 0x34c83c5534ec38aaa95c3e3716dd9c6d
(7) eap_peap: Got tunneled reply RADIUS code 11
(7) eap_peap: EAP-Message = 0x012400160410de4bc2bc713235e79fa8f8d915b7056e
(7) eap_peap: Message-Authenticator = 0x00000000000000000000000000000000
(7) eap_peap: State = 0x34c83c5534ec38aaa95c3e3716dd9c6d
(7) eap_peap: Got tunneled Access-Challenge
(7) eap: Sending EAP Request (code 1) ID 36 length 53
(7) eap: EAP session adding &reply:State = 0x0b4114500c650dc8
(7) [eap] = handled
(7) } # authenticate = handled
(7) Using Post-Auth-Type Challenge
(7) # Executing group from file /etc/freeradius/sites-enabled/default
(7) Challenge { ... } # empty sub-section is ignored
(7) Sent Access-Challenge Id 133 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(7) EAP-Message = 0x012400351900170303002ac83609123255ee48f3ffc3b2fac0a1c8c6f932b32b5daa6523973c66e54fdad2dd4b44b7d269744240d7
(7) Message-Authenticator = 0x00000000000000000000000000000000
(7) State = 0x0b4114500c650dc83a88292d3ebd9d32
(7) Finished request
Waking up in 4.4 seconds.
(8) Received Access-Request Id 134 from 12.148.189.27:47323 to 172.31.26.65:1812 length 234
(8) User-Name = "testuser"
(8) NAS-IP-Address = 127.0.0.1
(8) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(8) NAS-Port-Type = Wireless-802.11
(8) NAS-Port = 1
(8) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(8) Connect-Info = "CONNECT 54Mbps 802.11a"
(8) Acct-Session-Id = "5AB3D033-0000007E"
(8) Framed-MTU = 1400
(8) EAP-Message = 0x022400351900170303002a00000000000000026d086d447448f6529b2f893a90cc8c4c56121f38a9b78ba1ae4fdfcec6312cca3780
(8) State = 0x0b4114500c650dc83a88292d3ebd9d32
(8) Message-Authenticator = 0x910a748b9b3e2eb9e5e0cae46f984304
(8) session-state: No cached attributes
(8) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(8) authorize {
(8) policy filter_username {
(8) if (&User-Name) {
(8) if (&User-Name) -> TRUE
(8) if (&User-Name) {
(8) if (&User-Name =~ / /) {
(8) if (&User-Name =~ / /) -> FALSE
(8) if (&User-Name =~ /@[^@]*@/ ) {
(8) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(8) if (&User-Name =~ /\.\./ ) {
(8) if (&User-Name =~ /\.\./ ) -> FALSE
(8) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(8) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(8) if (&User-Name =~ /\.$/) {
(8) if (&User-Name =~ /\.$/) -> FALSE
(8) if (&User-Name =~ /(a)\./) {
(8) if (&User-Name =~ /(a)\./) -> FALSE
(8) } # if (&User-Name) = notfound
(8) } # policy filter_username = notfound
(8) [preprocess] = ok
rlm_rest (rest): Reserved connection (2)
(8) rest: Expanding URI components
(8) rest: EXPAND http://127.0.0.1:38080
(8) rest: --> http://127.0.0.1:38080
(8) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(8) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(8) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(8) rest: Processing response header
(8) rest: Status : 200 (OK)
(8) rest: Parsing attribute "Cleartext-Password"
(8) rest: EXPAND xxx
(8) rest: --> xxx
(8) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (2)
Need 4 more connections to reach 10 spares
rlm_rest (rest): Opening additional connection (6), 1 of 26 pending slots used
rlm_rest (rest): Connecting to "http://127.0.0.1:38080/"
(8) [rest] = updated
(8) eap: Peer sent EAP Response (code 2) ID 36 length 53
(8) eap: Continuing tunnel setup
(8) [eap] = ok
(8) } # authorize = ok
(8) Found Auth-Type = eap
(8) # Executing group from file /etc/freeradius/sites-enabled/default
(8) authenticate {
(8) eap: Expiring EAP session with state 0x34c83c5534ec38aa
(8) eap: Finished EAP session with state 0x0b4114500c650dc8
(8) eap: Previous EAP request found for state 0x0b4114500c650dc8, released from the list
(8) eap: Peer sent packet with method EAP PEAP (25)
(8) eap: Calling submodule eap_peap to process data
(8) eap_peap: Continuing EAP-TLS
(8) eap_peap: [eaptls verify] = ok
(8) eap_peap: Done initial handshake
(8) eap_peap: [eaptls process] = ok
(8) eap_peap: Session established. Decoding tunneled attributes
(8) eap_peap: PEAP state phase2
(8) eap_peap: EAP method MD5 (4)
(8) eap_peap: Got tunneled request
(8) eap_peap: EAP-Message = 0x022400160410bbcfe2ccff99ffee87a3dd275e220fb2
(8) eap_peap: Setting User-Name to testuser
(8) eap_peap: Sending tunneled request to inner-tunnel
(8) eap_peap: EAP-Message = 0x022400160410bbcfe2ccff99ffee87a3dd275e220fb2
(8) eap_peap: FreeRADIUS-Proxied-To = 127.0.0.1
(8) eap_peap: User-Name = "testuser"
(8) eap_peap: State = 0x34c83c5534ec38aaa95c3e3716dd9c6d
(8) Virtual server inner-tunnel received request
(8) EAP-Message = 0x022400160410bbcfe2ccff99ffee87a3dd275e220fb2
(8) FreeRADIUS-Proxied-To = 127.0.0.1
(8) User-Name = "testuser"
(8) State = 0x34c83c5534ec38aaa95c3e3716dd9c6d
(8) WARNING: Outer and inner identities are the same. User privacy is compromised.
(8) server inner-tunnel {
(8) session-state: No cached attributes
(8) # Executing section authorize from file /etc/freeradius/sites-enabled/inner-tunnel
(8) authorize {
(8) policy filter_username {
(8) if (&User-Name) {
(8) if (&User-Name) -> TRUE
(8) if (&User-Name) {
(8) if (&User-Name =~ / /) {
(8) if (&User-Name =~ / /) -> FALSE
(8) if (&User-Name =~ /@[^@]*@/ ) {
(8) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(8) if (&User-Name =~ /\.\./ ) {
(8) if (&User-Name =~ /\.\./ ) -> FALSE
(8) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(8) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(8) if (&User-Name =~ /\.$/) {
(8) if (&User-Name =~ /\.$/) -> FALSE
(8) if (&User-Name =~ /(a)\./) {
(8) if (&User-Name =~ /(a)\./) -> FALSE
(8) } # if (&User-Name) = notfound
(8) } # policy filter_username = notfound
(8) [chap] = noop
(8) suffix: Checking for suffix after "@"
(8) suffix: No '@' in User-Name = "testuser", looking up realm NULL
(8) suffix: No such realm "NULL"
(8) [suffix] = noop
(8) update control {
(8) &Proxy-To-Realm := LOCAL
(8) } # update control = noop
(8) eap: Peer sent EAP Response (code 2) ID 36 length 22
(8) eap: No EAP Start, assuming it's an on-going EAP conversation
(8) [eap] = updated
(8) [files] = noop
(8) [expiration] = noop
(8) [logintime] = noop
(8) [pap] = noop
(8) } # authorize = updated
(8) Found Auth-Type = eap
(8) # Executing group from file /etc/freeradius/sites-enabled/inner-tunnel
(8) authenticate {
(8) eap: Expiring EAP session with state 0x34c83c5534ec38aa
(8) eap: Finished EAP session with state 0x34c83c5534ec38aa
(8) eap: Previous EAP request found for state 0x34c83c5534ec38aa, released from the list
(8) eap: Peer sent packet with method EAP MD5 (4)
(8) eap: Calling submodule eap_md5 to process data
(8) eap_md5: ERROR: Cleartext-Password is required for EAP-MD5 authentication
(8) eap: ERROR: Failed continuing EAP MD5 (4) session. EAP sub-module failed
(8) eap: Sending EAP Failure (code 4) ID 36 length 4
(8) eap: Failed in EAP select
(8) [eap] = invalid
(8) } # authenticate = invalid
(8) Failed to authenticate the user
(8) Using Post-Auth-Type Reject
(8) # Executing group from file /etc/freeradius/sites-enabled/inner-tunnel
(8) Post-Auth-Type REJECT {
(8) attr_filter.access_reject: EXPAND %{User-Name}
(8) attr_filter.access_reject: --> testuser
(8) attr_filter.access_reject: Matched entry DEFAULT at line 11
(8) [attr_filter.access_reject] = updated
(8) update outer.session-state {
(8) &Module-Failure-Message := &request:Module-Failure-Message -> 'eap_md5: Cleartext-Password is required for EAP-MD5 authentication'
(8) } # update outer.session-state = noop
(8) } # Post-Auth-Type REJECT = updated
(8) } # server inner-tunnel
(8) Virtual server sending reply
(8) EAP-Message = 0x04240004
(8) Message-Authenticator = 0x00000000000000000000000000000000
(8) eap_peap: Got tunneled reply code 3
(8) eap_peap: EAP-Message = 0x04240004
(8) eap_peap: Message-Authenticator = 0x00000000000000000000000000000000
(8) eap_peap: Got tunneled reply RADIUS code 3
(8) eap_peap: EAP-Message = 0x04240004
(8) eap_peap: Message-Authenticator = 0x00000000000000000000000000000000
(8) eap_peap: Tunneled authentication was rejected
(8) eap_peap: FAILURE
(8) eap: Sending EAP Request (code 1) ID 37 length 46
(8) eap: EAP session adding &reply:State = 0x0b41145003640dc8
(8) [eap] = handled
(8) } # authenticate = handled
(8) Using Post-Auth-Type Challenge
(8) # Executing group from file /etc/freeradius/sites-enabled/default
(8) Challenge { ... } # empty sub-section is ignored
(8) session-state: Saving cached attributes
(8) Module-Failure-Message := "eap_md5: Cleartext-Password is required for EAP-MD5 authentication"
(8) Sent Access-Challenge Id 134 from 172.31.26.65:1812 to 12.148.189.27:47323 length 0
(8) EAP-Message = 0x0125002e19001703030023c83609123255ee49c077598dddc774c14f97e733731d2b55da70b4625069fa1af46e38
(8) Message-Authenticator = 0x00000000000000000000000000000000
(8) State = 0x0b41145003640dc83a88292d3ebd9d32
(8) Finished request
Waking up in 4.3 seconds.
(9) Received Access-Request Id 135 from 12.148.189.27:47323 to 172.31.26.65:1812 length 227
(9) User-Name = "testuser"
(9) NAS-IP-Address = 127.0.0.1
(9) Called-Station-Id = "02-F0-21-36-26-47:radtest"
(9) NAS-Port-Type = Wireless-802.11
(9) NAS-Port = 1
(9) Calling-Station-Id = "FC-DB-B3-D8-B2-A9"
(9) Connect-Info = "CONNECT 54Mbps 802.11a"
(9) Acct-Session-Id = "5AB3D033-0000007E"
(9) Framed-MTU = 1400
(9) EAP-Message = 0x0225002e1900170303002300000000000000031923d42e02f9147c6a5beb55ea462fe2a0fd65953a332bb02322e1
(9) State = 0x0b41145003640dc83a88292d3ebd9d32
(9) Message-Authenticator = 0x1b4109be566f43a6f4e0ccef2ae09272
(9) Restoring &session-state
(9) &session-state:Module-Failure-Message := "eap_md5: Cleartext-Password is required for EAP-MD5 authentication"
(9) # Executing section authorize from file /etc/freeradius/sites-enabled/default
(9) authorize {
(9) policy filter_username {
(9) if (&User-Name) {
(9) if (&User-Name) -> TRUE
(9) if (&User-Name) {
(9) if (&User-Name =~ / /) {
(9) if (&User-Name =~ / /) -> FALSE
(9) if (&User-Name =~ /@[^@]*@/ ) {
(9) if (&User-Name =~ /@[^@]*@/ ) -> FALSE
(9) if (&User-Name =~ /\.\./ ) {
(9) if (&User-Name =~ /\.\./ ) -> FALSE
(9) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) {
(9) if ((&User-Name =~ /@/) && (&User-Name !~ /(a)(.+)\.(.+)$/)) -> FALSE
(9) if (&User-Name =~ /\.$/) {
(9) if (&User-Name =~ /\.$/) -> FALSE
(9) if (&User-Name =~ /(a)\./) {
(9) if (&User-Name =~ /(a)\./) -> FALSE
(9) } # if (&User-Name) = notfound
(9) } # policy filter_username = notfound
(9) [preprocess] = ok
rlm_rest (rest): Reserved connection (3)
(9) rest: Expanding URI components
(9) rest: EXPAND http://127.0.0.1:38080
(9) rest: --> http://127.0.0.1:38080
(9) rest: EXPAND /?user=%{User-Name}&mac=%{Called-Station-ID}&action=authorize
(9) rest: --> /?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&action=authorize
(9) rest: Sending HTTP GET to "http://127.0.0.1:38080/?user=testuser&mac=02-F0-21-36-26-47%3Aradtest&actio…"
(9) rest: Processing response header
(9) rest: Status : 200 (OK)
(9) rest: Parsing attribute "Cleartext-Password"
(9) rest: EXPAND xxx
(9) rest: --> xxx
(9) rest: Cleartext-Password := "xxx"
rlm_rest (rest): Released connection (3)
(9) [rest] = updated
(9) eap: Peer sent EAP Response (code 2) ID 37 length 46
(9) eap: Continuing tunnel setup
(9) [eap] = ok
(9) } # authorize = ok
(9) Found Auth-Type = eap
(9) # Executing group from file /etc/freeradius/sites-enabled/default
(9) authenticate {
(9) eap: Expiring EAP session with state 0x0b41145003640dc8
(9) eap: Finished EAP session with state 0x0b41145003640dc8
(9) eap: Previous EAP request found for state 0x0b41145003640dc8, released from the list
(9) eap: Peer sent packet with method EAP PEAP (25)
(9) eap: Calling submodule eap_peap to process data
(9) eap_peap: Continuing EAP-TLS
(9) eap_peap: [eaptls verify] = ok
(9) eap_peap: Done initial handshake
(9) eap_peap: [eaptls process] = ok
(9) eap_peap: Session established. Decoding tunneled attributes
(9) eap_peap: PEAP state send tlv failure
(9) eap_peap: Received EAP-TLV response
(9) eap_peap: ERROR: The users session was previously rejected: returning reject (again.)
(9) eap_peap: This means you need to read the PREVIOUS messages in the debug output
(9) eap_peap: to find out the reason why the user was rejected
(9) eap_peap: Look for "reject" or "fail". Those earlier messages will tell you
(9) eap_peap: what went wrong, and how to fix the problem
(9) eap: ERROR: Failed continuing EAP PEAP (25) session. EAP sub-module failed
(9) eap: Sending EAP Failure (code 4) ID 37 length 4
(9) eap: Failed in EAP select
(9) [eap] = invalid
(9) } # authenticate = invalid
(9) Failed to authenticate the user
(9) Using Post-Auth-Type Reject
(9) # Executing group from file /etc/freeradius/sites-enabled/default
(9) Post-Auth-Type REJECT {
(9) attr_filter.access_reject: EXPAND %{User-Name}
(9) attr_filter.access_reject: --> testuser
(9) attr_filter.access_reject: Matched entry DEFAULT at line 11
(9) [attr_filter.access_reject] = updated
(9) [eap] = noop
(9) policy remove_reply_message_if_eap {
(9) if (&reply:EAP-Message && &reply:Reply-Message) {
(9) if (&reply:EAP-Message && &reply:Reply-Message) -> FALSE
(9) else {
(9) [noop] = noop
(9) } # else = noop
(9) } # policy remove_reply_message_if_eap = noop
(9) } # Post-Auth-Type REJECT = updated
(9) Delaying response for 1.000000 seconds
Waking up in 0.3 seconds.
Waking up in 0.6 seconds.
(9) Sending delayed response
(9) Sent Access-Reject Id 135 from 172.31.26.65:1812 to 12.148.189.27:47323 length 44
(9) EAP-Message = 0x04250004
(9) Message-Authenticator = 0x00000000000000000000000000000000
Waking up in 3.2 seconds.
(0) Cleaning up request packet ID 126 with timestamp +16
(1) Cleaning up request packet ID 127 with timestamp +16
(2) Cleaning up request packet ID 128 with timestamp +16
(3) Cleaning up request packet ID 129 with timestamp +16
(4) Cleaning up request packet ID 130 with timestamp +16
(5) Cleaning up request packet ID 131 with timestamp +16
(6) Cleaning up request packet ID 132 with timestamp +16
(7) Cleaning up request packet ID 133 with timestamp +16
(8) Cleaning up request packet ID 134 with timestamp +17
(9) Cleaning up request packet ID 135 with timestamp +17
Ready to process requests
Ready to process requests
Signalled to terminate
Exiting normally
rlm_rest (rest): Removing connection pool
rlm_rest (rest): Closing connection (6)
rlm_rest (rest): Closing connection (5)
rlm_rest (rest): Closing connection (4)
rlm_rest (rest): Closing connection (3)
rlm_rest (rest): Closing connection (2)
rlm_rest (rest): Closing connection (1)
rlm_rest (rest): Closing connection (0)
3
6
hi,
A weird thing is that I use LDAP to auenticate Network devices and
SuperMicro Server.
Code talks, see below, SuperMicro presents its NAS IP as 127.0.0.1,while
Network device isn't.
======== SECTION: post-auth =====================
# Ref NO: 1
if (&LDAP-Group == "network-2" && &NAS-IP-Address != "127.0.0.1") {
update reply {
&Service-Type = "NAS-Prompt-User",
&Huawei-Exec-Privilege = "2",
&Login-Service = 50,
}
}
#Ref NO: 2
if (&LDAP-Group == "mgmt-console" && &NAS-IP-Address == "127.0.0.1") {
update reply {
&Attr-26 = 0x483D342C20493D34
}
}
#Ref No: 3
else {
update reply {
&Reply-Message = "%{User-Name} is not allowed to access
%{NAS-IP-Address}."
}
reject
}
===================================================
Apparently if user exists in both network-2 and mgmt-console groups of
LDAP, the trick thing occurs.
First, it's true of Ref No.1, the auth continues, then Ref NO.2 evaluates,
while NAS isn't 127.0.0.1(I'm logging in network device), Ref No.2 isn't
true, it comes to `else` , AKA Ref NO.3, user is denied by network device.
Any way to handle this situation?
I spend the whole day to do this, but no progress made yet.
Thanks.
3
3