CoovaChilli test VM configuration Part III, 19 September 2010
CommuniG8 Limited is a small start-up IT consultancy.
In this article, we will build on the previous articles on CoovaChilli (Part I and Part II) by adding Joomla! and a Joomla! extention Module that will allow us to "play" with some of the interactions between browsers and CoovaChilli.
As part of a project to test building a Captive Portal for a Wireless Hotspot network, we needed to setup a virtual network with two Virtual Machines where one was the CoovaChilli Server and another could be used to run a web browser through the HotSpot so that we could test a number of configuration options. One such configuration involved using Joomla! to generate some interactions with CoovaChilli that could be trapped using Wireshark to see the details of the network traffic involved. It is assumed that you know how to use Wireshark, so no explanation will be given here. In this configuration, the CoovaChilli internal web site will be used to serve up the "Home" page while Joomla! will be used to serve up the "Login" page. Some degree of familiarity with Joomla! is also assumed in terms of creating/editing articles and installing/configuring extensions.
The idea is that the CoovaChill mini portal will redirect to the Joomla! Login page which will invoke mod_coovatest.php which will format the parameters on the redirect and generate some URL links, on the page, that can be used to test a UAM login/Logout. In order to do this a CoovaChilli user must be created and its password be configured into mod_coovatest.php (see below). A Joomla! user account needs to be created to match the CoovaChilli user (see below).
Joomla! 1.5.20 Installation
(******** = your closen password)
yum install php php-mysql
unzip Joomla_1.5.20-Stable-Full_Package.zip -d /var/www/html
chown apache:apache -R /var/www/html
edit /etc/httpd/conf/httpd.conf - Set ServerName loclahost
chkconfig httpd on
service httpd start
mysql -uroot -p
CREATE DATABASE joomla;
GRANT ALL ON joomla.* TO joomla@localhost IDENTIFIED BY "*******";
browser to http://localhost
Database Type MySQL, hostname localhost, username joomla, password *******, database joomla
Complete main config details, dont install sample data
rm -rf /var/www/html/installation
mod_coovatest Installation and Configuration
You can download the Joomla! extension from here. Once downloaded the module can be installed by logging on to the Joomla! backend Admin user (password as created in the last step) going to the Extentions/Install page and installing from the mod_coovatest.zip file that you have just downloaded. Once installed, it must be added as a Module by going to the Extensions/Module Manager page, click on New, select "CoovaTest" from the Modules list and click Next. Complete the Secret (same as your HS_UAMSECRET, defaults to change-me), the Password (this needs to match a CoovaChilli user's password you should have created in the Radius MySQL database), set Show Query to Yes, the Title (used to identify the extension to Joomla, e.g. CoovaTest) and set the Possition to one that is NOT in your Joomla! template (e.g. coovatest) and click Save. Now create an Article and in the text use the following , create a menu entry that displays this Article and test that it displays ok. Note the URL, from your browser, that gets you to the Article's page, you will need this as the CoocavChilli HS_UAMFORMAT configuartion value.
Wireshark 1.0.15 Installation
yum install wireshark-gnome
The configuration used above will allow Joomla! with the mod_coovatest extension to generate simple UAM requests to CoovaChilli that can be trapped using Wireshare. The traces created provide a means to understand the details of the browser requests and redirects from CoovaChilli.
Richard Gate, CommuniG8 Limited
Rats Pen Lane