Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Layer2auth #1343

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open

Layer2auth #1343

wants to merge 5 commits into from

Conversation

maxliu2001
Copy link

I've implemented layer 2 authentication in this pull request. The changes pertains to pscheduler-test-dot1x and pscheduler-tool-umichwpa. Packaging rules have been configured accordingly. Major changes have been made to accommodate secure handling of user credentials to execute the command. In order to execute the task, SSID, interface, and key-management options are required. They are required because this information is essential to generating the config file for wpa_supplicant.
Screen Shot 2023-06-20 at 11 37 12 AM
In addition to taking in the most necessary parameters, an additional layer is added to check whether the username and password is supplied to the program. If username and password options are not supplied, a token option can be used to search for a corresponding line with matching identifier in the format of <identifier> <username> <password>. The program would then take in username and password in the program.
Screen Shot 2023-06-20 at 11 46 29 AM
The program would initialize the wpa_supplicant interface if it doesn't already exist. After that, the program would rewrite the config file with new information regarding the login credentials. The program would then reconfigure the interface with the most up-to-date login credentials. However, the program can only auth to enterprise network (eg. eduroam) for now. In the future, key-management option may specify for an open network and config files can be generated separately.
Screen Shot 2023-06-20 at 12 13 05 PM
After reconfiguration, the program would iteratively check for the wpa_state. The authentication process is only completed once wpa_state is completed. If any state fails in between, the program would timeout and returns an error. Otherwise, the program would print the information when the state is completed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant