davesteele / comitup

Bootstrap Wifi support over Wifi
https://davesteele.github.io/comitup/
GNU General Public License v2.0
320 stars 54 forks source link

[WIP] Add WPA2-Enterprise Support #78

Closed CallumJHays closed 3 years ago

CallumJHays commented 4 years ago

Needs a lot of work, but it works at my university! Only operates in the web interface so far, by writing the .nmconnection file directly and restarting NetworkManager (can the restart be avoided?)

Sorry about the linting changes.

Probably need to set out the IAS puppeteering-login stuff as a separate /opt package as it requires nodejs, and probably won't be required for a lot of networks. Got a lot of time to continue working on this before the students use it next semester.

CallumJHays commented 4 years ago

Aims to fix #65. @davesteele review would be sweet <3

davesteele commented 4 years ago

Based on a cursory look, I'd say this is promising.

Bookkeeping first. It's OK to change the history of pull requests. I'd like to see .Trash gone from the history. Collapsing the commits would do fine.

The lint changes are fairly benign. Otherwise, I would ask they be at least moved to a dedicated commit.

The added log entries should generally be at the "debug" level.

I'd make a new /etc/comitup/, and move comitup.conf and ias-puppeteer-scripts/ there (should the script requirement remain).

Beyond that, my first concern would be about these changes affecting the existing security modes. I'd have to test the updated web service.

Is node.js/puppeteer actually necessary? You should be able to modify nm.py make_connection_for() to make a NetworkManager connection to handle all that for you. See 802-11-wireless-security settings, or just manually make a connection to the Enterprise hotspot, and inspect the file in /etc/NetworkManager/system-connections.