Logo Hardware.com.br
EVERTON DIEGO
EVERTON DIEG... Membro Junior Registrado
96 Mensagens 4 Curtidas

Como liberar determinados sites pra um grupo de usuários no squid?

#1 Por EVERTON DIEG... 07/05/2019 - 10:38
Bom dia,

Pessoal, to com uma dúvida para criar uma acl no squid como não tenho muito conhecimento com esse tipo de serviço queria saber de vocês como faço pra criar uma acl pra liberar só determinados sites pra um grupo especifico de usuários? Logo, abaixo, ta o arquivo com as configurações do squid que já existe aqui na empresa. Já criei os arquivos site_restrito para adicionar os dominios que serão bloqueados e o arquivo acesso_grupo_restrito de usuários.

http_port 10.37.0.6:3128


# Hostname da máquina

visible_hostname Proxy_Funjope

httpd_suppress_version_string on


# Servidor DNS que o Proxy ira utilizar

#dns_nameservers x.x.x.x


###################################

# Configurações de cache

###################################

# Memória

cache_mem 128 MB

maximum_object_size_in_memory 64 KB

memory_replacement_policy lru


# Disco

cache_dir aufs /var/spool/squid 50000 32 512

minimum_object_size 0 KB

maximum_object_size 50 MB

cache_swap_low 90

cache_swap_high 95

cache_replacement_policy heap LFUDA


max_filedescriptors 16384

ignore_expect_100 on



####################################


[HASHTAG]#Log[/HASHTAG]

cache_log /var/log/squid/cache.log

cache_store_log none


[HASHTAG]#Customizando[/HASHTAG] os log's de acesso

logformat squid %ts.%03tu %6tr %{X-Client}>h %Ss/%03Hs %

access_log /var/log/squid/access.log squid


#cache_mgr [EMAIL]everton.santos@joaopessoa.pb.gov.br[/EMAIL]


# TIMEOUTS

# -----------------------------------------------------------------------------

shutdown_lifetime 10 seconds


# Idioma das mensagens de erro pelo Browser

error_directory /usr/share/squid/errors/Portuguese


refresh_pattern ^ftp: 1440 20% 10080

refresh_pattern ^gopher: 1440 0% 1440

refresh_pattern -i (/cgi-bin/|\?) 0 0% 0

refresh_pattern . 0 20% 4320


hierarchy_stoplist cgi-bin ?

acl QUERY urlpath_regex cgi-bin \?

cache deny QUERY


# Log com o nome do usuário

emulate_httpd_log on



###################################

# ACL's

###################################

acl all src 0.0.0.0/0.0.0.0

acl manager proto cache_object

acl localhost src 127.0.0.1/255.255.255.255

acl to_localhost dst 127.0.0.0/8

acl REDE_FUNJOPE src x.x.x.x/24

acl REDE_UMTI src x.x.x.x/24


#################


acl SSL_ports port 443 # https

acl SSL_ports port 563 # snews

acl SSL_ports port 873 # rsync

acl SSL_ports port 10000 # webmin

acl SSL_ports port 8180 # sim

acl SSL_ports port 8543 # sim https

acl SSL_ports port 37777 # sim https

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 Safe_ports port 2631 # Conectividade Social da Caixa


acl PORTA_LIBERADA port 3001 8004 8080 8000 8009 8086 9673 443 123 8180 8543 8999 23157 8069 8082 9090 2631 5938 3456 8014

acl purge method PURGE

acl CONNECT method CONNECT


# Limite de Download

request_body_max_size 200 MB

[HASHTAG]#acl[/HASHTAG] html rep_mime_type text/html

#reply_body_max_size 0 allow html

#reply_body_max_size 104857600 deny all


###################################

# Listas utilizadas para bloqueio

###################################

[HASHTAG]#acl[/HASHTAG] ALERTA_VIRUS src "/etc/squid/acls/pc_virus.txt"

