Modulo de segurança BB - squid

1. Modulo de segurança BB - squid

Robson de Oliveira Sousa
kairosfc

(usa Red Hat)

Enviado em 09/03/2015 - 09:27h

Senhores,

Estou com um problema meu chato.
Estou administrando alguns servidores de proxy. Acontece que o usuario esta reclamando de que não está conseguindo baixar para instalar um componente do modulo de segurança do Banco do Brasil, o "https://www14.bb.com.br/sf/stormfish.exe".

Resumindo:

_ Já verificamos que não é problema de firewall. Ligamos um servidor de proxy saindo direto no roteador e não conseguimos baixar o arquivo. Sem o proxy e com o firewall baixamos normalmente.

_ Coloquei "http_access allow all" no inicio do squid.conf, e não resolveu o problema.

_ Não há regras para arquivos ".exe" nas regras :
/squid/regras]# grep ".exe" *
/squid/regras]#

_ Segue arquivo conf do squid:

#debug_options ALL,1 33,2 28,9
#debug_options ALL,1 33,2
##### Porta
http_access allow all
http_port 8080

##### Coredump
coredump_dir /squid/coredump/

##### Host name
unique_hostname xxxxxxxxx
visible_hostname xxxxxxxx

##### dns servers
dns_nameservers xxxxxxx

store_dir_select_algorithm round-robin

##<antigo>##cache_swap_low 96
cache_swap_low 90

##<antigo>##cache_swap_high 97
cache_swap_high 95

##<antigo>##maximum_object_size_in_memory 32 MB
maximum_object_size_in_memory 512 KB

##<antigo>##minimum_object_size 0 KB
minimum_object_size 0 KB

##<antigo>##maximum_object_size 96 MB
maximum_object_size 64 MB

##<antigo>##memory_replacement_policy lru
memory_replacement_policy heap GDSF
cache_replacement_policy heap LFUDA

##### Memoria
cache_mem 4096 MB

# Tempo para agaurdar o fechamento de conexçs durante encerramento do squid
shutdown_lifetime 1 second

##### Cache
#cache_dir diskd /squid/cache 20480 64 256 Q1=64 Q2=72
cache_dir aufs /squid/cache 20480 16 256
#cache_dir ufs /squid/cache 20480 16 256

##### PArametros do proxy antigo
httpd_suppress_version_string on
ftp_list_width 100
authenticate_cache_garbage_interval 1 hour
authenticate_ttl 1 hour
authenticate_ip_ttl 60 seconds

# Sends a connection-close to clients that leave a half open connection to the squid server.
half_closed_clients off

##### Logs
#logformat MEU_LOG IP do cliente: %>a - Username: %un - Horario: [%tl] - Metodo: %rm - URL: %ru - Status HTTP: %Hs - Status Squid: %Ss
cache_access_log /squid/logs/proxy-internet-0.log squid
cache_log /squid/logs/cache-0.log

##### NTLM
# para quem esta logado em maquinas windows, aproveita a senha do logon
auth_param ntlm children 150
auth_param ntlm program /usr/bin/ntlm_auth D_SEDE/S-SEAD2723 --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm keep_alive on

# para clientes nao windows, user/senha tem de ser solicitado
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 150
auth_param basic realm "Autenticacao Proxy - xxxxxxx"
auth_param basic credentialsttl 1 hours

##<antigo>##external_acl_type nt_group ttl=300 children=155 %LOGIN /usr/lib64/squid/wbinfo_group.pl
#external_acl_type nt_group ttl=300 concurrency=15 %LOGIN /usr/lib64/squid/wbinfo_group.pl
external_acl_type nt_group ttl=60 children=155 %LOGIN /usr/lib64/squid/wbinfo_group.pl

#=====configura o tempo de vida dos objetos que mais consomem banda
refresh_pattern -i .jpg$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .gif$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .flv$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .png$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .swf$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .avi$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .wmv$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .mp3$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .wma$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .js$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .css$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
refresh_pattern -i .pdf$ 0 60% 1440 ignore-no-cache ignore-no-store reload-into-ims
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
#faz o cache da pagina do google por longo tempo
refresh_pattern -i ^http:\/\/www\.google\.com\/$ 0 20% 360 override-expire override-lastmod ignore-reload ignore-no-cache ignore-no-store reload-into-ims ignore-must-revalidate

# CONFIGURA A ABORTAGEM DE DOWNLOAD QUANDO O USUARIO DESISTE
quick_abort_min 1024 KB
quick_abort_max 2048 KB
quick_abort_pct 90

# CONFIGURA O CACHE DO DNS DOS ENDERECOS JA ENCONTRADOS
positive_dns_ttl 8 HOURS
negative_dns_ttl 5 MINUTES
ipcache_size 15000
ipcache_low 96
ipcache_high 97
fqdncache_size 10000

hierarchy_stoplist cgi-bin ?
#=================================================================
# acesso padrao daemon squid
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8

# acl para especificar uso obrigatorio de proxy
acl ntlm_users proxy_auth REQUIRED

# redes para icp (proxy filho)
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

# portas seguras
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync

# portas comuns
acl Safe_ports port 80 # http
acl Safe_ports port 81 # http
acl Safe_ports port 82 # http
acl Safe_ports port 20 # ftp
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 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 631 # cups
acl Safe_ports port 777 # multiling http
acl Safe_ports port 809 # SPTrans
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl Safe_ports port 6500 # Video RNP
acl Safe_ports port 1025-65535 # unregistered ports

# acl que especifica metodos de conectividade
acl purge method PURGE
acl CONNECT method CONNECT


# acl que especifica tipo de consulta QUERY em cgi-bin
acl QUERY urlpath_regex cgi-bin \?

# acls com excessoes em headerss
#acl shoutcast rep_header X-HTTP09-First-Line ^ICY\s[0-9]
#acl apache rep_header Server ^Apache

# liberacoes padrao daemon/localhost
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge

#=======================ACLS xxxxxxx ================================
acl url_nocache dstdomain "/squid/regras/url.nocache"
no_cache deny url_nocache
always_direct allow url_nocache

#================CLs_ACTIVE_DIRECTORY============================
acl AcessoEspecial external nt_group ProxyAcessoEspecial
acl AcessoTotal external nt_group ProxyAcessoTotal
acl AcessoIntermed external nt_group ProxyAcessoIntermediario
acl AcessoChats external nt_group ProxyAcessoChats
acl AcessoGEarth external nt_group ProxyAcessoGoogleEarth
acl AcessoLimitado external nt_group Domain_Users
acl AcessoBloqueado external nt_group ProxyAcessoBloqueado
#================= ACLs para o grupo padrao da localidade ======================
acl AcessoPadrao external nt_group ProxySEDEAcessoPadrao

