LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Networking
User Name
Password
Linux - Networking This forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.

Notices


Reply
  Search this Thread
Old 04-12-2018, 02:03 AM   #1
retrosnob
LQ Newbie
 
Registered: Apr 2018
Posts: 8

Rep: Reputation: Disabled
WPA2 PEAP MSCHAPV2 handshake failure on Client Hello


I am having terrible trouble connecting to my school WPA2 PEAP MSCHAPV2 wifi. I've tried Network Manager, wicd and connman and most recently I am connecting via wpa_supplicant.

The school does not require a CA certificate. I know this is ill-advised but I don't have responsibility for that.
The connection works immediately in Windows, with which I dual boot, so I know the hardware is working.

I have included dmesg output, wpa_supplicant.conf, wpa_supplicant -dd debug output, and relevant wireshark packets in this Google doc:

https://docs.google.com/document/d/1...VDdt7ReGW0LiKg

The problem occurs after the Client Hello when the AP disconnects because of a handshake failure.

I have been working for days on this and have tried the system-ca-certs=false workaround. Any pointers would be gratefully received.

Last edited by retrosnob; 04-12-2018 at 05:08 PM. Reason: Added information
 
Old 04-13-2018, 10:50 AM   #2
Mill J
Senior Member
 
Registered: Feb 2017
Location: @127.0.0.1
Distribution: Mint, Void, MX, Haiku, PMOS, Plasma Mobile, and many others
Posts: 1,258
Blog Entries: 2

Rep: Reputation: 542Reputation: 542Reputation: 542Reputation: 542Reputation: 542Reputation: 542
What hardware and distro are you using?
 
Old 04-13-2018, 10:00 PM   #3
allend
LQ 5k Club
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware64-15.0
Posts: 6,372

Rep: Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750
Perhaps it is this issue. https://unix.stackexchange.com/quest...ng-when-trying
 
Old 04-14-2018, 09:20 PM   #4
retrosnob
LQ Newbie
 
Registered: Apr 2018
Posts: 8

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by Mill J View Post
What hardware and distro are you using?
The first two lines of the document I provided state the hardware and distro....
 
Old 04-16-2018, 07:35 PM   #5
retrosnob
LQ Newbie
 
Registered: Apr 2018
Posts: 8

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by allend View Post
This was an excellent suggestion - thank you - but after renaming wlp3s0 to wlan0 I got exactly the same response: a handshake failure at the client hello. I wonder if anyone can suggest any other tools I can use to investigate? Is there any way I can work out exactly why the handshake failed? From the Wireshark packets it looks like my laptop is using TLS v1.2, but the AP is using TLS v1.0 and so perhaps aborts the connection on that basis?
 
Old 04-17-2018, 08:30 AM   #6
allend
LQ 5k Club
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware64-15.0
Posts: 6,372

Rep: Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750
According to this perhaps
Code:
phase1="peaplabel=auto tls_disable_tlsv1_2=1"
in your wpa_supplicant.conf will work.
 
Old 04-17-2018, 06:18 PM   #7
retrosnob
LQ Newbie
 
Registered: Apr 2018
Posts: 8

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by allend View Post
According to this perhaps
Code:
phase1="peaplabel=auto tls_disable_tlsv1_2=1"
in your wpa_supplicant.conf will work.
Thank you. I've already tried this and I also tried disabling TLSv1.1 as well and I always have exactly the same problem.

It seems that my Debian laptop is sending the client hello using TLSv1.2:

SSL Record Layer: Handshake Protocol: Client Hello
Content Type: Handshake (22)
Version: TLS 1.0 (0x0301)
Length: 266
Handshake Protocol: Client Hello
Handshake Type: Client Hello (1)
Length: 262
Version: TLS 1.2 (0x0303)


And the server is coming back with TLSv1.0:

Secure Sockets Layer
TLSv1 Record Layer: Alert (Level: Fatal, Description: Handshake Failure)
Content Type: Alert (21)
Version: TLS 1.0 (0x0301)
Length: 2
Alert Message
Level: Fatal (2)
Description: Handshake Failure (40)


But I'm afraid I don't really know how to take this further. When I boot into Windows I can connect with no trouble at all and perhaps I can find out the details of what Windows is doing that works. I'm trying to decipher the Wireshark output from Windows, but it seems to send so much junk that it's quite difficult to decipher it. I will soldier on. Thanks for your suggestion.
 
Old 04-17-2018, 06:40 PM   #8
allend
LQ 5k Club
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware64-15.0
Posts: 6,372

Rep: Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750Reputation: 2750
It is likely that your Debian openssl package now disables TLS 1.0 and TLS 1.1 as deprecated protocols. e.g. https://lists.debian.org/debian-deve.../msg00004.html
 
Old 04-17-2018, 09:05 PM   #9
retrosnob
LQ Newbie
 
Registered: Apr 2018
Posts: 8

Original Poster
Rep: Reputation: Disabled
Arrow

Quote:
Originally Posted by allend View Post
It is likely that your Debian openssl package now disables TLS 1.0 and TLS 1.1 as deprecated protocols. e.g. https://lists.debian.org/debian-deve.../msg00004.html
Oddly enough it looks like Debian is the one that is using TLSv1.0 in some way. I've compared Wireshark info when connecting to the same server on the same client hardware using Debian and Windows. I was surprised that Windows makes no mention at all of EAP. I don't know why that is. The only difference between these sections is the mention of TLSv1.0 in the Debian packet. I haven't included the lists of cipher suites and hash algorithms.