#deny_info http://10.37.0.6/index.html ALERTA_VIRUS

acl LIBERADO_ATUALIZACAO url_regex -i "/etc/squid/acls/sites/liberados_para_atualizacao.txt" # sites que nao vinculam autenticacao (antivirus e update de SO)

acl DOMINIOS_BLOQUEADOS url_regex -i "/etc/squid/acls/sites/bloqueados_especial.txt" # que devam ser bloqueados e nao se encaixem nos bloqueios anteriores

acl SITE_WHITELIST_DOM dstdomain "/etc/squid/acls/sites/site_whitelist.txt" # Dominios Liberados para todos (gov.br, jus.br, edu.br entre outros)

acl SITE_DOWNLOAD dstdomain "/etc/squid/acls/sites/filehosting/site_download.txt" # Liberar sites de download para suporte (Megaupload, rapidshare e etc)

acl EXTENSAO_DOWNLOAD urlpath_regex -i "/etc/squid/acls/sites/extensao_download.txt" # dos arquivos

acl SITE_BATEPAPO dstdomain "/etc/squid/acls/sites/chat/site_batepapo.txt" # Liberar sites de download para suporte (Megaupload, rapidshare e etc)

acl SITE_PORNO dstdomain "/etc/squid/acls/sites/porn/site_porno.txt" # Bloquear sites porno para todos os usuarios (Sites baseados nas listas do dansguardias)

acl SITE_PROXY dstdomain "/etc/squid/acls/sites/proxy/site_proxy.txt" # Bloquear webproxies que possam contornar a política de acesso.

acl SITE_REDES_SOCIAIS dstdomain "/etc/squid/acls/sites/socialnetworking/site_redes_sociais.txt" # Lista redes sociais a serem bloqueadas

acl SITE_JOGOS dstdomain "/etc/squid/acls/sites/onlinegames/site_jogos.txt" # de jogos online

acl STREAMING_DOM dstdomain "/etc/squid/acls/sites/streaming_dom.txt" # Sites que hospedam streaming, ideal quando o bloqueio por mimetype nao funciona

acl STREAMING_EXT urlpath_regex -i "/etc/squid/acls/sites/streaming_ext.txt" # EXTENSOES DE AUDIO/VIDEO [HASHTAG]#Extensão[/HASHTAG] de arquivos que contem streaming (AUDIO/VIDEO)

acl STREAMING_VIDEO rep_mime_type -i "/etc/squid/acls/sites/streaming_video.txt" # Mime Types de Video

acl STREAMING_AUDIO rep_mime_type -i "/etc/squid/acls/sites/streaming_audio.txt" # Mime Types de Audio


acl SITE_PORNO dstdomain

"/etc/squid/acls/sites/grupo_restrito/site_restrito.txt" # Lista redes sociais a serem bloqueadas


# Não faz cache para os servidores da PMJP

acl SERVIDORES_UMTI dst 10.96.0.0/24 201.18.173.192/26 # INCLUI AS REQUISICOES PARA OS SERVIDORES INTERNOS NO CACHE

acl SERVIDORES_UMTI_NAME dstdomain .joaopessoa.pb.gov.br # INCLUI AS REQUISICOES PARA OS SERVIDORES INTERNOS NO CACHE

cache deny SERVIDORES_UMTI

cache deny SERVIDORES_UMTI_NAME

always_direct allow SERVIDORES_UMTI

always_direct allow SERVIDORES_UMTI_NAME

cache allow all


# Liberação no horário de Almoço

[HASHTAG]#acl[/HASHTAG] LIBERADO_ALMOCO time MTWHF 12:00-13:00


# Java do banco do brasil nao utiliza autenticacao ntlm

acl JAVA browser Java/1.4 Java/1.5 Java/1.6 Java/1.7 Java/1.8


# Liberar JAVA

http_access allow JAVA all


###################################

# Módulo para autenticação no SAMBA

###################################

