Table of Contents

Connecting CoovaAP 1.x with RADIUSdesk - Basic

Introduction

CoovaAP is a sub-project of Coova.org. It is custom firmware which can be installed on an Access Point to make the Access Point a Captive Portal based device. There are two generations of CoovaAP. The older generation is mainly used on Linksys Wrt-54x hardware and this is the firmware which will be covered here. There is also a version 2.x of the CoovaAP firmware available for people who would like to try new things.

Before you start

Before we start; make sure you have the following in place.

Item Comment
An installation of RADIUSdesk This can sit on your own private network or on the Internet somewhere
Linksys WRT54x We assume you have flashed this device with the latest version of CoovaAP (http://www.coova.org/CoovaAP)

Our basic goal

coovaap_basic.jpg


Our advanced goal

coovaap_advanced.jpg

What would life be without challenges! With the advanced goal we assume a very common set-up where the CoovaAP sits behind a NAT firewall and our RADIUSdesk server is somewhere in the cloud. We will explore the following options:

We also need to be able to disconnect any of the connected users through the RADIUSdesk interface. We will explore the following options:

The Advanced goal has its own dedicated document here


Flashing the WRT54 Access Point

When I started to create this document the first problem I encountered was one of my CoovaAP flashed devices which had a long forgotten password. Here is the basic instructions to get this Access Point CoovaAP-erized in no time.

cd /tmp
wget http://<web_server_with_trx_file>/openwrt-brcm-2.4-squashfs.trx
#Or use SSH
scp root@192.168.1.100:/tmp/openwrt-brcm-2.4-squashfs.trx ./
#Now flash it onto the memory
mtd -r write openwrt-brcm-2.4-squashfs.trx linux 
 mtd -r erase nvram

Completing our basic goal

We will use the following values for our configuration. Adapt these to fit your environment.

Item Value Comment
Gateway for CoovaAP WAN Port 192.168.1.1 We deliberately use this address to show you how to work around a clash
DNS for CoovaAP WAN Port 192.168.1.1
IP of CoovaAP WAN Port 192.168.1.10
Mask for CoovaAP WAN Port 255.255.255.0
IP of RADIUSdesk server 192.168.1.11
CoovaAP LAN range of IPs 192.168.100.1-254 We change the default no avoid a clash with the DSL router
CoovaAP LAN Gateway 192.168.100.1
CoovaAP LAN DHCP range 192.168.100.50-254
CoovaAP WLAN Captive Portal range of IPs 10.0.100.1-254 We change the default to avoid a clash with other networks
CoovaAP WLAN Captive Portal Gateway 10.0.100.1
CoovaAP WLAN Captive Portal DHCP range 10.0.100.2-254
CoovaAP WLAN SSID RADIUSdesk

Connection instructions

Clashing of subnets

Assign a fixed IP to WAN port


You do not supply the value of the DNS server now as stipulated by the instructions; but only after these changes has been committed.

Open SSH and Web on WAN port

Set WiFi SSID to RADIUSdesk

Assign a fixed IP Address to RADIUSdesk

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
# The loopback network interface
auto lo
iface lo inet loopback
 
# The primary network interface
auto eth0
iface eth0 inet static
    address 192.168.1.11
    netmask 255.255.255.0
    gateway 192.168.1.1
    dns-nameservers 192.168.1.1

Add CoovaAP as NAS device to RADIUSdesk

Now that the RADIUSdesk server has a fixed IP Address; we can add the CoovaAP as a client (NAS device) to RADIUSdesk.

Item Value Comment
IP Address 192.168.1.10 The IP Address of the WAN port of the CoovaAP
Name CoovaAP-01 A unique identifier for the NAS Device
Secret testing123 A value that is secure and obscure

Activate monitoring

Restart FreeRADIUS

This action is very important

The FreeRADIUS server should now be ready to accept request from the client 192.168.1.10.

Configure the Captive Portal (Hotspot)

Under the Hotspot tab is various sub-tabs. Most of these sub-tabs will only be activated once the hotspot is enabled under the first sub-tab (Configuration).

The term Hotspot and Captive Portal will be used interchangeably although Captive Portal is probably more correct from a technical perspective.

Activate the hotspot

Item Value Comment
Hotspot Configurations
Hotspot Type CoovaChilli UAM :!: Default is Disabled. Change to CoovaChilli UAM
HotSpot Mode Wireless Only Keep default
HotSpot LAN Access Deny Keep default
Basic Configurations
Auto Configuration Disabled Keep default
UAM Hostname 10.1.0.1 Keep default. We will not use this service
UAM Secret greatsecret :!: Should be the same as the value specified in rd_login_pages/services/uam.php in the webserver's document root on RADIUSdesk
NAS Identifier RADIUSdesk-01 :!: Use a value to uniquely identify the NAS
Item Value Comment
AAA Configurations
AAA Mode RADIUS :!: Default is HTTP(s). Change to RADIUS
Primary RADIUS Server 192.168.1.11 :!: The IP Address of the RADIUSdesk server
Secondary RADIUS Server 192.168.1.11 :!: The IP Address of the RADIUSdesk server
RADIUS Auth Port 1812 Keep default
RADIUS Acct Port 1813 Keep default
Shared Secret testing123 :!: Make it something secure and obscure
Administrative-User
RADIUS Admin Username (blank) Keep default
RADIUS Admin Password (blank) Keep default
Optional Configurations
MAC Address Authentication Disabled Enable this if you want to make use of the RADIUSdesk BYOD applet to manage davices based on their MAC addresses
Allow Accounting Updates Enabled :!: Default is Disabled. Enable this option
RADIUS Send DHCP Info Disabled Keep default
RADIUS Send Oringial URL Disabled Keep default
Admin Reauth Interval 0 :!: Default is 3600. We will disable it by setting it to zero
Default Session Timeout 0 Keep default
Default Idle Timeout 0 Keep default
Default Interim Interval 300 Keep default
Allow WPA Guests Disabled Keep default
Allow OpenID Authentication Disabled Keep default
Item Value Comment
Advanced ChilliSpot Configurations
Internal UAM Port 3660 Keep default
HotSpot Services Provider Coova Keep default
HotSpot Services Provider URL http://www.coova.org/ Keep default
UAM URL Format http://192.168.1.11/cake2/rd_cake/dynamic_details/chilli_browser_detect/ :!: IP Address of the RADIUSdesk server
UAM Homepage (splash page) (blank) :!: Delete the default value and keep empty
UAM Service (for Javascript) (blank) Keep default
WISPr Login URL (optional) (blank) Keep default
Local Content Directory /etc/chilli/www Keep default

Confirm the hotspot is running

Configure the Dynamic Login Page

This section assumes the following has been completed already:

Failing to complete this step will cause the login page to be broken.

This completes the basic configuration to connect the CoovaAP with RADIUSdesk in order to:

See how it works

With the Debug output applet of RADIUSdesk it is now easy to run a debug trace on the FreeRADIUS daemon to see if everything works as intended.

  • You can clear the screen at any time using the Clear screen button.
  • You can stop the debug trace at any time using the Stop debug button.
  • You can also extent the debug trace timeout by clicking on the Add debug time button in the toolbar.