Create automatically a full Wifi Hotspot on Raspberry Pi including a Captive Portal
Switch branches/tags
Clone or download
Chris v2.0.10
Latest commit 02b778d Dec 15, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github v1.8.5 Apr 5, 2018
.gitignore v1.4.4 Oct 9, 2017 v2.0.10 Dec 15, 2018 Create Aug 18, 2017 Create Aug 18, 2017 Add Script to deploy the hotspot Sep 15, 2016 v2.0.6 Nov 6, 2018
kupiki-hotspot-logo.png v1.4.2 Sep 2, 2017 v2.0.10 Dec 15, 2018 v2.0.10 Dec 15, 2018

Slack Stars Patreon

What is Kupiki Hotspot

This project is the latest version of the tutorial created first on my blog Pi Home Server Created on a Raspberry Pi 2, some functionalities and tools where not available for the Raspberry Pi 3. Also the tutorial was a little bit difficult to implement because of too many steps. That's why i decided to create a script that will help you to build your own hotspot automatically.

Once the script is executed, you will get :

  • A Wifi hotspot using the integrated wifi chipset
  • A custom captive portal based on coovachilli
    • The portal is served by the high performance web server Nginx
    • The design of the portal can be easily modified for anyone who has knowledge in HTML and Javascript
  • An authentication process based on freeRadius
    • User/password authentication
    • MAC address authentication (optionnal)
  • An interface for freeRadius management
    • daloRadius is installed by default, served by Nginx web server
    • A full management of the hotspot, with batch for user creation, vouchers, NAS, etc.

The installed system have been secured using ANSSI security recommendation and is compliant with french laws about free wifi hotspots (R. 10-13 et R. 10-14 , IV of CPCE)

Support my work

Love Kupiki Hotspot or want to support it? Check out my patreon page :)


To contribute, you can open an issue and/or fork this repository.


What are the requirements ?

  • A Raspberry Pi 3 or 3B+
  • An ethernet cable
  • A power supply for the Raspberry Pi
  • An internet access of course
  • A 4Gb micro SD card with a raspbian-like OS installed like the official Raspbian Stretch Lite. No warranty that it will work with OSes like Official Raspbian, Ubuntu Mate Xenial, etc.


You just have to download the script, edit it to update it's parameters, execute and wait ... If the wifi on the Raspberry is not already configured, don't worry, the script will do it

  • Download the script with the following command
    git clone
  • Edit the script and update the first lines to define your own configuration (take care that an ethernet link is required) Please read the wiki for more help about parameters
  • Execute the script using the following command : sudo chmod +x && sudo ./

A log file named pihotspot.log will be created in the folder /var/log. Open a new session on the Pi and run the following command tail -f /var/log/pihotspot.log


Once installed use your favorite browser to connect to daloRadius installed on your Raspberry Pi. http://<mypi_ip>/daloradius or http://<my_hotspot_name>.local/daloradius if your system supports Bonjour. The exact address will be displayed at the end of the script execution.

Do not try to connect to daloRadius throught your new hotspot network


Since version 2.0.0 (no update for previous versions), you can get and apply latest updates on your system. Go in /etc/kupiki folder and run as root :


Feel free to add it in a cron job to get automatic updates


Connexion screen


Successful connexion




Additionnal application

For those who want to try another interface (in english of french only) with less functionnalities and more bugs, you can try the portal currently in development here

Login screen




Basic configuration


Advanced configuration


Hotspot management