The installation of the authorization server and of the gateway is done in the same box. Below the step by step installation procedures on openSuSE are given. The installation is very preliminary so please verify and/or correct.

- Install openSuSE 10.3 with the full software (at least 7GB of space on hard disk are required).

- Update openSuSE 10.3.


- Install all php5 extensions.

- Install postgresql-server.

- Follow the instructions given in to start apache (start also the postgresql server instead of mysql).

- Change directory to

cd /srv/www

- Download the authorization server with the command

svn checkout

- Change directory to

cd /etc/apache2

- Sustitute '/srv/www/wifidog-auth/wifidog' instead of '/srv/www/htdocs'

everywhere in default-server.conf

- Stop and start apache server again

- Open with your browser the local web page

 http://localhost/install.php and follow the instructions.

While running with the php installation:

- to enter in postgresql execute the command

su – postgres

- after creating the database the indicated directories with username/groupname wwwrun/www must be created and their ownership must be given with the following commands. With the x84-64 openSuSE architecture the username/groupname is not indicated by the php installer (unknown user, unknown group). Use the following commands with both x86 and x86-64 architectures:

su wwwrun

mkdir ‘indicated files’;

chown -R wwwrun ‘indicated files’

chgrp -R www `indicated files’

- in the last stages before connect to the database pg_hba.conf must be changed in /var/lib/pgsql/data. So change directory to

cd /var/lib/pgsql/data

- Edit the pg_hba.conf substituting 'ident sameuser' with 'md5 samerole':

default settings:

local all all ident sameuser

host all all ident sameuser

host all all ::1/128 ident sameuser

new settings:

local all all md5 samerole

host all all md5 samerole

host all all ::1/128 md5 samerole

- stop and start postgresql server again

- WARNING: in order to connect to the database directly with the command ‘su – postrges’ after the first installation reset again the old value and restart the postgresql server again. Restore 'md5 samerole' again before starting the auth server.

After the php installation ends verify that you redirected to the login of the wifidog auth page. After the first login as admin:

- configure the authorization server.

- modify the localhost with an arbitrary local ip address like which will be also inserted in the following routing and gateway installation.


- In a local directory ex. /root download the wifidog gateway software with

svn checkout

- Change directory to

cd /root/wifidog

- Install the gateway with



make install

- Connect the second wired network card and configure it.

Follow the instruction to set up the SuSE 10 machine as a router given in

- Connect a second client computer to the server through the internal card of the server.

- Test if the connection to internet with a second computer through the server works.

- Create the /usr/local/etc directory

cp /root/wifidog/wifidog.conf /usr/local/etc/.

cp /root/wifidog/wifidog-msg.html /usr/local/etc/.

- Configure in wifidog.conf (to be linked to the auth server) the internal and external units according to your hardware and server configuration. For example:

GatewayID default

ExternalInterface? eth0

GatewayInterface? eth2

AuthServer? {


SSLAvailable no

SSLPort 443

HTTPPort 80

Path /


- is the arbitrary ip address given to the internal card while setting the server as a router. The address is also equivalent to the name given to the default virtual host of the authorization server.

- Restart the server

- Start the gateway with

wifidog -f -d 7


- Disconnect the internal ethernet cable from the client PC and connect it to a LAN input of an internal wireless router or an access point.

- Configure the external router and the internal router, which will act as an access point, as indicated in

- Connect the client PC through the internal router and verify the forwarding to the wifidog login page. - If you experience connection problems restart the network with the command:

/etc/init.d/network restart