Build 5 Web application
On the supplied devices, the app can be accesed as follow:
Remotley at https://openport.io/l/36701/Hml13gRqlf8l8006 or locally at http://pledge.local:8082/
Usage
Onboarding Process:
Onboard Button
Initiates the onboarding process for an IoT device, connecting it to a secure network. Start Onboarding: The application begins the onboarding process.
Disconnects from Wi-Fi: If the device is currently connected to any Wi-Fi network, it attempts to disconnect.
If the device is not active on a network, it may show an error but will proceed with the process.
Connects to brski-open Network: The device connects to an open Wi-Fi network named brski-open to discover the registrar.
Finds Registrar: The app looks for the registrar's IP address and port.
Runs BRSKI Commands: It executes the BRSKI (Bootstrapping Remote Secure Key Infrastructures) process, which includes:
Sending a voucher request to the registrar. Signing certificates with the registrar's information. Receives Certificates: The app retrieves signed certificates necessary for secure communication.
Disconnects from brski-open: After obtaining the certificates, the device disconnects from the brski-open network.
Connects to registrar-tls-ca Network: It connects to a secure network named registrar-tls-ca, which uses the obtained certificates for secure EAP-TLS authentication.
Completes Onboarding: The onboarding process is completed, and the device is now securely connected to the registrar-tls-ca network.
Offboarding Process:
Offboard Button
When you want to remove the IoT device from the secure network and delete its network profile, you use this button. Here's the offboarding sequence:
Begins Offboarding: The application starts the offboarding process for the IoT device.
Disconnects from Network: The device is disconnected from the current network (registrar-tls-ca).
Removes Connection Profile: The network connection profile for registrar-tls-ca is deleted from the device, ensuring it no longer automatically connects to this network.
Completes Offboarding: The device is now offboarded, and the secure connection profile is successfully removed.
The same functionality is directly accessible through scripts
For onboarding/offboarding we can run the following commands:
Onboard
sudo ./opt/demo-server/bash-scripts/onboard.sh
Offboard
sudo ./opt/demo-server/bash-scripts/offboard.sh
Build
Download the most recent arm64 debian package release
wget https://github.com/nqminds/nist-brski/releases/download/v0.0.1/brski-demo-app-deb_arm64.deb
Then please follow the installation instructions found in the nist-brski repository.
During installation, a PORT number must be specified for the service.
To publish the demo app locally, please follow the methods below.
- Install avahi-deamon
sudo apt install avahi-daemon
- Create a new service for the app and add it to
/etc/avahi/services/demo-server.service
- Restart the deamon
sudo service avahi-daemon restart
- Advertise the new service
avahi-publish -s demo-server _demo-server._tcp YOUR_CHOSEN_PORT_NUMBER
- Publish using openport
sudo YOUR_CHOSEN_PORT_NUMBER --http-forward --restart-on-reboot --daemonize