# Autenticação squid (autenticação via Dominio)

auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --domain=FUNJOPE

auth_param ntlm children 20

auth_param ntlm keep_alive on


# Autenticação basic caso a autenticação via dominio falhe

auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic

auth_param basic children 5

auth_param basic realm "Controle de Acesso a Internet"

auth_param basic credentialsttl 2 hours

auth_param basic casesensitive off



####################################

# ACL's de Acesso - Usuários

####################################

acl ACESSO_TOTAL proxy_auth "/etc/squid/acls/usuarios/acesso_total.txt" # Acessa TUDO menos PORNO.

acl ACESSO_RESTRITO proxy_auth "/etc/squid/acls/usuarios/acesso_restrito.txt" # apenas aos sites permitidos.

acl ACESSO_PROIBIDO proxy_auth "/etc/squid/acls/usuarios/acesso_proibido.txt" # nenhum acesso.


####################################

# ACL's- Incrementais

####################################

acl ACESSO_BATEPAPO proxy_auth "/etc/squid/acls/usuarios/acesso_batepapo.txt" # com direito a bate-papo

acl ACESSO_REDE_SOCIAL proxy_auth "/etc/squid/acls/usuarios/acesso_redesocial.txt" # com direito a rede social

acl ACESSO_STREAMING proxy_auth "/etc/squid/acls/usuarios/acesso_streaming.txt" # com direito a streaming (audio e video)

acl ACESSO_DOWNLOAD proxy_auth "/etc/squid/acls/usuarios/acesso_download.txt" # com direito a download


acl ACESSO_JOGOS proxy_auth "/etc/squid/acls/usuarios/acesso_jogos.txt" # com direito a jogos


acl ACESSO_GRUPO_RESTRITO proxy_auth "/etc/squid/acls/usuarios/acesso_grupo_restrito.txt" # com direito a jogos



# Autenticação Requerida

acl userauth proxy_auth REQUIRED


###################################

# Permissões de Acesso

###################################


# Liberacao de acesso sem autenticacao para atualizacao de AV, SO e sites legitimos que nao vinculam autenticacao

http_access allow LIBERADO_ATUALIZACAO


# Dominios liberados para todos os usuarios (gov.br,edu.br, jus.br, dominios legitimos cujo conteudo esta sendo bloqueado entre outros)

http_access allow SITE_WHITELIST_DOM


# Sites Pornograficos sao bloqueados para todos os usuarios

http_access deny SITE_PORNO


# Horários Permitidos

#http_access allow LIBERADO_ALMOCO REDE_FUNJOPE !SITE_DOWNLOAD


# Liberando os servidores da UMTI

http_access allow SERVIDORES_UMTI

http_access allow SERVIDORES_UMTI_NAME


###################################

# Liberando com autenticação

###################################


# GRUPO - ACESSO PROIBIDO - Usuários sem acesso ao proxy

http_access deny ACESSO_PROIBIDO


# Acesso com TUDO liberado

http_access allow ACESSO_TOTAL


# Acessos Parciais

http_access allow ACESSO_REDE_SOCIAL SITE_REDES_SOCIAIS

http_access allow ACESSO_STREAMING STREAMING_EXT

http_access allow ACESSO_STREAMING STREAMING_DOM

http_access allow ACESSO_BATEPAPO SITE_BATEPAPO

http_access allow ACESSO_JOGOS SITE_JOGOS

http_access allow ACESSO_DOWNLOAD SITE_DOWNLOAD

http_access allow ACESSO_DOWNLOAD EXTENSAO_DOWNLOAD


# Não se enquadrando em nenhum acesso parcial NEGAR

http_access deny SITE_REDES_SOCIAIS

http_access deny STREAMING_DOM

http_access deny STREAMING_EXT

http_access deny SITE_BATEPAPO

http_access deny SITE_DOWNLOAD

http_access deny SITE_JOGOS

http_access deny SITE_PROXY


