authentication eap-sim to AP is failed

Muhammad Hasan muhhasan.1311 at gmail.com
Mon Jun 30 16:12:47 CEST 2014


hi Alan,

I'm sorry for the late response.

​>
hi,
> see all those WARNINGS and MUST messages in your debug output after the
> "reading pairlist file /etc/freeradius/users" line?

> fix them

I was tried to fix the reading pairlist as much as I can.
in the user files, I made followed this format:
1510101425520064 at wlan.mnc101.mcc510.3gppnetwork.org  EAP-Type :=SIM,
EAP-Sim-Rand1 :=0x3FFA1C8555A04485841D99585B59FA04, EAP-Sim-SRES1 :=
0x2A59e3a0, EAP-Sim-KC1 :=0x637f534f6375c400, EAP-Sim-Rand2
:=0xBA20E6E8BB359BD0843EBF34673D1541, EAP-Sim-SRES2 :=0xBDC5490D,
EAP-Sim-KC2 :=0x8FE8D4E09E5BFC00, EAP-Sim-Rand3
:=0xB4C3D755C3C359E3EF6E928641CA59F1, EAP-Sim-SRES3 :=0x404A3DAA,
EAP-Sim-KC3 :=0x83EF559E1B33A000

if I see the log that's different from before in the "reading pairlist file
/etc/freeradius/users" line,
that's mean it has been fixed?

> see all the EAP conversations going on?  your server is trying to do MD5,
that
> gets NAKs, then its trying another type...its now doing PEAP and failing
due to
> bad certs.... so, that makes me think your client isnt configured to
actually be
> doing SIM-AKA anyway(!)

​yes, I see the eap conversation after read it again,
but would you tell me​ how to configure so my client doing eap-sim?

actually, I used Freeradius-server 2.2.0 on my virtual box, and my mine OS
is windows 7
​first I just want connect to my AP, when I was trying to connect the AP,
for the network authentication I have to insert username & password,
in the username should I insert the IMSI? I just insert eap-sim for the
username & password, so the log show the username is eap-sim.

​here's the log after I changed the users

instantiate {
 Module: Linked to module rlm_exec
 Module: Instantiating module "exec" from file /etc/freeradius/modules/exec
  exec {
      wait = no
      input_pairs = "request"
      shell_escape = yes
  }
 Module: Linked to module rlm_expr
 Module: Instantiating module "expr" from file /etc/freeradius/modules/expr
 Module: Linked to module rlm_expiration
 Module: Instantiating module "expiration" from file
/etc/freeradius/modules/expiration
  expiration {
      reply-message = "Password Has Expired  "
  }
 Module: Linked to module rlm_logintime
 Module: Instantiating module "logintime" from file
/etc/freeradius/modules/logintime
  logintime {
      reply-message = "You are calling outside your allowed timespan  "
      minimum-timeout = 60
  }
 }
