Tutorial Servidor Proxy com Squid baseado em Linux Acadêmicos : Felipe Zottis e Cleber Pivetta. Servidor Proxy

Documentos relacionados
5/7/2010. Apresentação. Web Proxy. Proxies: Visão Geral. Curso Tecnologia em Telemática. Disciplina Administração de Sistemas Linux

Depois que instalamos o Squid vamos renomear o arquivo de configuração para criarmos um do zero.

Servidor proxy - Squid PROFESSOR : RENATO WILLIAM

Administração de Sistemas Operacionais

SQUID Linux. Rodrigo Gentini

Relatório SQUID e SAMBA. Instalação e Configuração de Servidores de Rede

Curso de extensão em Administração de redes com GNU/Linux

Linux Network Servers

SERVIDOR PROXY COM SQUID3 em GNU/Linux Debian7 Por: Prof. Roitier Campos Gonçalves

Prof. Samuel Henrique Bucke Brito

Sistema Operacional Unidade 13 Servidor Samba. QI ESCOLAS E FACULDADES Curso Técnico em Informática

Segurança de Redes. Aula extra - Squid. Filipe Raulino filipe.raulino@ifrn.edu.br

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1

Projeto e Instalação de Servidores Servidores Linux Aula 6 Firewall e Proxy

Professor: João Paulo de Brito Gonçalves Campus Cachoeiro Curso Técnico em Informática

Você pode testar se está tudo OK, abrindo um navegador no Debian Linux e acessando qualquer site.

Conexão rápida entre dois computadores em uma plataforma Linux

Servidor, Proxy e Firewall. Professor Victor Sotero

Sarg Proxy transparente

Entendendo como funciona o NAT

Servidor Proxy armazenamento em cache.

Firewall. Tutorial Firewall em Linux Acadêmicos: Felipe Zottis e Cleber Pivetta

Squid autenticando em Windows 2003 com msnt_auth

Disciplina: Fundamentos de serviços IP Alunos: Estevão Elias Barbosa Lopes e Leonardo de Azevedo Barbosa

Instalação e Configuração Iptables ( Firewall)

ALTERNATIVA PARA CONEXÃO VIA INTERNET DE IP MASCARADO A IP REAL

GUIA INTEGRA SERVICES E STATUS MONITOR

GUIA PRÁTICO DE INSTALAÇÃO

TUTORIAL DE SQUID Versão 3.1

MANUAL DO ADMINISTRADOR

Manual Captura S_Line

HOW TO. Instalação do Firewall 6.1 Software

SERVIDOR WEB - APACHE SERVIDOR WEB - APACHE SERVIDOR WEB - APACHE 27/02/2012

Manual de Instalação ( Client / Server ) Versão 1.0

Edital 012/PROAD/SGP/2012

FIREWALL. Prof. Fabio de Jesus Souza. Professor Fabio Souza

Senha Admin. Nessa tela, você poderá trocar a senha do administrador para obter acesso ao NSControl. Inicialização

Instalação Apache + MySQL + PHPMyAdmin CentOS

FACULDADE DE TECNOLOGIA SENAC GESTÃO DA TECNOLOGIA DA INFORMAÇÃO LABORATORIO DE REDE

Instalação e Configuração do CollabNet Subversion Edge

Aula 10 Proxy cache Squid

4. Abra o prompt de comando acesse o diretório c:\squid\sbin e digite os comandos abaixo:

Necessidades de Gerenciamento: Software de Gerenciamento:

Manual de Instalação de SQL Server (2005, 2008, 2012).

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O

Componentes de um sistema de firewall - II. Segurança de redes

Pré-requisitos e passos iniciais. Topologia visual

Configure seu Linux pela Web! Instalação à partir de um.tar.gz. Autor: Carlos Eduardo Ribeiro de Melo <eduardo at unisulma.edu.br> Data: 05/10/2004

LICENCIAMENTO V14 USANDO REPRISE LICENSE MANAGER

Data Autor Descrição Revisão Configuração HX600 via Rede Ethernet 1.0

IPTABLES. Helder Nunes

Satélite. Manual de instalação e configuração. CENPECT Informática cenpect@cenpect.com.br

Servidor Proxy. Firewall e proxy

CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS

SAD Gestor Gerenciador de Backup

Integração entre o IBM HTTP SERVER, APACHE WEB Server e IBM Websphere Application Server

Manual Comunica S_Line

Conteúdo Store manager... 2

Conceitos de relação de confiança

Prática NAT/Proxy. Edgard Jamhour. Esses exercícios devem ser executados através do servidor de máquinas virtuais: espec.ppgia.pucpr.

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

Aplicação Prática de Lua para Web

Instalação e Configuração do Servidor HTTPD Apache

Manual de Configuração Wireless. Etec Alberto Santos Dumont. Guarujá

Guia de instalação para ambiente de Desenvolvimento LINUX

Roteiro 3: Sistemas Linux arquivos e diretórios

Projeto Integrador Programação para Internet

Tutorial Básico de Google Analytics

Configuração de um servidor FTP. Campus Cachoeiro Curso Técnico em Informática

Procedimentos para configurar o Monitoramento Agendado no D-viewCam

Apostila sobre Squid

Introdução ao Sistema. Características

Administração do Windows Server 2003

Passo a Passo da instalação da VPN

Existe um limite dado pelo administrador da Rede para que ele não armazene tudo.

ROTEIRO PARA INSTALAÇÃO DO BITVISE, CONFIGURAÇÃO DE CHAVES SSH, DEFINIÇÃO DAS PORTAS PARA OS TÚNEIS SSH E CONFIGURAÇÃO DO THUNDERBIRD

Para começarmos as configurações, primeiramente vamos habilitar o DVR Veicular para o acesso. Clique em Menu e depois entre em Geral.

Sistemas Operacionais de Rede. Configuração de Rede

BACKUP ONLINE LINHA OFFICE

Virtualização com Metarouter Squid Autenticado através do OpenWRT. Sérgio Souza.

Acesso Remoto Placas de captura

Instalando software MÉDICO Online no servidor

INSTALANDO O UBUNTU PELA IMAGEM ISO OU LIVE-USB DA UFV PASSO-A-PASSO.

Configuração do da UFS no Outlook 2007

Manual de Instalação do Servidor Orion Phoenix Versão Novembro/2010

Como acessar o novo webmail da Educação? Manual do Usuário. 15/9/2009 Gerencia de Suporte, Redes e Novas Tecnologias Claudia M.S.

Tutorial de Instalação do CentOS Versão 3.3

Manual de instalação Servidor Orion Phoenix

Nesse artigo abordaremos os principais aspectos de instalação e uso do NTOP no Fedora Core 4.

Atualizaça o do Maker

Fox Gerenciador de Sistemas

Transcrição:

Tutorial Servidor Proxy com Squid baseado em Linux Acadêmicos : Felipe Zottis e Cleber Pivetta Servidor Proxy Um servidor Proxy possui a finalidade de possibilitar que máquinas contidas em uma determinada rede possam obter acesso a uma rede pública. Normalmente este servidor é instalado em um computador que possui acesso direto à internet, sendo assim toda solicitação externa a rede deve ser feita a esta máquina. De modo geral, um servidor proxy realiza solicitações em nome de outras máquinas da rede. Outras funcionalidades podem ser acopladas ao proxy, tais como caching de páginas da internet. Com isto, as requisições à sites já visitados por máquinas de uma rede são feitas mais rapidamente. Um servidor proxy também pode implementar o NAT (Network Address Translation - Tradução de Endereços de Rede). A NAT permite que o endereço de rede interno de uma empresa seja ocultado da Internet. A empresa é representada na Internet como um endereço de IP não relacionado com os endereços de IP internos. Uma das principais funcionalidades do proxy é impedir o acesso indevido à páginas da internet, geralmente por empresas ou instituições públicas. É possível barrar o acesso do usuário a sites inadequados ou que não sejam de interesse de uma instuição, por exemplo chats, jogos, sexo entre outros. Todo o tráfego de dentro da empresa destinado à Internet é enviado para o servidor proxy. Este atribui a cada pacote um outro endereço de IP antes de transmití-lo pela Internet. Quando o pacote de resposta chega, o servidor proxy o envia ao servidor apropriado da empresa que havia feito o pedido. Este procedimento protege os endereços verdadeiros da rede interna da Internet, dificultando o ataque de um hacker ao sistema, já que o endereço do sistema protegido não é conhecido e não fica diretamente acessível a partir da Internet. Sobre o Squid O Squid é um proxy-cache de alta performance para clientes web, suportando protocolos FTP, gopher e HTTP. O Squid mantém meta dados e especialmente objetos armazenados na RAM, cacheia buscas de DNS e implementa cache negativo de requisições falhas.