#================= Definicao ACL==========================================
acl unicoip max_user_ip 2
acl ip_estacoes src "/squid/regras/ip.estacoes" # Estacoes com acesso liberado sem autenticacao
acl ip_servidores src "/squid/regras/ip.servidores" # Servidores com acesso liberado sem autenticacao
acl ip_bloqueados dst "/squid/regras/ip.bloqueados" # Lista dos IPs bloqueados
acl ip_liberados dst "/squid/regras/ip.liberados" # Lista dos IPs liberados sem autenticacao
acl url_estacoes dstdomain "/squid/regras/url.estacoes" # URL liberado para as estacoes
acl url_servidores dstdomain "/squid/regras/url.servidores" # URL liberado para os servidores
acl url_xxxxxxx dstdomain "/squid/regras/url.xxxxx" # URL dos sites xxxxx que serao bloqueados
acl url_diretofw url_regex -i "/squid/regras/url.diretofw" # URL para o redirect - Navegador nao usara o proxy
acl url_multimedia dstdomain "/squid/regras/url.multimedia" # URL de sites com multimidia liberados
acl url_bloqueadas dstdomain "/squid/regras/url.bloqueadas" # URL que deve ser bloqueada
acl url_excecao url_regex -i "/squid/regras/url.excecao" # URL que deve ser liberada com autenticacao
acl url_semauth url_regex -i "/squid/regras/url.semauth" # URLs liberadas sem autenticacao para todos
acl url_liberadas url_regex -i "/squid/regras/url.liberadas" # URL que deve ser liberada sem autenticacao
acl url_dominios1 dstdomain "/squid/regras/url.dominios1" # URL para o grupo que nao tem acesso padrao
acl url_dominios2 url_regex -i "/squid/regras/url.dominios2" # URL para o grupo que nao tem acesso padrao
acl url_loginmsn url_regex -i "/squid/regras/url.loginmsn" # URL de login do MSN
acl url_chats url_regex -i "/squid/regras/url.chats" # URL de acesso ao MSN e CHATS
acl url_gearth dstdom_regex -i "/squid/regras/url.googleearth" # URL de acesso ao Google Earth
acl ext_bloqueadas urlpath_regex "/squid/regras/ext.bloqueados" # Extensoes bloqueadas
acl ext_liberadas urlpath_regex "/squid/regras/ext.liberados" # Extensoes liberadas
acl redes_sociais url_regex -i "/squid/regras/url.redes_sociais" # Lista de acesso a sites sociais
acl ip_projeto_social src "/squid/regras/ip.pjsocial" # Rede Projeto Social
acl url_pjsocial dstdomain "/squid/regras/url.pjsocial" # URL liberado para a rede Projeto Social
acl IP_TEMPORARIO src "/squid/regras/ip.total" # Acesso temporario
acl FTP proto FTP
acl lib_sociais url_regex -i "/squid/regras/url.lib_sociais" # URLs de acesso a sites de redes sociais liberados durante o horario de almoco
acl horario_almoco time MTWHF 12:01-13:59

#================= Bloqueio para os sites de xxxxx ========================
http_access deny url_xxxx
#================= Para acesso total e para aqueles que nao funcionam com autenticacao ====================
http_access allow IP_TEMPORARIO
http_access allow ip_estacoes url_estacoes
http_access allow ip_projeto_social url_pjsocial
http_access deny ip_projeto_social
http_access allow ip_servidores url_servidores
#================= Para os que nao funcionam com autenticacao ====================
http_access allow ip_liberados
http_access allow url_liberadas
http_access allow url_semauth
#================= Bloqueio geral do acesso ==============================================================
# Tem que ficar depois das Liberadas para nao solicitar autenticacao para os sites liberados
http_access deny AcessoBloqueado
#================= Para acesso ao Google Earth ===================================
http_access allow AcessoGEarth url_gearth
#================= nao libera portas diferentes de Safe_ports e SSL_ports
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#=====================Aplicando as ACL'S==================
http_access deny unicoip
http_access allow AcessoEspecial
http_access allow horario_almoco lib_sociais
http_access allow CONNECT horario_almoco lib_sociais
http_access deny redes_sociais
http_access allow AcessoTotal
http_access deny ip_bloqueados
http_access deny url_bloqueadas !url_excecao
http_access allow AcessoIntermed
http_access allow FTP AcessoEspecial AcessoTotal AcessoIntermed
http_access allow FTP url_multimedia
http_access allow ext_liberadas url_multimedia
http_access allow url_multimedia ext_bloqueadas
http_access deny ext_bloqueadas
http_access allow url_loginmsn
http_access allow url_chats AcessoChats
http_access deny url_chats
http_access deny FTP
http_access allow AcessoPadrao
http_access allow AcessoLimitado url_dominios1
http_access allow AcessoLimitado url_dominios2
http_access deny all
http_reply_access allow all
always_direct allow FTP
#===============Fim Da Aplicacao===========
logfile_rotate 31

### idioma das mensagens do squid para usuarios
#error_directory /usr/share/squid/errors
error_directory /usr/share/squid/errors/pt-br

##<antigo>##log_fqdn off

# Log de objetos guardados. Pode ser desativado para melhorar a performance
##<antigo>##cache_store_log none

##<antigo>##emulate_httpd_log off
##<antigo>##check_hostnames off

#access_log daemon:/10.0.27.73:3306/squid/access_log/squid/squid squid



----------------------

Alguma sugestão?



  


2. Re: Modulo de segurança BB - squid

Robson de Oliveira Sousa
kairosfc

(usa Red Hat)

Enviado em 09/03/2015 - 09:40h