radiusd: #### Loading Virtual Servers ####
server { # from file /etc/freeradius/radiusd.conf
 modules {
  Module: Creating Auth-Type = digest
  Module: Creating Post-Auth-Type = REJECT
 Module: Checking authenticate {...} for more modules to load
 Module: Linked to module rlm_pap
 Module: Instantiating module "pap" from file /etc/freeradius/modules/pap
  pap {
      encryption_scheme = "auto"
      auto_header = no
  }
 Module: Linked to module rlm_chap
 Module: Instantiating module "chap" from file /etc/freeradius/modules/chap
 Module: Linked to module rlm_mschap
 Module: Instantiating module "mschap" from file
/etc/freeradius/modules/mschap
  mschap {
      use_mppe = yes
      require_encryption = no
      require_strong = no
      with_ntdomain_hack = no
      allow_retry = yes
  }
 Module: Linked to module rlm_digest
 Module: Instantiating module "digest" from file
/etc/freeradius/modules/digest
 Module: Linked to module rlm_unix
 Module: Instantiating module "unix" from file /etc/freeradius/modules/unix
  unix {
      radwtmp = "/var/log/freeradius/radwtmp"
  }
 Module: Linked to module rlm_eap
 Module: Instantiating module "eap" from file /etc/freeradius/eap.conf
  eap {
      default_eap_type = "md5"
      timer_expire = 60
      ignore_unknown_eap_types = no
      cisco_accounting_username_bug = no
      max_sessions = 4096
  }
 Module: Linked to sub-module rlm_eap_md5
 Module: Instantiating eap-md5
 Module: Linked to sub-module rlm_eap_leap
 Module: Instantiating eap-leap
 Module: Linked to sub-module rlm_eap_gtc
 Module: Instantiating eap-gtc
   gtc {
      challenge = "Password: "
      auth_type = "PAP"
   }
 Module: Linked to sub-module rlm_eap_tls
 Module: Instantiating eap-tls
   tls {
      rsa_key_exchange = no
      dh_key_exchange = yes
      rsa_key_length = 512
      dh_key_length = 512
      verify_depth = 0
      CA_path = "/etc/freeradius/certs"
      pem_file_type = yes
      private_key_file = "/etc/freeradius/certs/server.key"
      certificate_file = "/etc/freeradius/certs/server.pem"
      CA_file = "/etc/freeradius/certs/ca.pem"
      private_key_password = "whatever"
      dh_file = "/etc/freeradius/certs/dh"
      random_file = "/dev/urandom"
      fragment_size = 1024
      include_length = yes
      check_crl = no
      cipher_list = "DEFAULT"
      make_cert_command = "/etc/freeradius/certs/bootstrap"
      ecdh_curve = "prime256v1"
    cache {
      enable = no
      lifetime = 24
      max_entries = 255
    }
    verify {
    }
    ocsp {
      enable = no
      override_cert_url = yes
      url = "http://127.0.0.1/ocsp/"
      use_nonce = yes
      timeout = 0
      softfail = no
    }
   }
 Module: Linked to sub-module rlm_eap_ttls
 Module: Instantiating eap-ttls
   ttls {
      default_eap_type = "md5"
      copy_request_to_tunnel = no
      use_tunneled_reply = no
      virtual_server = "inner-tunnel"
      include_length = yes
   }
 Module: Linked to sub-module rlm_eap_peap
 Module: Instantiating eap-peap
   peap {
      default_eap_type = "mschapv2"
      copy_request_to_tunnel = no
      use_tunneled_reply = no
      proxy_tunneled_request_as_eap = yes
      virtual_server = "inner-tunnel"
      soh = no
   }
 Module: Linked to sub-module rlm_eap_mschapv2
 Module: Instantiating eap-mschapv2
   mschapv2 {
      with_ntdomain_hack = no
      send_error = no
   }
 Module: Linked to sub-module rlm_eap_sim
 Module: Instantiating eap-sim
 Module: Checking authorize {...} for more modules to load
 Module: Linked to module rlm_preprocess
 Module: Instantiating module "preprocess" from file
/etc/freeradius/modules/preprocess
  preprocess {
      huntgroups = "/etc/freeradius/huntgroups"
      hints = "/etc/freeradius/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
  }
reading pairlist file /etc/freeradius/huntgroups
reading pairlist file /etc/freeradius/hints
 Module: Linked to module rlm_realm
 Module: Instantiating module "suffix" from file
/etc/freeradius/modules/realm
  realm suffix {
      format = "suffix"
      delimiter = "@"
      ignore_default = no
      ignore_null = no
  }
 Module: Linked to module rlm_sim_files
 Module: Instantiating module "sim_files" from file
/etc/freeradius/modules/sim_files
  sim_files {
      simtriplets = "/etc/freeradius/simtriplets.dat"
  }
 Module: Linked to module rlm_files
 Module: Instantiating module "files" from file
/etc/freeradius/modules/files
  files {
      usersfile = "/etc/freeradius/users"
      acctusersfile = "/etc/freeradius/acct_users"
      preproxy_usersfile = "/etc/freeradius/preproxy_users"
      compat = "no"
  }
reading pairlist file /etc/freeradius/users
reading pairlist file /etc/freeradius/acct_users
reading pairlist file /etc/freeradius/preproxy_users
 Module: Checking preacct {...} for more modules to load
 Module: Linked to module rlm_acct_unique
 Module: Instantiating module "acct_unique" from file
/etc/freeradius/modules/acct_unique
  acct_unique {
      key = "User-Name, Acct-Session-Id, NAS-IP-Address, NAS-Identifier,
NAS-Port"
  }
 Module: Checking accounting {...} for more modules to load
 Module: Linked to module rlm_detail
 Module: Instantiating module "detail" from file
/etc/freeradius/modules/detail
  detail {
      detailfile =
"/var/log/freeradius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/detail-%Y%m%d"
      header = "%t"
      detailperm = 384
      dirperm = 493
      locking = no
      log_packet_header = no
  }
 Module: Linked to module rlm_attr_filter
 Module: Instantiating module "attr_filter.accounting_response" from file
/etc/freeradius/modules/attr_filter
  attr_filter attr_filter.accounting_response {
      attrsfile = "/etc/freeradius/attrs.accounting_response"
      key = "%{User-Name}"
      relaxed = no
  }
reading pairlist file /etc/freeradius/attrs.accounting_response
 Module: Checking session {...} for more modules to load
 Module: Linked to module rlm_radutmp
 Module: Instantiating module "radutmp" from file
/etc/freeradius/modules/radutmp
  radutmp {
      filename = "/var/log/freeradius/radutmp"
      username = "%{User-Name}"
      case_sensitive = yes
      check_with_nas = yes
      perm = 384
      callerid = yes
  }
 Module: Checking post-proxy {...} for more modules to load
 Module: Checking post-auth {...} for more modules to load
 Module: Instantiating module "attr_filter.access_reject" from file
/etc/freeradius/modules/attr_filter
  attr_filter attr_filter.access_reject {
      attrsfile = "/etc/freeradius/attrs.access_reject"
      key = "%{User-Name}"
      relaxed = no
  }
reading pairlist file /etc/freeradius/attrs.access_reject
 } # modules
} # server
server inner-tunnel { # from file /etc/freeradius/sites-enabled/inner-tunnel
 modules {
 Module: Checking authenticate {...} for more modules to load
 Module: Checking authorize {...} for more modules to load
 Module: Checking session {...} for more modules to load
 Module: Checking post-proxy {...} for more modules to load
 Module: Checking post-auth {...} for more modules to load
 } # modules
} # server
radiusd: #### Opening IP addresses and Ports ####
listen {
      type = "auth"
      ipaddr = *
      port = 0
}
listen {
      type = "acct"
      ipaddr = *
      port = 0
}
listen {
      type = "auth"
      ipaddr = 127.0.0.1
      port = 18120
}
 ... adding new socket proxy address * port 44396