Edit: There's also an error in the GMT Unix Time field but apparently it's not important, at least to TLS itself.

Debian (not working)

Secure Sockets Layer
SSL Record Layer: Handshake Protocol: Client Hello
Content Type: Handshake (22)
Version: TLS 1.0 (0x0301)
Length: 266
Handshake Protocol: Client Hello
Handshake Type: Client Hello (1)
Length: 262
Version: TLS 1.2 (0x0303)
Random
GMT Unix Time: Mar 28, 2014 16:12:13.000000000 +08
Random Bytes: 96461b52573c44bd376f9254d355b7dbcb5e63e41141ccd5...
Session ID Length: 0

Windows (working)

Secure Sockets Layer
TLSv1.2 Record Layer: Handshake Protocol: Client Hello
Content Type: Handshake (22)
Version: TLS 1.2 (0x0303)
Length: 175
Handshake Protocol: Client Hello
Handshake Type: Client Hello (1)
Length: 171
Version: TLS 1.2 (0x0303)
Random: 5ad56d681c707d3b8fca96cfffb65cacca7e484b1adf3950...
GMT Unix Time: Apr 17, 2018 11:43:36.000000000 Malay Peninsula Standard Time
Random Bytes: 1c707d3b8fca96cfffb65cacca7e484b1adf3950fefca876...
Session ID Length: 0

Last edited by retrosnob; 04-18-2018 at 06:33 PM.
 
Old 04-18-2018, 06:27 PM   #10
retrosnob
LQ Newbie
 
Registered: Apr 2018
Posts: 8

Original Poster
Rep: Reputation: Disabled
More detail

For comparison, here is the client hello from an Ubuntu laptop on the same network. This laptop uses Network Manager but exactly the same config on the Debian machine won't connect.

Ubuntu (working)

802.1X Authentication
Version: 802.1X-2001 (1)
Type: EAP Packet (0)
Length: 311
Extensible Authentication Protocol
Code: Response (2)
Id: 2
Length: 311
Type: Protected EAP (EAP-PEAP) (25)
EAP-TLS Flags: 0x80
1... .... = Length Included: True
.0.. .... = More Fragments: False
..0. .... = Start: False
.... .000 = Version: 0
EAP-TLS Length: 301
Secure Sockets Layer
TLSv1 Record Layer: Handshake Protocol: Client Hello
Content Type: Handshake (22)
Version: TLS 1.0 (0x0301)
Length: 296
Handshake Protocol: Client Hello
Handshake Type: Client Hello (1)
Length: 292
Version: TLS 1.2 (0x0303)
Random
GMT Unix Time: Aug 18, 2080 05:43:50.000000000 +08
Random Bytes: eb97037fc1f3bc7b340637386797de6b4162eea72f86bbc4...
Session ID Length: 0
Cipher Suites Length: 170
Cipher Suites (85 suites)
etc
Compression Methods Length: 1
Compression Methods (1 method)
Compression Method: null (0)
Extensions Length: 81
Extension: ec_point_formats
Type: ec_point_formats (0x000b)
Length: 4
EC point formats Length: 3
Elliptic curves point formats (3)
EC point format: uncompressed (0)
EC point format: ansiX962_compressed_prime (1)
EC point format: ansiX962_compressed_char2 (2)
Extension: elliptic_curves
Type: elliptic_curves (0x000a)
Length: 28
Elliptic Curves Length: 26
Elliptic curves (13 curves)
etc
Extension: signature_algorithms
Type: signature_algorithms (0x000d)
Length: 32
Signature Hash Algorithms Length: 30
Signature Hash Algorithms (15 algorithms)
etc
Extension: Heartbeat
Type: Heartbeat (0x000f)
Length: 1
Mode: Peer allowed to send requests (1)

Last edited by retrosnob; 04-18-2018 at 06:34 PM.
 
Old 04-18-2018, 07:02 PM   #11
retrosnob
LQ Newbie
 
Registered: Apr 2018
Posts: 8

Original Poster
Rep: Reputation: Disabled
Ok. I've found that the server wants to use a cipher suite (an old one) that Debian Stretch doesn't support. The cipher suite is tls_rsa_with_3des_ede_cbc_sha.
 
Old 05-06-2018, 05:31 PM   #12
retrosnob
LQ Newbie
 
Registered: Apr 2018
Posts: 8

Original Poster
Rep: Reputation: Disabled
Give up

I'll close this but in fact it's not solved.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
WlanConnection - WPA2-EAP(PEAP;MSCHAPv2) How to configure? huberbauer Linux - Wireless Networking 5 10-02-2014 06:40 AM
WPA2-Enterprise AES PEAP/MSCHAPV2, dhcp times out valbaca Slackware 6 01-30-2013 07:41 AM
[SOLVED] Connecting to WPA2 with PEAP and MSCHAPv2 carltm Linux - Networking 1 11-12-2010 10:42 AM
Setting up WPA-Supplicant and PEAP,MSCHAPV2 metallica1973 Linux - Wireless Networking 14 07-09-2008 05:36 PM
802.1x, Radius, MSChapv2, PEAP Micah Linux - Wireless Networking 10 11-05-2004 01:10 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Networking

All times are GMT -5. The time now is 02:56 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration