ZeroShell’s Radius Setup for the Nexus One’s Wi-Fi in 15 Steps
There is nothing as of now on the Google Nexus forum or Zeroshell forum of how to get these to play well with each other, so I solved this and thought somebody might want to know. I made this on Ubuntu, but it should apply to other Unix/Linuix/Cygwin, and I already have Zeroshell’s radius server integrated correctly with my ddwrt WRT54GL routers Wi-Fi. I bet this will apply to similarly setup openradius servers and/or other Android phones too starting from step # 3.
1. Login to Zeroshell Web Gui as %user
2. Export your X.509 user certificate CA as a pkcs#12, key and check Protected by password
3. download the “%user.pfx” to /home/%user/Downloads
4. get root in Terminal = sudo bash
5. cd /home/%user/Downloads (or wherever you downloaded %user.pfx from step 3)
6. Run the following commands and look for password errors. If password errors occur, go back to step # 1, change %user’s password and start again.
7. openssl pkcs12 -in user.pfx -out /tmp/my_cert.pem
8. openssl pkcs12 -export -in /tmp/my_cert.pem -out /tmp/my_new_cert.p12
9. mv /tmp/my_new_cert.p12 /home/%user/Desktop/WiFi.CA.p12 ; rm /tmp/my* ; rm /home/%user/Downloads/%user.pfx
10. cp /home/%user/Desktop/WiFi.CA.p12 to the root of your SD card on Nexus One
11. Goto Menu / Settings / Location & security / Install from SD card
12. click on WiFi.CA.P12 and enter you password(s).. this should install your WiFi.CA.p12
13. Goto Menu / Settings / Wireless & networks / Wi-Fi settings / Add Wi-Fi network
14. Enter SSID, Security @ 802.1x Enterprise, EAP method = PEAP, Phase 2 auth = MSCHAPV2, CA/Client = WiFi.CA.p12, Identity = %user, Anonymous identity = leave blank, Wireless password = “%users password”
15. Click on save. Done
Please feel free to move this thread if it is not in the right section.