Ele suporta SSL, listas de acesso complexas e logging completo. Por utilizar o Internet Cache Protocol, o Squid pode ser configurado para trabalhar de forma hierárquica ou mista para melhor aproveitamento da banda. Podemos dizer que o Squid consiste em um programa principal squid - um sistema de busca de resolução de nomes dnsserver e alguns programas adicionais para reescrever requisições, fazer autenticação e gerenciar ferramentas de clientes. Podemos executar o Squid nas principais plataformas do mercado, como GNU/Linux, Unixes e Windows. Procedimento para instalação do Servidor Proxy Squid Para a realização deste tutorial, fora utilizado a sistema operacional Linux, sendo a versão 9.0 do Fedora. Como este experimento fora realizado na rede interna da Universidade Estadual do Oeste do Paraná, é necessário realizar a exportação do proxy utilizado pela faculdade, para que assim seja possível realizar o download do pacote de instalação do Squid. export http_proxy=htpp://proxy.unioeste.br:8080 Para realizar a instalação de determinados programas, o Linux permite que o pacote de instalação destes sejam obtidos por download através do comando: yum install squid O Squid será então instalado no diretório /etc/squid. Após isto, é necessário editar o arquivo squid.conf, localizado dentro do diretório de instalação. Porém, é necessário realizar alterações na permissão de gravação do arquivo squid.conf, pois este é protegido. No linux é possível realizar esta alteração da seguinte forma: chmod 777 squid.conf O comando chmod modifica as pemissões de acessos à um determinado arquivo. O número 777 garante os acessos de leitura e gravação para root e usuários. Realizado este passo, já é possível editar o arquivo squid.conf, porém é recomendável realizar um backup do arquivo original. Sendo assim, deve-se renomear o arquivo squid.conf para squid_backup.conf. Após isto, já é possível trabalhar em um arquivo squid.conf novo. Então: vi squid.conf

Este comando abrirá este arquivo para edição, porém como o mesmo não existe (pois o original foi renomeado) um novo será criado. As seguintes linhas devem ser incluídas dentro deste arquivo: # porta padrão do squid http_port 3128 visible_hostname localhost #definir sites bloqueados acl blockedsites url_regex -i /etc/squid/sites_bloqueados/block.txt #definir sites permitidos acl unblockedsites url_regex -i /etc/squid/sites_desbloqueados/unblock.txt acl all src 0.0.0.0/0.0.0.0 #proxy pai do squid cache_peer proxy.unioeste.br parent 8080 3128 proxy-only #negar acesso HTTP à variável blockedsites e permitir à variável unblockedsites http_access deny blockedsites!unblockedsites http_access allow all Após isto, deve-se alterar as configurações padrão do navegador de internet utilizado na máquina, neste exemplo o firefox. Em configurações avançadas de rede, deve-se selecionar para obter uma configuração manual de proxy e então redirecionar o protocolo HTTP para localhost (o nome definido em visible_hostname) e porta 3128 (padrão do Squid). No Squid também é possível impedir acessos à sites com conteúdo indevido. Note que em: #definir sites bloqueados acl blockedsites url_regex -i /etc/squid/sites_bloqueados/block.txt #definir sites permitidos acl unblockedsites url_regex -i /etc/squid/sites_desbloqueados/unblock.txt É definido um caminho para uma lista de sites bloqueados e permitidos. Sendo assim, deve-se criar um arquivo do tipo.txt dentro de uma pasta definida sites_bloqueados, contendo uma lista de sites bloqueados, por exemplo: www.google.com