Listening on authentication address * port 1812
Listening on accounting address * port 1813
Listening on authentication address 127.0.0.1 port 18120 as server
inner-tunnel
Listening on proxy address * port 1814
Ready to process requests.
rad_recv: Access-Request packet from host 192.168.1.1 port 2049, id=137,
length=171
      User-Name = "eap-sim"
      NAS-IP-Address = 192.168.1.1
      NAS-Port = 0
      Called-Station-Id = "004f62248f98"
      Calling-Station-Id = "742f68c46785"
      NAS-Identifier = "Realtek Access Point. 8186"
      Framed-MTU = 1400
      NAS-Port-Type = Wireless-802.11
      Service-Type = Framed-User
      Connect-Info = "CONNECT 11Mbps 802.11b"
      EAP-Message = 0x0200000c016561702d73696d
      Message-Authenticator = 0x6432f45d624c848645f3a543d5106874
# Executing section authorize from file
/etc/freeradius/sites-enabled/default
+- entering group authorize {...}
++[preprocess] returns ok
++[chap] returns noop
++[mschap] returns noop
++[digest] returns noop
[suffix] No '@' in User-Name = "eap-sim", looking up realm NULL
[suffix] No such realm "NULL"
++[suffix] returns noop
rlm_sim_files: insufficient number of challenges for imsi eap-sim: 0
++[sim_files] returns notfound
[eap] EAP packet type response id 0 length 12
[eap] No EAP Start, assuming it's an on-going EAP conversation
++[eap] returns updated
++[files] returns noop
++[expiration] returns noop
++[logintime] returns noop
[pap] WARNING! No "known good" password found for the user.  Authentication
may fail because of this.
++[pap] returns noop
Found Auth-Type = EAP
# Executing group from file /etc/freeradius/sites-enabled/default
+- entering group authenticate {...}
[eap] EAP Identity
[eap] processing type md5
rlm_eap_md5: Issuing Challenge
++[eap] returns handled
Sending Access-Challenge of id 137 to 192.168.1.1 port 2049
      EAP-Message = 0x01010016041013eade1b3c80acaa0f32a0685071e09e
      Message-Authenticator = 0x00000000000000000000000000000000
      State = 0xdc94ac22dc95a819da67496a672facf3
