The eduroam service provides WiFi connectivity for students and researchers when they are travelling between campuses. Access used to be limited to academic institutions, but recently I've seen eduroam hotspots available at airports and train stations in Europe.
So it is somewhat useful to have on my work laptop.
Unfortunately MSU IT's instructions for configuring eduroam only offers instructions for Android, iOS, MacOS, and Windows. My two main working computers run other operation systems. So here are some set-up notes for future reference.
ChromeOS
For Chromebooks, the following the set-up link one would be directed to download the "SecureW2 JoinNow extension" for the Chrome browser. The extension will then direct you to sign-in to the MSU SSO, after which an ONC Configuration file will be downloaded by the extension.
The extension will then give you the information on how to import the configuration file into ChromeOS.
(That is, some additional amount of manual intervention is required, but the extension provides all required information for you to complete this. So overall fairly painless.)
Linux
For Linux the situation is somewhat worse. The main issue is that the company behind the SecureW2 application makes certain assumptions about your linux system which is not always met. So here are some hints:
- You will need to have a working version of
python; SecureW2 provides a shell script to run, but the actual heavy-lifting is performed by a Python script that the shell script unpacks and runs on your computer.- The script may complain about missing dependencies, just install them using
pipor your OS package manager. In my case I needed to add the Pythondbuspackage. - The script should be run not as root. It is entirely user land, which makes sense, as eduroam wants per-user authentication.
- The script may complain about missing dependencies, just install them using
- Most importantly, however, you need to be using
NetworkManagerto manage your connections. This is standard on most Ubuntu and Fedora installs, but was not my top choice when I originally configured my Linux laptop (usingiwdis much simpler for initial set-up).- The extremely annoying thing is that it is almost impossible to find this information. The Python script just exits with an opaque error that says that it failed to configure the network.
- It took a bit of effort for me to trace through the Python script to figure out why it isn't working.
- Then removing
iwdandsystemd-networkdand replacing it with NetworkManager also took some time. - After all that I finally got it to "just work".
- Oh, and it is much more convenient to run the script when you have a GUI. It loads the SSO sign-on page using your system browser, which is a bit annoying if you happened to be on Terminal.