www.uol.com www.orkut.com orkut pornografia Note que é possível bloquear os acessos apenas pelo intermédio de palavras chaves, vide orkut e pornografia. Feitos todos estes passos, é possível agora colocar em funcionamento o servidor Squid. Dentro do diretório /etc/init.d deve-se entrar com o seguinte comando: squid start Funcionalidades Extras Restringir acesso por horário É possível restringir os acessos à internet por horários programados. Deve- se inserir os seguintes comandos: #Horários acl expediente time MTWHF 9:00 18:00 acl final_de_semana time SA 8:00 13:00 Onde : S: Domingo M: Segunda-Feira T: Terça-feira W: Quarta-feira H: Quinta-feira F: Sexta-feira A : Sábado Exemplo: Controlar o acesso do computador 192.168.1.71 das 9:00 às 12:00 e das 13:30 às 18:00 de segunda a sexta-feira:

acl microip71 src 192.168.0.71/255.255.255.255 acl manhamicroip71 time M T W H F 9:00-12:00 acl tardemicroip71 time M T W H F 13:30-18:00 Pra LIBERAR acesso: http_access allow microip71 manhamicroip71 http_access allow microip71 tardemicroip71 pra PROIBIR acesso: http_access deny microip71 manhamicroip71 http_access deny microip71 tardemicroip71 Exemplo: Pra liberar somente no horário de almoço, todos os dias das 12 as 13:30 e após o expediente às 18:00hs: acl microip71 src 192.168.0.71/255.255.255.255 acl manhamicroip71 time M T W H F 12:00-13:30 acl tardemicroip71 time M T W H F 18:00-24:00 http_access allow microip71 manhamicroip71 http_access allow microip71 tardemicroip71 Limitar o número de conexões por usuário É possível restringir o número de sessões que um determinado usuário pode requisitar de uma única vez. O recurso máximo de conexões pode ser atribuído da seguinte forma: #Máximo de conexões acl CONEXOES maxconn 5 http_access deny CONEXOES rede_interna Gerar Relatórios de acesso O Squid emite um log de acessos à internet que pode ser transformado em relatórios com o uso da ferramenta SARG. Para tanto, sua instalação e configuração é necessária: wget http://web.onda.com.br/orso/sarg-1.4.tar.gz tar zxvf sarg-1.4.tar.gz cd sarg-1.4/./configure make make install

Configurando o SARG: Por padrão o SARG é instalado em /usr/local/sarg.nesse diretório encontra-se o arquivo sarg.conf. As seguintes opções são recomendadas: # indica o arquivo de log do squid access_log /var/log/squid/access.log title Relatório de uso da Internet temporary_dir /tmp # Onde será gerado o relatório output_dir /var/www/squid-reports resolve_ip no # Se estiver usando autenticação por usuário deve-se colocar yes user_ip yes topuser_sort_field BYTES reverse topsites_num 100 max_elapsed 28800000 Em seguida, para gerar um relatório deve-se emitir o comando sarg Figura 01: Relatório emitido pelo SARG

Autenticando usuários É um recurso bem interessante para controle pessoal de usuários, pois permite que ACLs individuais sejam criadas gerando assim LOGs de qualidade e precisão superiores. O ncsa_auth é a alternativa mais simples, pois está disponível junto com o Squid e pode ser implementado rapidamente. Procure pela TAG: authenticate_program insira os seguintes comandos: auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/ auth_param basic children 5 auth_param basic realm Digite seu Login Para tanto, cada usuário necessitará uma senha de acesso. Deve-se criar o arquivo que conterá todas as senhas dos usuários: touch /etc/squid/passwd Para adicionar novos usuários deve-se emitir: htpasswd /etc/squid/passwd NOVO_USUARIO Dependendo da distribuição do Squid, o ncsa_auth pode estar em vários lugares diferentes. Comandos úteis para o Squid Reiniciando a cache do Squid: squid -z Reiniciando as configurações do Squid: squid -k reconfigure Parar o serviço do Squid: squid stop Reiniciar o serviço do Squid: squid restart

Verificar status do Squid, se está rodando ou não: squid status Para carregar o Squid junto com a inicialização do Linux: chkconfig squid on Dicas De Squid: Edite o arquivo /etc/squid.conf e leia atentamente os comentários, pois neles existem explicações pra configurações possíveis... Squid para de analizar as regras na primeira que for atentida, quando precisar de alguma excessão de regra, por exemplo liberar um IP para não passar pelas regras, esta deverá se colocada antes da que proibe.