Finished request 0.
Going to the next request
Waking up in 4.9 seconds.
rad_recv: Access-Request packet from host 192.168.1.1 port 2049, id=138,
length=177
      User-Name = "eap-sim"
      NAS-IP-Address = 192.168.1.1
      NAS-Port = 0
      Called-Station-Id = "004f62248f98"
      Calling-Station-Id = "742f68c46785"
      NAS-Identifier = "Realtek Access Point. 8186"
      NAS-Port-Type = Wireless-802.11
      Service-Type = Framed-User
      Connect-Info = "CONNECT 11Mbps 802.11b"
      EAP-Message = 0x020100060319
      State = 0xdc94ac22dc95a819da67496a672facf3
      Message-Authenticator = 0xbafec0ba734fd199d3e98590e3e911a9
# Executing section authorize from file
/etc/freeradius/sites-enabled/default
+- entering group authorize {...}
++[preprocess] returns ok
++[chap] returns noop
++[mschap] returns noop
++[digest] returns noop
[suffix] No '@' in User-Name = "eap-sim", looking up realm NULL
[suffix] No such realm "NULL"
++[suffix] returns noop
rlm_sim_files: insufficient number of challenges for imsi eap-sim: 0
++[sim_files] returns notfound
[eap] EAP packet type response id 1 length 6
[eap] No EAP Start, assuming it's an on-going EAP conversation
++[eap] returns updated
++[files] returns noop
++[expiration] returns noop
++[logintime] returns noop
[pap] WARNING! No "known good" password found for the user.  Authentication
may fail because of this.
++[pap] returns noop
Found Auth-Type = EAP
# Executing group from file /etc/freeradius/sites-enabled/default
+- entering group authenticate {...}
[eap] Request found, released from the list
[eap] EAP NAK
[eap] EAP-NAK asked for EAP-Type/peap
[eap] processing type tls
[tls] Initiate
[tls] Start returned 1
++[eap] returns handled
Sending Access-Challenge of id 138 to 192.168.1.1 port 2049
      EAP-Message = 0x010200061920
      Message-Authenticator = 0x00000000000000000000000000000000
      State = 0xdc94ac22dd96b519da67496a672facf3