# Sites que devem ser bloqueados mais que não se encaixam na categoria de redes sociais, streaming e compartilhamento de arquivos

http_access deny DOMINIOS_BLOQUEADOS


# Libera o acesso as portas cadastradas nesta ACL

http_access allow PORTA_LIBERADA



## ACL's Padrões

http_access allow manager localhost

http_access deny manager

http_access allow purge localhost

http_access deny purge


# Liberação de Portas

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports


# GRUPO - ACESSO RESTRITO

http_access allow ACESSO_RESTRITO

http_access allow localhost

icp_access allow all

htcp_access allow all

http_access deny all



#######################################################

# Bloqueando baseado em mimetypes #

#######################################################


# Liberando os site que nao vinculam autenticacao

http_reply_access allow LIBERADO_ATUALIZACAO

http_reply_access allow SERVIDORES_UMTI


# Liberando mimetypes no horario do almoco

#http_reply_access allow LIBERADO_ALMOCO REDE_FUNJOPE


# Liberando a classe total para acessar mimetypes

http_reply_access allow ACESSO_TOTAL


# Liberando a classe de streaming acessar mimetypes

http_reply_access allow ACESSO_STREAMING


# Liberando a classe de redes sociais p/ acessar mimetypes

http_reply_access allow ACESSO_REDE_SOCIAL SITE_REDES_SOCIAIS


# Liberando os sites da whitelist

http_reply_access allow SITE_WHITELIST_DOM


# Liberando mimetypes do dowload

http_reply_access allow ACESSO_DOWNLOAD SITE_DOWNLOAD

http_reply_access allow ACESSO_DOWNLOAD EXTENSAO_DOWNLOAD


# Liberando mimetypes para os sites de batepapo

http_reply_access allow ACESSO_BATEPAPO SITE_BATEPAPO


# Negando acesso aos MIME Types

http_reply_access deny STREAMING_VIDEO

http_reply_access deny STREAMING_AUDIO
EVERTON DIEGO
EVERTON DIEG... Membro Junior Registrado
96 Mensagens 4 Curtidas
#3 Por EVERTON DIEG...
08/05/2019 - 08:53
jqueiroz disse:
A autenticação dos usuários já está funcionando? Você pode confirmar isso olhando o log de acesso, se os nomes dos usuários aparecerem, já temos uma base sólida pra começar.

Ta funcionando sim. Esse servidor já funciona. O problema é como não tenho dominio do squid gostaria de saber como faço pra criar essa acl pra esses usuários especificos. Lembrando: Criar acl pra liberar apenas alguns sites pra um grupo de usuários.
jqueiroz
jqueiroz Cyber Highlander Registrado
104K Mensagens 5.7K Curtidas
#4 Por jqueiroz
08/05/2019 - 11:53
Ok. Primeira coisa é criar os grupos, e vc usa uma acl pra cada grupo. Pode especificar os membros do grupo na própria acl, ou usar um arquivo com a lista dos nomes dos membros.

acl diretoria recoreco
acl diretoria bolao
acl diretoria azeitona


acl diretoria “/etc/squid/diretoria.txt”


Depois, crie a acl com os URLs que esse grupo pode acessar. Novamente, vc pode especificar esses URLs um a um, ou usar um arquivo pra isso.

acl liberado_diretoria “/etc/squid/liberados_diretoria.txt”


Por fim, junte as várias acls numa regra de liberação (ou bloqueio) de acesso:

http_access allow diretoria liberados_diretoria


Essa é a parte fácil; difícil é encontrar o ponto certo da configuração onde colocar essa regra, pois o squid usa esquema de short circuit, ou seja, a primeira regra que tem suas condições atendidas é a única executada. Assim, você tem que colocar as regras mais específicas antes, e as mais genéricas depois.
"chmod 777 nunca ajudou ninguém" (c) 2002-2021 JQueiroz/FGdH
Conheça o Blog do Zekke
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal