Android phones have had issues connecting to Enterprise WiFi networks. While it may not happen to every phone or every situation, it may be good to know that all is not lost when you are not able to connect to your company’s Enterprise WiFi. Here, I will explain my situation and my solution which has enabled me to connect me to my company’s Enterprise WiFi. Note: Your phone may require different settings but for most cases, the steps should work still.
When I tried to connect to the company WiFi, I thought it was only a simple method. I am using a company laptop which has the Enterprise WiFi all pre-configured and I thought it would be simple to copy the settings over to my phone. However, it turned out that it wasn’t so easy. My company’s WiFi is configured as IEEE 802.1x EAP authentication – PEAP type – with a Phase 2 MSCHAPV2 authentication. Going into my CyanogenMod’s WiFi settings, I tried to configure it. I found the 802.1x EAP option under the “Security” option when I tried to add a new network so I selected that. Once 802.1x EAP option has been selected, more options turned up. The “EAP method” defaults to PEAP which is what I wanted so I skipped that. Next, the “Phase 2 authentication” defaults to none. My company’s network uses MSCHAPV2 so that’ the option that I want.
Certificates were not implemented for my company’s network so I skipped those and left them at unspecified. For the “Identity”, this is where you’d need to input your login information. My company’s network uses our Windows account logins so I’ll enter that here. Check your company’ WiFi settings to confirm. If yours is the same with mine, this is how you’re supposed to enter the information: “username@domain”. This isn’t immediately apparent, especially if you’re used to Windows style login information where it i “domain/username”. You can skip the “Anonymous identity” but definitely don’t skip the “Password” setting.
Having done all the changes (advanced options lets you configure the Proxy settings and IP settings if you need), it’s time to connect. If it connects for you automatically, congratulations. You can skip the rest of this article. However, when I tried to connect, it failed. Immediately, I headed online to see if this problem is known. It turns out, there have been a few reports online about issues when trying to connect to Enterprise WiFi networks. However, none that I looked at gave a precise set of instructions on how to solve the issue. However, one of the forums did give me a place to start. The following instructions require root access so make sure you have that.
What we need to do is to dig into the “wpa_supplicant.conf” file. This file is located here: “/data/misc/wifi/”. Before you dig into it however, be reminded that it is preferred to have the company network configured as much as we can (from the steps earlier) as it saves some of the hassle of modifying the file. Before we start modifying the file (or any system file for that matter), we should always save a backup copy just in case anything goes wrong. You can do this anyhow you want. I use “ES File Manager” to make a copy to another location. Oh, you should turn off your WiFi before modifying the file.
Now, there are plenty of ways to modify the “wpa_supplicant.conf” file. You can use any text editor you want but personally, I’d recommend using the Terminal Emulator and vi to do the file modification it as this way, it won’t change the permissions (file permissions are important!). Once you have the file opened up in whichever editor, you’d want to navigate down to the portion of the file that contains your company network. It will look something like this if you have it configured properly earlier:
The very first thing you’d want to do is to change the key_mgmt. Try either key_mgmt=WPA-EAP or key_mgmt=IEEE8201X. For me, key_mgmt=WPA-EAP was the one that I needed. I also added the following lines to my file:
I haven’t confirmed if those lines were really necessary as I was doing this late Friday afternoon and just managed to get it working before I went home. I will probably do some testing to see if those lines were needed or not some time next week. Anyways, since having them there did no harm, I’d say that you could safely add them in. My final configuration looks like this:
Once done, save the file and turn on your WiFi. Mine connected almost immediately once I had this done. Hopefully, yours will too.
If you used other methods to modify the file, you may need to verify that the permissions are set correctly or your WiFi may not be able to turn on. The file permissions are: -rw-rw—- system wifi wpa_supplicant.conf (read: permissions=660, owner=system, group=wifi)
If you’re not used to linux commands and want to try using the file via Terminal Emulator or need to modify the permissions after modifying the files, here is a helpful basic guide.
1. You’d need to change to the root user – command: su
2. Modifying the file using vi – command: vi /data/misc/wifi/wpa_supplicant.conf
3. Working in vi: http://www.cs.colostate.edu/helpdocs/vi.html
4. Setting the right permisions – command: chmod 660 /data/misc/wifi/wpa_supplicant.conf
5. Setting the right owner – command: chown system /data/misc/wifi/wpa_supplicant.conf
6. Setting the right group – command: chgrp wifi /data/misc/wifi/wpa_supplicant.conf
If you have further questions about connecting to your Enterprise WiFi or linux usage, feel free to contact me and I’ll try my best to help you. Also, drop a comment if I’ve helped you. 🙂