Finished request 1.
Going to the next request
Waking up in 4.9 seconds.
rad_recv: Access-Request packet from host 192.168.1.1 port 2049, id=139,
length=276
      User-Name = "eap-sim"
      NAS-IP-Address = 192.168.1.1
      NAS-Port = 0
      Called-Station-Id = "004f62248f98"
      Calling-Station-Id = "742f68c46785"
      NAS-Identifier = "Realtek Access Point. 8186"
      NAS-Port-Type = Wireless-802.11
      Service-Type = Framed-User
      Connect-Info = "CONNECT 11Mbps 802.11b"
      EAP-Message =
0x0202006919800000005f160301005a01000056030153b0f2e183da8dff7bf5fbd3d92391a1308391d7e7cd38c3ff700cfd36c76166000018002f00350005000ac013c014c009c00a003200380013000401000015ff01000100000a0006000400170018000b00020100
      State = 0xdc94ac22dd96b519da67496a672facf3
      Message-Authenticator = 0x9cf17efe2d2eec69fe2e8c37d9d752d1
# Executing section authorize from file
/etc/freeradius/sites-enabled/default
+- entering group authorize {...}
++[preprocess] returns ok
++[chap] returns noop
++[mschap] returns noop
++[digest] returns noop
[suffix] No '@' in User-Name = "eap-sim", looking up realm NULL
[suffix] No such realm "NULL"
++[suffix] returns noop
rlm_sim_files: insufficient number of challenges for imsi eap-sim: 0
++[sim_files] returns notfound
[eap] EAP packet type response id 2 length 105
[eap] Continuing tunnel setup.
++[eap] returns ok
Found Auth-Type = EAP
# Executing group from file /etc/freeradius/sites-enabled/default
+- entering group authenticate {...}
[eap] Request found, released from the list
[eap] EAP/peap
[eap] processing type peap
[peap] processing EAP-TLS
  TLS Length 95
[peap] Length Included
[peap] eaptls_verify returned 11
[peap]     (other): before/accept initialization
[peap]     TLS_accept: before/accept initialization
[peap] <<< TLS 1.0 Handshake [length 005a], ClientHello
[peap]     TLS_accept: SSLv3 read client hello A
[peap] >>> TLS 1.0 Handshake [length 0031], ServerHello
[peap]     TLS_accept: SSLv3 write server hello A
[peap] >>> TLS 1.0 Handshake [length 01a7], Certificate
[peap]     TLS_accept: SSLv3 write certificate A
[peap] >>> TLS 1.0 Handshake [length 0004], ServerHelloDone
[peap]     TLS_accept: SSLv3 write server done A
[peap]     TLS_accept: SSLv3 flush data
[peap]     TLS_accept: Need to read more data: SSLv3 read client
certificate A
In SSL Handshake Phase
In SSL Accept mode
[peap] eaptls_process returned 13
[peap] EAPTLS_HANDLED
++[eap] returns handled
Sending Access-Challenge of id 139 to 192.168.1.1 port 2049
      EAP-Message =
0x010301f1190016030100310200002d030153af9023b79ced7ccde8a23b63b8a58c3ca91241955cab002798ea0e3d3ddf5500002f000005ff0100010016030101a70b0001a30001a000019d3082019930820102020900d8625c5bc9f7dcdc300d06092a864886f70d01010505003011310f300d060355040313067562756e7475301e170d3134303631373231303330305a170d3234303631343231303330305a3011310f300d060355040313067562756e747530819f300d06092a864886f70d010101050003818d0030818902818100c374d82d8a75bcc5b948020edb08c1d5bb3c880070ff573d4523b4d27afccc380eef50e010727c0860217182c1
      EAP-Message =
0xd1608f21ed0adeeb17c1d6a6946c4fdd99876fc1fba94da1bbe1816ff176f1d46caa3fc5fb936f37fae2104213f40a87605b7ce29826aaceab75b9e91aeafa898c51252971bd690f700e5e509bfc4f0cbc51390203010001300d06092a864886f70d0101050500038181003a6ef824822c58464dcccacd831ab2cbe98a01f15f28e0047fbdf16fcf265a40ba086ca72e426e13e28e1e3f7df57ad6b87895651f888580feef1a11f84a74b55578d7e014d31eaeaa75c8d38fa0bfd0f5be3f80b7dbd5c8f0c07111d3ed7790338674c3ef6490db3ac40f20ddf2e6e011c0c4a0520c6d39fec268f451c6555716030100040e000000
      Message-Authenticator = 0x00000000000000000000000000000000
      State = 0xdc94ac22de97b519da67496a672facf3