Senhores,

Eu limpei o arquivo de configuração na esperança de funcionar, e ir voltando as regras aos poucos até descobrir qual esta impactando, mas msm com este arquivo limpo, não foi possivel fazer o download.

------------------------------
#debug_options ALL,1 33,2 28,9
#debug_options ALL,1 33,2
##### Porta
http_access allow all
http_port 8080
##### Coredump
coredump_dir /squid/coredump/

##### Host name
unique_hostname s-sesh06.xxxxxxx
visible_hostname s-sesh06.xxxxxxx

##### dns servers
#dns_nameservers 10.0.17.23

#cache_dir aufs /squid/cache 20480 16 256
cache_access_log /squid/logs/proxy-internet-0.log squid
cache_log /squid/logs/cache-0.log

error_directory /usr/share/squid/errors/pt-br

-----------------------------------------

pelo que vi no log, esta linha é para ser a do download, esta dando permitido, mas nao vai. rs

1425652740.550 3461 10.0.97.129 TCP_MISS/200 2814 CONNECT _www14.bancobrasil.com.br:443 - DIRECT/23.38.182.238 -


3. Re: Modulo de segurança BB - squid

Robson de Oliveira Sousa
kairosfc

(usa Red Hat)

Enviado em 09/03/2015 - 09:44h

No momento que dá o erro na instalação aparece:

1425905109.734 0 10.0.17.102 NONE/400 358 HEAD / - NONE/- text/html




4. Re: Modulo de segurança BB - squid

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 09/03/2015 - 10:02h

Cara, veja duas coisas:

- Há bloqueio de donwload de extensões como .exe ANTES da sua regra d liberação desse link?
- Veja q o link é HTTPS, ou seja, vc só consegue liberar o host (www14.bb.com.br). O resto, o squid NÃO consegue identificar toda URL, uma vez q a conexão estará criptografada. Vc liberou o host ou a URL inteira?



5. Re: Modulo de segurança BB - squid

Robson de Oliveira Sousa
kairosfc

(usa Red Hat)

Enviado em 09/03/2015 - 10:28h


Cara, eu limpei todas as regras no meu servidor de homologação, deixei apenas "http_access allow all" o que deveria liberar tudo no meu ponto de vista. Mas não surtiu efeito. Inclusive realizando alguns testes, vi que no radio uol, por exemplo, não permite ouvir musicas.


6. Re: Modulo de segurança BB - squid

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 09/03/2015 - 14:43h

A minha sugestão é verificar o tráfego na máquina cliente, no proxy e no firewall, pra saber se a conexão foi estabelecida, se foi reiniciada etc., com as ferramentas tcpdump e wireshark. Se vc colocou pra liberar tudo e mesmo assim não foi, deve ser alguma coisa na sua rede. Veja isso ae e depois coloque aqui o diagnóstico.



7. Re: Modulo de segurança BB - squid

Robson de Oliveira Sousa
kairosfc

(usa Red Hat)

Enviado em 09/03/2015 - 15:28h


Encontrei a falha, e foi bem besta pra falar a verdade.. kkkk
O Modulo de proteção do BB não pega o proxy que está nas nossas configurações de internet, ou seja, vai direto ao firewall. Claro que quando testamos apenas pelo firewall é possivel baixar-lo, pq o firewall esta liberado para realizar o teste. Mas em casos comuns, o firewall só deixa sair pela rede se a solicitação passar pelo proxy.
Então adicionamos no firewall o IP do download para passa direto msm sem o uso do proxy.

Vlw!


8. Re: Modulo de segurança BB - squid

Julio Cesar Molon
juliocm

(usa Debian)

Enviado em 14/03/2015 - 23:05h


Inclui a extensão .exe dentro do arquivo Ext.liberados em /squid/regras e redireciona para o ip que está precisando.

Outra coisa, você tem autenticação via ntlm. Você deve ter alguma regra de execução que proíba o acesso a extensão .exe, não?


9. outra coisa. Você tem uma falha grande de segurança. pq está liberando tudo na hora do almoço?

Julio Cesar Molon
juliocm

(usa Debian)

Enviado em 14/03/2015 - 23:07h









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts