Poxa galera,
Foi muito mal mesmo, esqueci de postar o download. E como usei em um projeto para uma Empresa, ainda não consegui achar o que eu fiz para o endian Firewall.
Mas estou colocando o download da versão para o Smoothwall, que é muito parecido com o Endian, na parte de CGI e libs….
O que este diferente é a pagina CGI, mas vamos la:
Teremos que instalar o servidor web mini_httpd para servir as paginas de login do portal de captura. junto tem o rpm que instala ele.
Funciona assim, temos que inserir uma regra no iptables para redirecionar as saidas da porta 80/tcp para a porta 90/tcp
Segue regra usada:
/sbin/iptables -t nat -I PREROUTING -p tcp –dport 80 -j DNAT –to 192.168.0.15:90
Assim devemos colocar esta regra depois de carregar todas as regras padrão do Endian, pode ser em um rc.local ?
Segue o usado, assim iniciamos o mini_httpd e a regra:
# Habilita Captive Portal
/usr/sbin/mini_httpd -C /etc/mini_httpd.conf &
/sbin/iptables -t nat -I PREROUTING -p tcp –dport 80 -j DNAT –to 192.168.0.15:90
Este IP que aparece, é o IP da interface LAN !! Prestar atenção, pois é neste IP que o mini_httpd estara escutando.
O home padrao da conf do mini_httpd é /home/mini_httpd, e nele deve estar o index.cgi, o verifica.cgi e o usuarios.txt com as senhas
Ai, é simples o cgi verifica.cgi verifica se o usuario bate com a senha no arquivo usuarios.txt, se bater ele executa a seguinte regra.
# insere regra de liberação…
su -c "/sbin/iptables -t nat -I PREROUTING -p tcp -s $ENV{'REMOTE_ADDR'} --dport 80 -j ACCEPT"
;
Faltava apenas utilizar a integração com os autenticadores que tem no Squid para validar ldap/smb e etc.
Esta rustico, mas batnte funcional e tem problemas, como a regra não expira !!! KkkKKkk
Bem, vamos todas finalizar este modulo, conto com a ajuda e apoio de todos.
[]
Link do Captive-portal: http://multisistemasnet.com/comunidade/captiveportal-010.tgz
Claudemir Jr.