Finished request 2.
Going to the next request
Waking up in 4.9 seconds.
rad_recv: Access-Request packet from host 192.168.1.1 port 2049, id=140,
length=188
      User-Name = "eap-sim"
      NAS-IP-Address = 192.168.1.1
      NAS-Port = 0
      Called-Station-Id = "004f62248f98"
      Calling-Station-Id = "742f68c46785"
      NAS-Identifier = "Realtek Access Point. 8186"
      NAS-Port-Type = Wireless-802.11
      Service-Type = Framed-User
      Connect-Info = "CONNECT 11Mbps 802.11b"
      EAP-Message = 0x0203001119800000000715030100020230
      State = 0xdc94ac22de97b519da67496a672facf3
      Message-Authenticator = 0xe21a6331f4d82016f61351043ccbe860
# Executing section authorize from file
/etc/freeradius/sites-enabled/default
+- entering group authorize {...}
++[preprocess] returns ok
++[chap] returns noop
++[mschap] returns noop
++[digest] returns noop
[suffix] No '@' in User-Name = "eap-sim", looking up realm NULL
[suffix] No such realm "NULL"
++[suffix] returns noop
rlm_sim_files: insufficient number of challenges for imsi eap-sim: 0
++[sim_files] returns notfound
[eap] EAP packet type response id 3 length 17
[eap] Continuing tunnel setup.
++[eap] returns ok
Found Auth-Type = EAP
# Executing group from file /etc/freeradius/sites-enabled/default
+- entering group authenticate {...}
[eap] Request found, released from the list
[eap] EAP/peap
[eap] processing type peap
[peap] processing EAP-TLS
  TLS Length 7
[peap] Length Included
[peap] eaptls_verify returned 11
[peap] <<< TLS 1.0 Alert [length 0002], fatal unknown_ca
TLS Alert read:fatal:unknown CA
    TLS_accept: failed in SSLv3 read client certificate A
rlm_eap: SSL error error:14094418:SSL routines:SSL3_READ_BYTES:tlsv1 alert
unknown ca
SSL: SSL_read failed inside of TLS (-1), TLS session fails.
TLS receive handshake failed during operation
[peap] eaptls_process returned 4
[peap] EAPTLS_OTHERS
[eap] Handler failed in EAP/peap
[eap] Failed in EAP select
++[eap] returns invalid
Failed to authenticate the user.
Using Post-Auth-Type REJECT
# Executing group from file /etc/freeradius/sites-enabled/default
+- entering group REJECT {...}
[attr_filter.access_reject]   expand: %{User-Name} -> eap-sim
attr_filter: Matched entry DEFAULT at line 11
++[attr_filter.access_reject] returns updated
Delaying reject of request 3 for 1 seconds
Going to the next request
Waking up in 0.9 seconds.
Sending delayed reject for request 3
Sending Access-Reject of id 140 to 192.168.1.1 port 2049
      EAP-Message = 0x04030004
      Message-Authenticator = 0x00000000000000000000000000000000
Waking up in 3.9 seconds.
Cleaning up request 0 ID 137 with timestamp +12
Cleaning up request 1 ID 138 with timestamp +12
Cleaning up request 2 ID 139 with timestamp +12
Waking up in 1.0 seconds.
Cleaning up request 3 ID 140 with timestamp +12
Ready to process requests.



​Best Regards
Alf​
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20140630/81afcb95/attachment-0001.html>


More information about the Freeradius-Users mailing list