Welcome Icaro Hotspot!
Recently, here in Nethesis, we have spent some time working on a new open source project. It’s called
Icaro HotSpot
The project is still in alpha, but it can be already be used for basic tasks (and for testing of course ).
What is an hotspot?
Hotspot main goal is to provide internet connectivity via wi-fi to casual users.
Users are sent to a captive portal from which they can access the network by authenticating themselves via social login, sms or email.
Why Icaro?
We strongly believe in the Open Source collaborative model (the NethServer way!) and we have the opportunity to build together our own hotspot project on top of Nethserver. For this reasons Icaro is fully Open Source and free to download.
What is Icaro?
Icaro is complete Hotspot written in Go and Vue.js. It uses CoovaChilli as access controller which can be configured and installed inside NethServer.
Where can i find it?
You can find everything here: https://nethesis.github.io/icaro
How it works?
The implementation is based on 2 components:
-
a remote hotspot manager with a Web GUI running on a cloud server that allows you to:
- Create a hotspot instance: usually each instance is referred to a specific location (e.g. Art Cafè, Ritz Hotel and so on)
- Edit the captive portal page
- Choose what type of login to use
- See session and users logged
-
a client part (dedalo) installed in Nethserver physically connected to the Access Points network
It assigns IP addresses to the clients of the Wi-Fi Network and redirects them to the captive portal for authentication.
You can find more info on this page https://nethesis.github.io/icaro/docs/components
How to contribute right now?
Install it!
The Server Side
If you’d like to test it immediately without install the server component in your infrastructure we already have a working Hotspot Manager for test reasons, you can freely access it and create our test hotspot. Just login to :
With user and password : communityuser
- Create a hotspot instance giving it a quite original name so that it can not be confused with that of another user.
- Create a manager of type customer and during the creation link it to the hotspot instance just created
- Register your hotspot unit on Nethserver using customer authentication informations (need to install the client side first)
If you have more time to devote to testing you can install the server component in your infrastructure:
The Client Side
-
Install the client component in your NethServer
https://nethesis.github.io/icaro/docs/client_installation/
Please remind that the installation requires at least 3 ethernet interfaces:
one interface for normal LAN clients, marked with green role (you need it even if unused, can be a VLAN)
one interface (or more) for Internet connection, marked with red role
one interface for the Dedalo, marked with hotspot role -
Connect an AP to the hostpot interface
- The Wi-Fi network must be open without password
- The AP must have DHCP disabled, it must behaviour like a dumb network switch
Use it!
- Create a hotspot instance on the Hotspot Manager
- Configure the captive portal and choose login mode
- Configure and link the hotspot unit (the client) to the instance created
- Connect your device to the Wi-Fi Network (pc, smartphone, tablet)
- Open your browser and be redirected to the captive portal
- Try to do login
Provide your feedback and report bugs here!
Be aware that
- In the current version you can create a hotspot instance in the Hotspot Manager, clients can authenticate themselves using social login (Facebook, Instagram, Linkedin) as well as sms or email login.
- If you do email login the email could go in the spam.
Which cases need to be tested:
- Test interaction with the clients (redirects to captive portal and authentication)
- Test social login (Facebook, Instagram, Linkedin), sms (need a twilio account) or email.
Known problems
The server part is very basic : the Hotspot Manager currently only allows you to perform very simple tasks.We need to improve the session management, adding reports, and many other features, we will work harder on that part to get to the beta version.
What are the next steps?
We are working on the server component in order to have an Hotspot Manager easier to use and full featured (session export, better management of units , reports and so on).