Squid autenticando no Windows utilizando grupos do AD
Autenticando Squid no AD utilizando grupos do AD como base para o acesso, de forma que podemos habilitar a utilização do proxy ou não para os usuários, liberando ou não a utilização do MSN para os usuários também e permitindo que os administradores ou a diretoria navegue sem restrições.
[ Hits: 77.243 ]
Por: Robinson Czelusniak em 05/04/2010
Configuração no Windows
Vamos precisar saber algumas informações e vamos precisar criar um usuário no Windows.
Precisamos saber qual é domínio do AD (Active Directory).
Clique no iniciar, depois em executar, digite
dsa.msc e pressione ENTER.
Com este comando ele vai abrir o gerenciamento de usuários e grupos do AD, verifique qual é o nome do domínio. Exemplo: dominio.local.
Criar usuário:
Vamos criar um usuário para autenticar o Squid onde você cria seus usuários.
Crie um usuário com o nome "squid" e defina um senha para ele.
Vamos criar também 3 grupos.
PROXY_ADM
PROXY_MSN
PROXY_USERS
Porque os grupos?
O usuário do AD que estiver dentro do grupo PROXY_ADM terá acesso total as páginas;
O usuário do AD que estiver dentro do grupo PROXY_USERS terá acesso as páginas, mas com o bloqueios determinados;
O usuário do AD que estiver dentro do grupo PROXY_MSN terá acesso ao MSN.
IMPORTANTE: Se o usuário não estiver no grupo PROXY_USERS ou PROXY_ADM ele não navegará.
Instalando e configurando o Squid
A distribuição utilizada para este artigo foi o SUSE
Linux 10.2.
Instalação do Squid:
# yast -i squid
Depois de instalado o Squid cria o diretório /etc/squid com os arquivos de configuração e são eles que vamos usar, digite:
# cd /etc/squid
Faça uma cópia do squid.conf:
# cp squid.conf squid.conf.old
Agora vamos editar o arquivo squid.conf:
# vi squid.conf
Procure a linha:
#http_port 3128
E descomente-a, deixando assim:
# porta pela qual o Squid libera o acesso
http_port 3128
Salve e saia:
<ESC> :wq <ENTER>
Pesquise pelo binário squid_ldap_auth:
# find / -iname squid_ldap_auth
Você deve obter o caminho completo do binário:
/usr/sbin/squid_ldap_auth
Agora vamos editar o arquivo squid.conf novamente:
# vi squid.conf
Localize a linha:
#auth_param basic program /usr/libexec/ncsa_auth /usr/etc/passwd
E adicione abaixo dela a seguinte linha:
auth_param basic program /usr/sbin/squid_ldap_auth -R -b dc=dominio,dc=local -f sAMAccountName=%s -h 192.168.0.254 -D cn=squid,cn=users,dc=dominio,dc=local -w password
Explicação:
dc=dominio,dc=local = domínio do AD ( meu exemplo no início, dominio.local)
192.168.0.254 = Endereço IP do servidor AD
cn=squid,cn=users,dc=dominio,dc=local = Caminho completo de onde está o usuário
password = A senha que foi definida no AD
Descomente as seguinte linhas também:
auth_param basic children 5
auth_param basic realm Digite sua senha
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
<ESC> :wq <ENTER>
Pesquise pelo binário squid_ldap_group:
# find / -iname squid_ldap_group
Você deve obter o caminho completo do binário:
/usr/sbin/squid_ldap_group
Agora vamos editar o arquivo squid.conf novamente:
# vi squid.conf
Localize no arquivo que trata sobre external_acl_type logo abaixo do que alteramos a pouco e adicione a seguinte linha:
external_acl_type ldap_group %LOGIN /usr/sbin/squid_ldap_group -R -b "dc=dominio,dc=local" -D cn=squid,cn=users,dc=dominio,dc=local -w password -f "(&(objectclass=person)(sAMAccountName=%v)(memberof=cn=%a,ou=groups,dc=dominio,dc=local))" -h 192.168.0.254
Explicação:
dc=dominio,dc=local = domínio do AD ( meu exemplo no início, dominio.local);
192.168.0.254 = Endereço IP do servidor AD;
cn=squid,cn=users,dc=dominio,dc=local = Caminho completo de onde está o usuário;
password = A senha que foi definida no AD;
memberof=cn=%a,ou=groups,dc=dominio,dc=local = Local onde foi criado os 3 grupos no AD;
<ESC> :wq <ENTER>
Próxima página
Páginas do artigo
1. Configuração no Windows
2.
Configurações das regras do Squid
3.
Criando arquivos e iniciando o Squid
Outros artigos deste autor
Configurando o OpenVPN no SuSE Linux Enterprise Server (SLES)
CBQ (Controlador de banda) no Conectiva 10
Instalando Postfix e Dovecot no SLES 11 e autenticando em um diretório da Novell (Edir)
Openfire no SLES 10 autenticando no Active Directory
Squid com autenticação
Leitura recomendada
PhpDansAdmin, protótipo de ferramenta web para administração do DansGuardian
Implementação de um servidor Linux Squid + Iptables + DHCP
Compilação do Squid 3 no Debian Wheezy
Squid 2.6 + HTB-tools com cache full
Limitando download com Squid
Comentários
Uma duvida, p/ o usuario navegar ele vai precisar digitar o usuario e senha? ou vai de maneira integrada com o logon de windows? vlw
Bom dia Vinicius,
Ele vai pedir usuário e senha, estou terminando um artigo onde explico como fazer para que ele funcionar de maneira integrada.
Obrigado.
Mensagem
Bom dia Vinicius,
Ele vai pedir usuário e senha, estou terminando um artigo onde explico como fazer para que ele funcionar de maneira integrada.
Obrigado.
Para Mim simplesmente não funcionou a autenticação por grupos, se eu liberar o site na ACL sem autenticação ou nas demais ele funciona mas pelo visto meu squid não consegue buscar informações sobre os grupos. Quando você coloca memberof=cn=%a,ou=groups,dc=dominio,dc=local = Local onde foi criado os 3 grupos no AD;
na verdade eu só preciso alterar depois de ou= né como no exemplo abaixo tudo antes fica igual ao que você escreve certo?
memberof=cn=%a,ou=squid,dc=empresa,dc=net
Ou eu estou entendendo errado?
Mensagem
Para Mim simplesmente não funcionou a autenticação por grupos, se eu liberar o site na ACL sem autenticação ou nas demais ele funciona mas pelo visto meu squid não consegue buscar informações sobre os grupos. Quando você coloca memberof=cn=%a,ou=groups,dc=dominio,dc=local = Local onde foi criado os 3 grupos no AD;
na verdade eu só preciso alterar depois de ou= né como no exemplo abaixo tudo antes fica igual ao que você escreve certo?
memberof=cn=%a,ou=squid,dc=empresa,dc=net
Ou eu estou entendendo errado?
Seria isto mesmo, mas, você precisa verificar se o ou=squid é mesmo uma ou ou é um CN= , se for um cn você tem que alterar para
memberof=cn=%a,cn=squid,dc=empresa,dc=net
Qualquer coisa posta o squid.conf aí que para te ajudar, outra coisa, qual a distro que esta usando?
Um abraço.
Mensagem
Seria isto mesmo, mas, você precisa verificar se o ou=squid é mesmo uma ou ou é um CN= , se for um cn você tem que alterar para
memberof=cn=%a,cn=squid,dc=empresa,dc=net
Qualquer coisa posta o squid.conf aí que para te ajudar, outra coisa, qual a distro que esta usando?
Um abraço.
Veja Bem, é uma OU Unidade Organizacional chamada squid, dentro dela tem um usuário chamado squid também dei a ele a senha squid para facilitar os testes. Eu estou usando DC Windows 2008 R2 e Ubuntu 9.04 para o squid que é a versão 2.7 stable 6, eu já havia feito a mudança do nome do binário e localização dele de squid_ldap_auth que no Ubuntu chama diferente e está em outro local. Eu testei com a autenticação por usuário e ela funciona só não funciona na autenticação em grupo.
Mensagem
Veja Bem, é uma OU Unidade Organizacional chamada squid, dentro dela tem um usuário chamado squid também dei a ele a senha squid para facilitar os testes. Eu estou usando DC Windows 2008 R2 e Ubuntu 9.04 para o squid que é a versão 2.7 stable 6, eu já havia feito a mudança do nome do binário e localização dele de squid_ldap_auth que no Ubuntu chama diferente e está em outro local. Eu testei com a autenticação por usuário e ela funciona só não funciona na autenticação em grupo.
Ok, e dentro desta OU estão os grupos correto? O nome dos grupos estão idênticos (Letras maiúsculas e minúsculas)? cola a linha da ldap_group e as acls aí. para ver o que esta acontecendo.
Mensagem
Ok, e dentro desta OU estão os grupos correto? O nome dos grupos estão idênticos (Letras maiúsculas e minúsculas)? cola a linha da ldap_group e as acls aí. para ver o que esta acontecendo.
Vou colocar todo o meu squid.conf para você ver.
Apenas respondendo a sua pergunta sim os grupos estão dentro da ou squid e estão todos em maiusculo igual ao script abaixo.
auth_param basic program /usr/lib/squid/ldap_auth -R -b dc=galaxia,dc=net -f sAMAccountName=%s -h 192.168.1.19 -D cn=squid,cn=squid,dc=galaxia,dc=net -w squid
auth_param basic children 5
auth_param basic realm Forneça seu nome de usuário e senha para navegar.
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
external_acl_type ldap_group %LOGIN /usr/lib/squid/squid_ldap_group -R -b "dc=galaxia,dc=net" -D "cn=squid,cn=squid,dc=galaxia,dc=net" -w squid -f "(&(objectclass=person)(sAMAccountName=%v)(memberof=cn=%a,ou=squid,dc=galaxia,dc=net))" -h 192.168.1.19
#Examples:
#acl macaddress arp 09:00:2b:23:45:67
#acl myexample dst_as 1241
acl password proxy_auth REQUIRED
acl proxyadmins external ldap_group INTERNET_LIBERADA
acl proxyusers external ldap_group INTERNET_RESTRITA
acl sites_sem_autenticacao dstdom_regex -i "/etc/squid/rules/sites_sem_autenticacao"
#Recommended minimum configuration:
acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8
# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow sites_sem_autenticacao
http_access allow proxyadmins
http_access allow proxyusers
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager
# Only allow purge requests from localhost
http_access allow purge localhost
http_access deny purge
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports
#http_access allow localnet
http_access allow localhost
# And finally deny all other access to this proxy
http_access deny all
#Allow ICP queries from local networks only
icp_access allow localnet
icp_access deny all
# Squid normally listens to port 3128
http_port 3128
#We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
#Suggested default:
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Package(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
# Don't upgrade ShoutCast responses to HTTP
acl shoutcast rep_header X-HTTP09-First-Line ^ICY.[0-9]
upgrade_http0.9 deny shoutcast
# Apache mod_gzip and mod_deflate known to be broken so don't trust
# Apache to signal ETag correctly on such responses
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
# TAG: extension_methods
# Squid only knows about standardized HTTP request methods.
# You can add up to 20 additional "extension" methods here.
extension_methods REPORT MERGE MKACTIVITY CHECKOUT
#Default:
# hosts_file /etc/hosts
hosts_file /etc/hosts
# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid
Mensagem
Vou colocar todo o meu squid.conf para você ver.
Apenas respondendo a sua pergunta sim os grupos estão dentro da ou squid e estão todos em maiusculo igual ao script abaixo.
auth_param basic program /usr/lib/squid/ldap_auth -R -b dc=galaxia,dc=net -f sAMAccountName=%s -h 192.168.1.19 -D cn=squid,cn=squid,dc=galaxia,dc=net -w squid
auth_param basic children 5
auth_param basic realm Forneça seu nome de usuário e senha para navegar.
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
external_acl_type ldap_group %LOGIN /usr/lib/squid/squid_ldap_group -R -b "dc=galaxia,dc=net" -D "cn=squid,cn=squid,dc=galaxia,dc=net" -w squid -f "(&(objectclass=person)(sAMAccountName=%v)(memberof=cn=%a,ou=squid,dc=galaxia,dc=net))" -h 192.168.1.19
#Examples:
#acl macaddress arp 09:00:2b:23:45:67
#acl myexample dst_as 1241
acl password proxy_auth REQUIRED
acl proxyadmins external ldap_group INTERNET_LIBERADA
acl proxyusers external ldap_group INTERNET_RESTRITA
acl sites_sem_autenticacao dstdom_regex -i "/etc/squid/rules/sites_sem_autenticacao"
#Recommended minimum configuration:
acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8
# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow sites_sem_autenticacao
http_access allow proxyadmins
http_access allow proxyusers
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager
# Only allow purge requests from localhost
http_access allow purge localhost
http_access deny purge
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports
#http_access allow localnet
http_access allow localhost
# And finally deny all other access to this proxy
http_access deny all
#Allow ICP queries from local networks only
icp_access allow localnet
icp_access deny all
# Squid normally listens to port 3128
http_port 3128
#We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
#Suggested default:
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Package(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
# Don't upgrade ShoutCast responses to HTTP
acl shoutcast rep_header X-HTTP09-First-Line ^ICY.[0-9]
upgrade_http0.9 deny shoutcast
# Apache mod_gzip and mod_deflate known to be broken so don't trust
# Apache to signal ETag correctly on such responses
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
# TAG: extension_methods
# Squid only knows about standardized HTTP request methods.
# You can add up to 20 additional "extension" methods here.
extension_methods REPORT MERGE MKACTIVITY CHECKOUT
#Default:
# hosts_file /etc/hosts
hosts_file /etc/hosts
# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid
Carlos,
na linha onde contem o usuário que vai autenticar esta assim "cn=squid,cn=squid,dc=galaxia,dc=net" mas pelo que você me passou onde o usuário squid esta é um OU e não um CN, na minha vm (com Ubuntu ) também não havia funcionado então troquei para OU e funcionou outra coisa mudei a regra "http_access allow proxyusers", coloquei ela mais para baixo, é a ultima antes do "http_access deny all" assim ele consegue efetuar as restrições. Da uma olhada para ver não é isto amigo, aqui funcionou com o seu script.
Um abraço
Mensagem
Carlos,
na linha onde contem o usuário que vai autenticar esta assim "cn=squid,cn=squid,dc=galaxia,dc=net" mas pelo que você me passou onde o usuário squid esta é um OU e não um CN, na minha vm (com Ubuntu ) também não havia funcionado então troquei para OU e funcionou outra coisa mudei a regra "http_access allow proxyusers", coloquei ela mais para baixo, é a ultima antes do "http_access deny all" assim ele consegue efetuar as restrições. Da uma olhada para ver não é isto amigo, aqui funcionou com o seu script.
Um abraço
czelusniak,
Me Desculpa eu estava afirmando que estava como OU quando na verdade estava como CN, depois das modificações funcionou perfeitamente, muito obrigado pelo ótimo trabalho e por ter me ajudado.
Mensagem
czelusniak,
Me Desculpa eu estava afirmando que estava como OU quando na verdade estava como CN, depois das modificações funcionou perfeitamente, muito obrigado pelo ótimo trabalho e por ter me ajudado.
Olá Robinson. Excelente artigo, muito bem explicado!
Bem, estou usando o Samba4 aqui como Domain Controller, apliquei seu artigo e as restrições funcionaram. Entretanto, resolvi fazer um teste. Através de um PC fora do domínio, eu consegui logar e navegar usando qualquer nome de usuário que estivesse previamente cadastrado no AD e dentro do grupo PROXY_USERS. Gostaria que isso não acontecesse, pois pretendo aplicar uma série de restrições usando GPOs, então pensei em usar na ACL, o computador logado no domínio ao invés do usuário. Essa abordagem é possível? Eu pretendo fazer um teste, alterando o parâmetro (&(objectclass=person) para (&(objectclass=computer). Não sei se fui claro o suficiente, mas resumidamente seria alterar a autenticação de "usuário" para "computador". Qualquer ajuda é bem-vinda e mais uma vez parabéns pelo artigo!
Mensagem
Olá Robinson. Excelente artigo, muito bem explicado!
Bem, estou usando o Samba4 aqui como Domain Controller, apliquei seu artigo e as restrições funcionaram. Entretanto, resolvi fazer um teste. Através de um PC fora do domínio, eu consegui logar e navegar usando qualquer nome de usuário que estivesse previamente cadastrado no AD e dentro do grupo PROXY_USERS. Gostaria que isso não acontecesse, pois pretendo aplicar uma série de restrições usando GPOs, então pensei em usar na ACL, o computador logado no domínio ao invés do usuário. Essa abordagem é possível? Eu pretendo fazer um teste, alterando o parâmetro (&(objectclass=person) para (&(objectclass=computer). Não sei se fui claro o suficiente, mas resumidamente seria alterar a autenticação de "usuário" para "computador". Qualquer ajuda é bem-vinda e mais uma vez parabéns pelo artigo!
Obrigado Rui,
Nunca fiz este teste mas acredito que se você tirar o objectclass=person ninguém irá logar pois ele é uma classe de usuário, e se você colocar o objectclass=computer talvez a autenticação só acontecerá se você você passar uma conta de computar e não de um usuário, mas mesmo assim uma máquina fora do domínio poderá logar, uma forma de você restringir isto é utilizando NTLM com o squid dai o proxy não pede autenticação mas só libera a navegação se você estiver logado com uma conta do domínio. Estou terminando um artigo com NTLM, quero ver se até a metade do mês disponibilizo, o problema é o tempo meu amigo, mas no próprio VOL você pode encontrar algumas alternativas. Espero ter ajudado.
Mensagem
Obrigado Rui,
Nunca fiz este teste mas acredito que se você tirar o objectclass=person ninguém irá logar pois ele é uma classe de usuário, e se você colocar o objectclass=computer talvez a autenticação só acontecerá se você você passar uma conta de computar e não de um usuário, mas mesmo assim uma máquina fora do domínio poderá logar, uma forma de você restringir isto é utilizando NTLM com o squid dai o proxy não pede autenticação mas só libera a navegação se você estiver logado com uma conta do domínio. Estou terminando um artigo com NTLM, quero ver se até a metade do mês disponibilizo, o problema é o tempo meu amigo, mas no próprio VOL você pode encontrar algumas alternativas. Espero ter ajudado.
Amigo tem alguma forma de isto funcionar com o debian?
Mensagem
Amigo tem alguma forma de isto funcionar com o debian?
Mensagem
Valeu Robinson! De fato, estou lendo sobre NTLM e aparentemente essa é a única maneira de conseguir o que necessito. Enquanto seu artigo não sai, estou estudando este material http://www.linuxman.pro.br/autenticando_o_squid_no_ad_via_ntlm.pdf
Olá Ulisses,
na prática deve funcionar sem problemas basta procurar os binários squid_ldap_group e squid_ldap_auth, você pode usar o find:
# find / -iname squid_ldap_auth
e
# find / -iname squid_ldap_group
O restante não é preciso alterar nada.
Um abraco.
Mensagem
Olá Ulisses,
na prática deve funcionar sem problemas basta procurar os binários squid_ldap_group e squid_ldap_auth, você pode usar o find:
# find / -iname squid_ldap_auth
e
# find / -iname squid_ldap_group
O restante não é preciso alterar nada.
Um abraco.
Boa noite Rui,
pelo que vi do link que você colocou aí, é isto mesmo estou indo na mesma base no meu artigo.
No pdf que você postou ele fala sobre o horário do servidor isto tem que estar sincronizado com o AD senão dá problemas mesmo, outro ponto é o DNS, mas é muito tranquilo, boa sorte na sua jornada aí e se tiver tempo posta aí o resultado ou se tiver problema posta aí também numa dessa posso ajudar.
Um abraco
Mensagem
Boa noite Rui,
pelo que vi do link que você colocou aí, é isto mesmo estou indo na mesma base no meu artigo.
No pdf que você postou ele fala sobre o horário do servidor isto tem que estar sincronizado com o AD senão dá problemas mesmo, outro ponto é o DNS, mas é muito tranquilo, boa sorte na sua jornada aí e se tiver tempo posta aí o resultado ou se tiver problema posta aí também numa dessa posso ajudar.
Um abraco
Caro Amigo czelusniak,
Segui o seu tutoria, fazendo as alterações necessárias para meu domínio com meu grupos enfim. O usuario se autentica redondo. Mas o que ocorre. Segundo seu tutoria se o usuário não for membro de nenhum grupo do AD ele não navegaga correto? No meu caso aqui mesmo ele não estando cadastrado no grupo para controle de conteudo ele consegue navegar. O que pode estar ocorrendo. Agaurdo seu retorno.
Mensagem
Caro Amigo czelusniak,
Segui o seu tutoria, fazendo as alterações necessárias para meu domínio com meu grupos enfim. O usuario se autentica redondo. Mas o que ocorre. Segundo seu tutoria se o usuário não for membro de nenhum grupo do AD ele não navegaga correto? No meu caso aqui mesmo ele não estando cadastrado no grupo para controle de conteudo ele consegue navegar. O que pode estar ocorrendo. Agaurdo seu retorno.
Boa tarde
Caro Amigo czelusniak,
Minha duvida é a seguinte estou fazendo uns teste aqui na minha VM antes de implementar na minha rede.
Meu squid esta instalado no Debian 5 e eu nao conseguir localizar o arquivo squid_ldap_auth de forma nenhuma.
Gostaria da Ajuda de voces para que eu possa seguir o tutorial.
Mensagem
Boa tarde
Caro Amigo czelusniak,
Minha duvida é a seguinte estou fazendo uns teste aqui na minha VM antes de implementar na minha rede.
Meu squid esta instalado no Debian 5 e eu nao conseguir localizar o arquivo squid_ldap_auth de forma nenhuma.
Gostaria da Ajuda de voces para que eu possa seguir o tutorial.
Bom dia a todos,
Fiz este procedimento e funcionou certinho, mas preciso de uma ajuda. Eu gostaria de limitar o número de conexões por usuário, porém alguns deles devem ter conexão livre. Pergunta! Eu consigo limitar o número de conexões apenas para um grupo X, enquanto o grupo Y não possui limite?
Abraço!
Mensagem
Bom dia a todos,
Fiz este procedimento e funcionou certinho, mas preciso de uma ajuda. Eu gostaria de limitar o número de conexões por usuário, porém alguns deles devem ter conexão livre. Pergunta! Eu consigo limitar o número de conexões apenas para um grupo X, enquanto o grupo Y não possui limite?
Abraço!
Desconsiderem minha falta deste conhecimento, mas como se cria uma OU? É dentro de /etc/squid???
Mensagem
Desconsiderem minha falta deste conhecimento, mas como se cria uma OU? É dentro de /etc/squid???
Galera !
Preciso de uma ajuda !
Eu a príncipio fiz uma instalação básica do squid por #aptitude install squid, ai consegui fazr funcionar e tal, porém é necessário que ele se integre com o AD assim como ensinado neste tutorial !
Meu linux já está no dominio e e comunicando, porém preciso configrar essa linha
auth_param basic program /usr/sbin/squid_ldap_auth -R -b dc=dominio,dc=local -f sAMAccountName=%s -h 192.168.0.254 -D cn=squid,cn=users,dc=dominio,dc=local -w password
mas nao tenho a pasta /usr/sbin/squid_ldap_auth
Alguém tem alguma ideia
Mensagem
Galera !
Preciso de uma ajuda !
Eu a príncipio fiz uma instalação básica do squid por #aptitude install squid, ai consegui fazr funcionar e tal, porém é necessário que ele se integre com o AD assim como ensinado neste tutorial !
Meu linux já está no dominio e e comunicando, porém preciso configrar essa linha
auth_param basic program /usr/sbin/squid_ldap_auth -R -b dc=dominio,dc=local -f sAMAccountName=%s -h 192.168.0.254 -D cn=squid,cn=users,dc=dominio,dc=local -w password
mas nao tenho a pasta /usr/sbin/squid_ldap_auth
Alguém tem alguma ideia
Pessoal,
Preciso de ajuda sobre o tema deste tutorial.
Simplesmente não tenho sucesso ao tentar fazer o Squid autenticar através dos grupos do AD do Windows Server 2012.
Segue meu squid.conf:
-----------
auth_param basic program /usr/lib/squid/ldap_auth -R -b "dc=dominio,dc=local" -D "cn=squid,cn=Users,dc=dominio,dc=local" -w "password" -f sAMAccountName=%s -h 192.168.0.1
auth_param basic children 5
auth_param basic realm Digite suas credenciais para acessar a internet
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
#
external_acl_type gruposad %LOGIN /usr/lib/squid/squid_ldap_group -R -b "dc=dominio,dc=local" -D "cn=squid,cn=Users,dc=dominio,dc=local" -w "password" -f "(&(objectclass=person)(sAMAccountName=%v)(merberof=cn=%a,cn=Users,dc=seap,dc=intranet))" -h 192.168.0.1
#
acl password proxy_auth REQUIRED
#
acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl localnet src 192.168.0.0/24
#
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
#
acl proxyadmins external gruposad proxy_adm
acl proxyusers external gruposad proxy_users
#
acl sites_sem_autenticacao dstdom_regex -i "/etc/squid/arquivos/sites_sem_autenticacao"
#
acl downloads_proibidos urlpath_regex -i "/etc/squid/arquivos/downloads_proibidos"
#acl downloads_permitidos urlpath_regex -i "/etc/squid/arquivos/downloads_permitidos"
#
acl palavras_proibidas url_regex -i "/etc/squid/arquivos/palavras_proibidas"
acl palavras_permitidas url_regex -i "/etc/squid/arquivos/palavras_permitidas"
#
acl sites_proibidos dstdom_regex -i "/etc/squid/arquivos/sites_proibidos"
#acl sites_permitidos dstdom_regex -i "/etc/squid/arquivos/sites_permitidos"
#
acl urls_proibidas url_regex -i "/etc/squid/arquivos/urls_proibidas"
#acl urls_permitidas url_regex -i "/etc/squid/arquivos/urls_permitidas"
#
http_access allow sites_sem_autenticacao
http_access allow proxyadmins
http_access allow palavras_permitidas
http_access deny downloads_proibidos
http_access deny palavras_proibidas
http_access deny sites_proibidos
http_access deny urls_proibidas
http_access allow password proxyusers
#
http_access allow manager localhost
http_access deny manager
#
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access allow localhost
#
http_access deny all
#
icp_access allow localnet
icp_access deny all
#
http_port 3128
#
hierarchy_stoplist cgi-bin ?
#
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
-----------
Mensagem
Pessoal,
Preciso de ajuda sobre o tema deste tutorial.
Simplesmente não tenho sucesso ao tentar fazer o Squid autenticar através dos grupos do AD do Windows Server 2012.
Segue meu squid.conf:
-----------
auth_param basic program /usr/lib/squid/ldap_auth -R -b "dc=dominio,dc=local" -D "cn=squid,cn=Users,dc=dominio,dc=local" -w "password" -f sAMAccountName=%s -h 192.168.0.1
auth_param basic children 5
auth_param basic realm Digite suas credenciais para acessar a internet
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
#
external_acl_type gruposad %LOGIN /usr/lib/squid/squid_ldap_group -R -b "dc=dominio,dc=local" -D "cn=squid,cn=Users,dc=dominio,dc=local" -w "password" -f "(&(objectclass=person)(sAMAccountName=%v)(merberof=cn=%a,cn=Users,dc=seap,dc=intranet))" -h 192.168.0.1
#
acl password proxy_auth REQUIRED
#
acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl localnet src 192.168.0.0/24
#
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
#
acl proxyadmins external gruposad proxy_adm
acl proxyusers external gruposad proxy_users
#
acl sites_sem_autenticacao dstdom_regex -i "/etc/squid/arquivos/sites_sem_autenticacao"
#
acl downloads_proibidos urlpath_regex -i "/etc/squid/arquivos/downloads_proibidos"
#acl downloads_permitidos urlpath_regex -i "/etc/squid/arquivos/downloads_permitidos"
#
acl palavras_proibidas url_regex -i "/etc/squid/arquivos/palavras_proibidas"
acl palavras_permitidas url_regex -i "/etc/squid/arquivos/palavras_permitidas"
#
acl sites_proibidos dstdom_regex -i "/etc/squid/arquivos/sites_proibidos"
#acl sites_permitidos dstdom_regex -i "/etc/squid/arquivos/sites_permitidos"
#
acl urls_proibidas url_regex -i "/etc/squid/arquivos/urls_proibidas"
#acl urls_permitidas url_regex -i "/etc/squid/arquivos/urls_permitidas"
#
http_access allow sites_sem_autenticacao
http_access allow proxyadmins
http_access allow palavras_permitidas
http_access deny downloads_proibidos
http_access deny palavras_proibidas
http_access deny sites_proibidos
http_access deny urls_proibidas
http_access allow password proxyusers
#
http_access allow manager localhost
http_access deny manager
#
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access allow localhost
#
http_access deny all
#
icp_access allow localnet
icp_access deny all
#
http_port 3128
#
hierarchy_stoplist cgi-bin ?
#
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
-----------
Amigo, excelente iniciativa, só tenho um comentário, se puder postar os confs mais simplificados, acho que fica mais fácil das pessoas aprenderem. Só uma crítica construtiva, parabéns!
Mensagem
Amigo, excelente iniciativa, só tenho um comentário, se puder postar os confs mais simplificados, acho que fica mais fácil das pessoas aprenderem. Só uma crítica construtiva, parabéns!
Contribuir com comentário
Enviar