You are on page 1of 14

Hotspot

utilizando softwares
livres.


1














Mauricio Botelho Penteado Ribeiro da Cruz RA:63893
Luiz Rodrigo Cardoso da Cunha RA:62410
Marcelo Henrique Petruz RA:64935
Daniel Bodowsky RA:63565
Willian Sanfelice RA:64935
Murilo Giusti RA:63653


2


COOVACHILLI -Hotspot

Requisitos:
UBUNTU 11.04 i386
Freeradius
Mysql
Apache2
DaloRadius
PHP
Coovachilli
SSH

Configurao das Interfaces
auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static
address 192.168.13.130
netmask 255.255.255.0


auto eth2
iface eth2 inet static
address 192.168.56.2
netmask 255.255.255.0

Ativando o Root
#sudo passwd root
Instalaes de pacotes necessrios
#apt-get update


3


#apt-get install apache2 apache2-doc apache2-utils ssl-cert libapache2-mod-php5 php5 php5-
common php5-mysql mysql-server mysql-client libmysqlclient15-dev freeradius freeradius-
mysql freeradius-utils freeradius-mysql php-pear php-db phpmyadmin mc php5-gd php-db


Durante a instalao dos pacotes digite as senhas desejadas.
Altere o arquivo /etc/apache2/mods-avaliable/dir.conf
Para :
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3
index.pl index.xhtml
Feche o arquivo e salve.

Ative os mdulos do apache2.
#a2enmod ssl && a2enmod rewrite && a2enmod suexec && a2enmod include && a2enmod
php5

Crie um link simblico para testarmos.
# ln -s /etc/apache2/sites-available/default-ssl /etc/apache2/sites-enabled/000-default-ssl

Gerar certificado.
Criar o diretrio.
#mkdir /etc/apache2/ssl
Criar o certificado.
#make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
Altere o arquivo /etc/apache2/sites-available/default-ssl
De: SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
Para: SSLCertificateFile /etc/apache2/ssl/apache.pem

4


Remova a Linha : SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
Restarte o APACHE
#/etc/init.d/apache2 restart

Testar o apache.

Digite no navegador de uma maquina que esta na mesma rede.
http://192.168.13.130
https://192.168.13.130
Se tudo der certo ir aparecer It Works
Mysql e Freeradius
Edite o arquivo /etc/freeradius/users
Descomente as linhas:
#"John Doe" Cleartext-Password := "hello"
#Reply-Message = "Hello, %{User-Name}"
Salve o arquivo e reinicie o freeradius.
# /etc/init.d/freeradius restart
Teste o freeradius.
# radtest "John Doe" hello localhost 1812 testing123
Se aparecer esta mensagem prossiga.
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=94, length=20

Criar o Banco de Dados
Entre no Mysql
#mysql p
Entre com a senha Mysql (segredo)

5


mysql> create database radius;
mysql> GRANT ALL PRIVILEGES ON radius.* TO 'radius'@'localhost' IDENTIFIED BY 'segredo';
mysql> FLUSH PRIVILEGES;
mysql> quit
Agora edite o arquivo /etc/free radius/sql.conf

server = "localhost"

login = "radius"
password = "segredo"
Descomentamos a linha:
readclients = yes

Salve o arquivo.
Altere o arquivo /etc/freeradius/clientes.conf
Troque o que estiver em frente de secret
secret=segredo
Edite o arquivo /etc/freeradius/sites-enabled/default , descomentando as linhas que tiver sql.
authorize {
#files
sql
}

accounting {
sql
}

6


session {
sql
}
Salve.
No arquivo /etc/freeradius/radiusd.conf descomente a linha.

$INCLUDE sql.conf
Importe as tabelas do freeradius j criadas pelo programador.

# mysql -u root -p radius < /etc/freeradius/sql/mysql/schema.sql
Enter password: "segredo"
# mysql -u root -p radius < /etc/freeradius/sql/mysql/nas.sql
Enter password: "segredo"

Cadastrar usurio:
mysql> use radius;
mysql> INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('diego', 'Password',
'teste');
mysql> quit
Reinicie o Mysql e Freeradius.
# /etc/init.d/mysql restart && /etc/init.d/freeradius restart
Teste o usurio.
# radtest teste teste localhost 1812 "segredo"
Se aparecer:
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=94, length=20
Esta tudo ok.

7


Instalando o Coovachilli
Crie o diretrio para fazer o download do Coovachilli
#mkdir /etc/downchilli
Baixe o pacote
# wget http://ap.coova.org/chilli/coova-chilli_1.0.13-1_i386.deb
Instale

#dpkg -i coova-chilli_1.0.13-1_i386.deb
Agora copie os arquivos a seus respectivos lugares.

# cd /etc/chilli/
# cp defaults config
# mkdir /var/www/auth
# cp www/* /var/www/auth/
# mkdir /var/www/auth/images
# cp www/coova.jpg /var/www/auth/images/
# mkdir /var/www/auth/uam
# cd /var/www/auth/uam
# wget http://ap.coova.org/uam/
# wget http://ap.coova.org/js/chilli.js
Entre e edite o arquivo /var/www/auth/uam/index.html.
Para: <script id='chillijs' src='http://192.168.10.1/js/chilli.js'></script>
OBS: Coloque o ip diferente da eth1
Edite "/etc/chilli/www/ChilliLibrary.js" e alteramos a linha:
Para: var chilliController = { interval:30 , host:"192.168.10.1" , port:3990 , ident:'00' ,
ssl:false , uamService: '' };

8


Executa
# cat /etc/chilli/www/ChilliLibrary.js > /var/www/auth/ChilliLibrary.js
Edite /etc/default/chilli
Altere START_CHILLI=0 para START_CHILLI=1
Altere o arquivo /etc/chilli/config Para:
HS_LANIF=eth1
HS_NETWORK=192.168.10.0

HS_NETMASK=255.255.255.0
HS_UAMLISTEN=192.168.10.1

HS_UAMPORT=3990

HS_STATIP=192.168.10.0/24
HS_STATIP_MASK=255.255.255.0
#HS_DNS_DOMAIN=
HS_DNS1=8.8.8.8
HS_DNS2=177.53.80.4

HS_NASID=nas01
HS_UAMSECRET=segredo
HS_RADIUS=127.0.0.1
HS_RADIUS2=127.0.0.1
HS_RADSECRET=segredo
HS_UAMALLOW=192.168.10.0/24


9


HS_UAMSERVER=192.168.10.1
HS_UAMFORMAT=https://\$HS_UAMSERVER/cgi-bin/hotspotlogin.cgi
HS_UAMHOMEPAGE=http://\$HS_UAMLISTEN:\$HS_UAMPORT/www/coova.html
HS_UAMSERVICE=https://192.168.10.1/cgi-bin/hotspotlogin.cgi
Salve.
Execute
# zcat -c /usr/share/doc/coova-chilli/hotspotlogin.cgi.gz > /usr/lib/cgi-bin/hotspotlogin.cgi
Edite a pagina de Login /usr/lib/cgi-bin/hotspotlogin.cgi
Altere para

$uamsecret = "segredo";
$uamsecret = "segredo";


Criando o VirtualHost
# vim /etc/apache2/sites-available/hotspot
Aps criar o arquivo, Inclua as linhas:
NameVirtualHost 192.168.10.1:443
<VirtualHost 192.168.10.1:443>
ServerAdmin alunos@alunos.uniararas.br
DocumentRoot "/var/www/auth/"
ServerName "192.168.10.1"
<Directory "/var/www/auth/">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny

10


allow from all
</Directory>

Alias "/dialupadmin/" "/usr/share/freeradius-dialupadmin/htdocs/"

<Directory "/usr/share/freeradius-dialupadmin/htdocs/">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>


ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin/">

AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog /var/log/apache2/hotspot-error.log

LogLevel warn


11


CustomLog /var/log/apache2/hotspot-access.log combined

ServerSignature On
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem
</VirtualHost>

Agora ative o VirtualHost:
# a2ensite hotspot
Reinicie o Apache
# /etc/init.d/apache2 restart
Mude as permisses
# chown -R www-data.www-data /var/www/auth/
# chown -R www-data.www-data /var/www/auth/*

# chown -R www-data.www-data /usr/lib/cgi-bin/hotspotlogin.cgi
# chmod 777 /usr/lib/cgi-bin/hotspotlogin.cgi

Com os passos acima concludos vamos adicionar duas regras ao firewall do Coovachilli,
editando o arquivo /etc/chilli/up.sh.
Adicione estas linhas antes do ultimo parnteses:
[ -e "/var/run/chilli.iptables" ] && sh /var/run/chilli.iptables 2>/dev/null
iptables -I POSTROUTING -t nat -o $HS_WANIF -j MASQUERADE
Salve.

DaloRadius

12


O DaloRadius uma interface WEB interage com o Mysql e Freeradius.
Crie o diretrio para fazer o Download.
#mkdir /etc/downldalo
Agora faremos o download
#wget'http://downloads.sourceforge.net/project/daloradius/daloradius/daloradius0.98/dalora
dius-0.9-8.tar.gz'
Agora descompacte os arquivos.
#tar -xzvf daloradius-0.9-8.tar.gz
Copie o arquivo para o diretrio /var/www
#cp daloradius-0.9-8 /var/www/ -R

Altere as permisses dos diretrios.
#chown www-data:www-data /var/www/daloradius-0.9-8 -R
#chmod 644 /var/www/daloradius-0.9-8/library/daloradius.conf.php

Execute

mysql -u root -p radius < /var/www/daloradius-0.9-8/contrib/db/mysql-daloradius.sql
digite a senha do Mysql.
Edite o arquivo /var/www/daloradius-0.9-8/library/daloradius.conf.php para:

'FREERADIUS_VERSION' = '2';
'CONFIG_DB_ENGINE' = 'mysql';
'CONFIG_DB_HOST' = '127.0.0.1'
'CONFIG_DB_USER' = 'radius'
'CONFIG_DB_PASS' = 'radpassword'
'CONFIG_DB_NAME' = 'radius'
Entre no Mysql
#mysql -u root -p

13

Execute o comando.
>GRANT ALL PRIVILEGES ON radius.* TO 'radius'@'%' IDENTIFIED BY
'radpassword';
>FLUSH PRIVILEGES;

Com o DaloRadius instalado e configurado, a adio de usuria mais rpida e eficiente.

Para acessa-lo :
http://192.168.56.2/daloradius
Usuario:Administrator
Senha:radius

You might also like