Captive Portal - Passando autenticação para o Squid



  • Senhores,

    Existe algum helper (ou quem sabe podemos até abrir uma frente de desenvolvimento para isto) que conseguia pegar a autenticação do nosso Captive Portal e passe para o Squid / Dansguardian afim de ter MAIS rastreabilidade e regras mais refinadas?

    OBS: Antes da pergunta procurei … e não encontrei nada ... se tiver outros topics com isto basta por o link que para mim tá respondido :)

    []s
    Márcio Carlos



  • Estamos exatamente neste ponto, criar um helper para o squid usar a base de usuarios do captive portal.

    O topico existe mas com vários pontos, podemos deixar este aqui para esta função específica.

    att,
    Marcello Coutinho



  • Vou começar a fazer, abaixando os fonts e vamos ver o que consigo tirar do squid !! aeuahuehae



  • @djgel:

    Vou começar a fazer, abaixando os fonts e vamos ver o que consigo tirar do squid !! aeuahuehae

    Excelente!

    acho que o ponto é conseguir fazer o helper ler a base de usuários ativos do captive.



  • Penso que não deve ser tão dificil, afinal o Squid já consegue usar tanto o AD direto quanto o RADIUS.

    A idéia talvez é ter a mão duas possibilidades principais:
    1 - RADIUS 2.0 como Base
    2 - Active Directory como Base

    Se precisarem de ajuda com o AD, sei trabalhar bem com as expressões de pesquisa, só não sei como fazer o PFSense gerar isso.

    Eu estou no meio do TCC, estou seco pra participar do desenvolvimento do PFSense, mas o tempo não tenho…rs

    Fico a disposição se precisar de ajuda com o Active Directory.



  • Não é bem assim, o Freeradius ou LDAP/AD é a forma que ele vai checar, mas o usuario vai ter que por "usuario e senha" seja atravez do NTLM ou Basic. A Solução proposta é, uma vez que o mesmo loga no Captive Portal, é gravada em algum lugar seu IP e user, uma fez que o mesmo vá navegar pelo squid, ele relacione o IP ao usuario passando este user para o Dansguardian como é feito de Praxe.

    Não pense em ser algo fácil que não é, terá sim que ter um novo método de checagem programado no squid.



  • @djgel:

    Não pense em ser algo fácil que não é, terá sim que ter um novo método de checagem programado no squid.

    Podemos tocar aquela idéia de alterar o helper do ident, parece ser o caminho mais fácil. No lugar de buscar na máquina do usuário o deamon do ident, apontar para um ident server(em perl ou php) que recebe a requisição e le a base do captive.

    Simples de pensar, não sei se será tão simples implementar.



  • Calma, pessoal esquentado, eu não falei que seria fácil, falei que não seria tão dificil.
    As pessoas levam as coisas muito ao pé da letra e de forma pessoal, eu também colaboro como posso aqui pra comunidade, não há razão para conflitos. :D

    Não entendo do Framework do PFSense, mas a solução mais viavel talvez seja criar um terceiro pacote que fique entre eles… que pegue a lista de usuários autenticados no Captive Portal, Seus IPS e MACs e informe ao Squid a mesma relação de autenticação. Ai talvez a unica modificação no Squid seria adicionar uma modalidade a mais de autenticação, para esse pacote.

    Acho que assim você modifica e mexe com menos "coisas criadas pelo Core Team".

    Eu sei que não é fácil como falar, foi só uma idéia.



  • LFCavalcanti,

    Estamos calmos :) Só dizendo que não é bem assim … enganar o Squid :) Como o Marcellinho disse, a coisa é se basear no ident ... mas é programação "C" e definir um padrão, apos isto, ai sim gerar um segundo utilitário para a integração. Isto é, partimos da ideia de o squid abrir um arquivo e casar IP com user... segunda etapa é pegar este modelo e fazer um gerador deste arquivo, seja um script que pega a base do Captive Portal do Pfsense ou que pegue a base mysql de um ChilliPortal ...

    A maior dificuldade é pegar a documentação do Squid e captive portal e entender para depois pensar na logica aplicada ...



  • Apenas para informar que já estou programando um HELPER para autenticar numa base SQLite nos meus tempos livres … Revivendo o C :P

    Alguém tem como desenvolver um script para pegue do captive portal os usuários autenticados e alimente uma base sqlite com eles (e remove os que já foram expirados) ???

    []s
    Márcio



  • @djgel:

    Alguém tem como desenvolver um script para pegue do captive portal os usuários autenticados e alimente uma base sqlite com eles (e remove os que já foram expirados) ???

    Depois que eu terminar a nova versão do apache_modsecurity, posso ajudar.

    Se alguem puder ajudar até eu ter disponibilidade, agradeço a ajuda.



  • No caso essa base precisaria colocar no BD as senhas dos usuários também ou apenas o ID(ou nome)?



  • @LFCavalcanti:

    No caso essa base precisaria colocar no BD as senhas dos usuários também ou apenas o ID(ou nome)?

    Só o id do usuário e quando o acesso expira(ou atualizar o status sempre)



  • o ID e o IP nada mais que isto é necessario, para que possa associar o IP ao usuario durante a navegação. :)



  • Como entendo razoavelmente bem de C, vou dar uma estudada na estrutura do Captive Portal. Não garanto que vou conseguir fazer isso agora, provavelmente a partir do dia 16/07 que pego umas férias no trabalho(7 dias)  :P


Locked