+ Responder ao Tópico



  1. #1

    Question Acls do Squid no Mysql

    Olá Pessoal.

    Preciso que as ACLs do Squid acesse o Mysql, depois de ler muita coisa na internet, resolvi postar aqui, até onde eu sei quando se usa um ACL externa ela deve retornar valores = OK ou ERR, entaun fiz o seguinte:
    -----ACL
    external_acl_type acl_palavras_baixo %DST /home/www/xxxx/palavras.sh
    acl palavras_baixo external acl_palavras_baixo
    -----Aplicando ACL
    http_access deny palavras_baixo

    -----Arquivo palavras.sh, permisões
    -rwxrwxrwx 1 squid squid 205 2007-11-08 00:26 palavras.sh

    ----Arquivo palavras.sh
    #!/bin/bash
    while read palavra
    do
    if [ `/usr/local/mysql/bin/mysql -u admin -pxxxxx -e "select nome from GRUPOS where politica='BAIXO' " BDPROXY|grep -i "$palavra" ` ]
    then
    echo OK
    else
    echo ERR
    fi
    done

    Bom, se eu rodar este script, ele funciona blz, retornando OK se a "palavra estiver no BD, senao ERR, mas no squid nao funciona, quando dou um Squid Restart ele nao apresenta nenhum erro, apenas nao bloqueia a palavra que esta no BD, outra pergunta que talvez seja a resposta é onde deve ficar o "url_regex -i" ??? queria trocar um ideia com o pessoal pra achar um solução.

    .

  2. #2
    Moderador Avatar de Bruno
    Ingresso
    Nov 2002
    Localização
    Guarapuava-PR
    Posts
    4.181
    Posts de Blog
    1

    Padrão

    facil vc pode dividir o conf do squid em 3 partes
    uma antes das acl uma as acl e outras o final dele
    faz uma consulta no mysql atraves de bash ou phpbash
    depois monta o arquivo do squid completo

  3. #3

    Padrão

    Citação Postado originalmente por Benatto Ver Post
    facil vc pode dividir o conf do squid em 3 partes
    uma antes das acl uma as acl e outras o final dele
    faz uma consulta no mysql atraves de bash ou phpbash
    depois monta o arquivo do squid completo
    Você se refere em dividir o Squid.conf em 3 partes? a consulta atraves do bash, serviria esta que eu poste acima?

  4. #4
    Moderador Avatar de Bruno
    Ingresso
    Nov 2002
    Localização
    Guarapuava-PR
    Posts
    4.181
    Posts de Blog
    1

    Padrão

    sim
    vc pode fazer as consulta via php-bash é mais facil

  5. #5

    Padrão

    Seguindo dica do Benatto, fiz uma consulta no BD com o PHP que grava as "palavras" bloqueadas em um arquivo texto no Bash, que o squid vai ler, mas tem um probleminha, o nome do Campo da tabela esta aparecendo no arquivo texto, como posso tirar???

    exemplo arquivo texto:

    palavras // nome do campo vem junto
    http://www.xxx.com
    http://www.xxx.com.de
    http://www.xxx.com.br

  6. #6

    Padrão

    Blz pessoal !!!
    mandei um sed -i -e '1d' no arquivo e ele limpo a a primeira linha que aparecia o campo da tabela..

    Valeu....